From 287d46e1f6a7a6136c7996367a9b203d93797d00 Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Thu, 6 Jun 2024 13:47:03 +1000 Subject: [PATCH] chore: update stage0 --- stage0/stdlib/Init/Data/BitVec/Basic.c | 231 +- stage0/stdlib/Init/Data/BitVec/Lemmas.c | 6 +- stage0/stdlib/Init/Data/Char/Basic.c | 44 + stage0/stdlib/Init/Data/Format/Syntax.c | 564 +- stage0/stdlib/Init/Data/Int/Bitwise/Lemmas.c | 96 + stage0/stdlib/Init/Data/String/Basic.c | 88 + stage0/stdlib/Init/System/IO.c | 1744 +- stage0/stdlib/Init/Tactics.c | 1486 +- stage0/stdlib/Lean/Compiler/ConstFolding.c | 135 +- stage0/stdlib/Lean/CoreM.c | 521 +- stage0/stdlib/Lean/Elab/BuiltinCommand.c | 121 +- stage0/stdlib/Lean/Elab/Command.c | 4288 ++- stage0/stdlib/Lean/Elab/DeclUtil.c | 614 +- stage0/stdlib/Lean/Elab/Declaration.c | 2685 +- stage0/stdlib/Lean/Elab/Deriving/BEq.c | 10 +- stage0/stdlib/Lean/Elab/Deriving/DecEq.c | 3470 ++- stage0/stdlib/Lean/Elab/Deriving/FromToJson.c | 18 +- stage0/stdlib/Lean/Elab/Inductive.c | 4 +- stage0/stdlib/Lean/Elab/Level.c | 1819 +- stage0/stdlib/Lean/Elab/MutualDef.c | 20240 +++++++------- .../PreDefinition/WF/TerminationArgument.c | 865 +- stage0/stdlib/Lean/Elab/Quotation.c | 4 +- stage0/stdlib/Lean/Elab/SyntheticMVars.c | 4 +- stage0/stdlib/Lean/Elab/Tactic/Basic.c | 2844 +- .../stdlib/Lean/Elab/Tactic/BuiltinTactic.c | 11971 ++++---- stage0/stdlib/Lean/Elab/Tactic/Calc.c | 530 +- stage0/stdlib/Lean/Elab/Tactic/Ext.c | 4 +- .../stdlib/Lean/Elab/Tactic/Omega/Frontend.c | 15462 ++++------ stage0/stdlib/Lean/Elab/Tactic/RCases.c | 8 +- stage0/stdlib/Lean/Elab/Tactic/Simp.c | 7948 +++--- stage0/stdlib/Lean/Elab/Term.c | 1505 +- stage0/stdlib/Lean/Language/Basic.c | 183 +- stage0/stdlib/Lean/Language/Lean.c | 316 +- stage0/stdlib/Lean/Meta/Basic.c | 901 +- stage0/stdlib/Lean/Meta/Match/Match.c | 4 +- stage0/stdlib/Lean/Meta/Tactic/Cases.c | 676 +- stage0/stdlib/Lean/Meta/Tactic/FunInd.c | 2804 +- stage0/stdlib/Lean/Meta/Tactic/Grind/Attr.c | 6 +- stage0/stdlib/Lean/Meta/Tactic/NormCast.c | 14 +- stage0/stdlib/Lean/Meta/Tactic/Simp/Attr.c | 1364 +- .../Meta/Tactic/Simp/BuiltinSimprocs/BitVec.c | 834 +- .../Lean/Meta/Tactic/Simp/Diagnostics.c | 4 +- stage0/stdlib/Lean/Meta/Tactic/Simp/Rewrite.c | 296 +- stage0/stdlib/Lean/Meta/Tactic/Simp/SimpAll.c | 292 +- .../Lean/Meta/Tactic/Simp/SimpTheorems.c | 12701 ++++++--- stage0/stdlib/Lean/Meta/Tactic/Simp/Simproc.c | 18 +- stage0/stdlib/Lean/Meta/Tactic/Simp/Types.c | 23230 +++++++++------- stage0/stdlib/Lean/Meta/Tactic/SplitIf.c | 675 +- stage0/stdlib/Lean/ReservedNameAction.c | 543 +- 49 files changed, 68020 insertions(+), 56170 deletions(-) create mode 100644 stage0/stdlib/Init/Data/Int/Bitwise/Lemmas.c diff --git a/stage0/stdlib/Init/Data/BitVec/Basic.c b/stage0/stdlib/Init/Data/BitVec/Basic.c index 3db6573764b6..ce31f2b5522e 100644 --- a/stage0/stdlib/Init/Data/BitVec/Basic.c +++ b/stage0/stdlib/Init/Data/BitVec/Basic.c @@ -21,6 +21,7 @@ LEAN_EXPORT lean_object* l_BitVec_instOfNat___boxed(lean_object*, lean_object*); lean_object* lean_format_pretty(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_rotateLeftAux(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_rotateRight___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_BitVec_term_____x23_______closed__20; LEAN_EXPORT lean_object* l_BitVec_instDecidableLe(lean_object*); LEAN_EXPORT lean_object* l_BitVec_ofNat___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_instDecidableLt___rarg___boxed(lean_object*, lean_object*); @@ -31,6 +32,7 @@ LEAN_EXPORT lean_object* l_BitVec_instHShiftRight(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_instAndOp(lean_object*); LEAN_EXPORT lean_object* l_BitVec_neg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_instHShiftRightNat(lean_object*); +static lean_object* l_BitVec_term_____x23_______closed__21; LEAN_EXPORT lean_object* l_BitVec_smtSDiv___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_smod___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_replicate(lean_object*, lean_object*, lean_object*); @@ -196,6 +198,7 @@ extern lean_object* l_Std_Format_defWidth; static lean_object* l_BitVec_term_____x23_______closed__4; LEAN_EXPORT lean_object* l_BitVec_sshiftRight(lean_object*, lean_object*, lean_object*); static lean_object* l_BitVec_term_____x23_______closed__17; +static lean_object* l_BitVec_term_____x23_______closed__18; LEAN_EXPORT lean_object* l_BitVec_instHShiftRight___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_BitVec_slt(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_umod(lean_object*); @@ -283,6 +286,7 @@ static lean_object* l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__B LEAN_EXPORT lean_object* l_BitVec_sle___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23_x27______1___closed__5; LEAN_EXPORT lean_object* l_BitVec_concat___rarg(lean_object*, uint8_t); +static lean_object* l_BitVec_term_____x23_______closed__19; static lean_object* l_BitVec_term_____x23_x27_______closed__8; LEAN_EXPORT lean_object* l_BitVec_xor(lean_object*); lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); @@ -805,7 +809,7 @@ static lean_object* _init_l_BitVec_term_____x23_______closed__6() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("noWs", 4); +x_1 = lean_mk_string_from_bytes("num", 3); return x_1; } } @@ -833,27 +837,37 @@ static lean_object* _init_l_BitVec_term_____x23_______closed__9() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("#", 1); +x_1 = lean_mk_string_from_bytes("noWs", 4); return x_1; } } static lean_object* _init_l_BitVec_term_____x23_______closed__10() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_BitVec_term_____x23_______closed__9; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_BitVec_term_____x23_______closed__11() { +_start: +{ lean_object* x_1; lean_object* x_2; -x_1 = l_BitVec_term_____x23_______closed__9; -x_2 = lean_alloc_ctor(5, 1, 0); +x_1 = l_BitVec_term_____x23_______closed__10; +x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_BitVec_term_____x23_______closed__11() { +static lean_object* _init_l_BitVec_term_____x23_______closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_BitVec_term_____x23_______closed__5; x_2 = l_BitVec_term_____x23_______closed__8; -x_3 = l_BitVec_term_____x23_______closed__10; +x_3 = l_BitVec_term_____x23_______closed__11; x_4 = lean_alloc_ctor(2, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -861,13 +875,31 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l_BitVec_term_____x23_______closed__12() { +static lean_object* _init_l_BitVec_term_____x23_______closed__13() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("#", 1); +return x_1; +} +} +static lean_object* _init_l_BitVec_term_____x23_______closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_BitVec_term_____x23_______closed__13; +x_2 = lean_alloc_ctor(5, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_BitVec_term_____x23_______closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_BitVec_term_____x23_______closed__5; -x_2 = l_BitVec_term_____x23_______closed__11; -x_3 = l_BitVec_term_____x23_______closed__8; +x_2 = l_BitVec_term_____x23_______closed__12; +x_3 = l_BitVec_term_____x23_______closed__14; x_4 = lean_alloc_ctor(2, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -875,7 +907,21 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l_BitVec_term_____x23_______closed__13() { +static lean_object* _init_l_BitVec_term_____x23_______closed__16() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_BitVec_term_____x23_______closed__5; +x_2 = l_BitVec_term_____x23_______closed__15; +x_3 = l_BitVec_term_____x23_______closed__11; +x_4 = lean_alloc_ctor(2, 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_BitVec_term_____x23_______closed__17() { _start: { lean_object* x_1; @@ -883,21 +929,21 @@ x_1 = lean_mk_string_from_bytes("term", 4); return x_1; } } -static lean_object* _init_l_BitVec_term_____x23_______closed__14() { +static lean_object* _init_l_BitVec_term_____x23_______closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_BitVec_term_____x23_______closed__13; +x_2 = l_BitVec_term_____x23_______closed__17; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_BitVec_term_____x23_______closed__15() { +static lean_object* _init_l_BitVec_term_____x23_______closed__19() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_BitVec_term_____x23_______closed__14; +x_1 = l_BitVec_term_____x23_______closed__18; x_2 = lean_unsigned_to_nat(1024u); x_3 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -905,13 +951,13 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_BitVec_term_____x23_______closed__16() { +static lean_object* _init_l_BitVec_term_____x23_______closed__20() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_BitVec_term_____x23_______closed__5; -x_2 = l_BitVec_term_____x23_______closed__12; -x_3 = l_BitVec_term_____x23_______closed__15; +x_2 = l_BitVec_term_____x23_______closed__16; +x_3 = l_BitVec_term_____x23_______closed__19; x_4 = lean_alloc_ctor(2, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -919,18 +965,17 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l_BitVec_term_____x23_______closed__17() { +static lean_object* _init_l_BitVec_term_____x23_______closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_BitVec_term_____x23_______closed__3; x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_BitVec_term_____x23_______closed__16; -x_4 = lean_alloc_ctor(4, 4, 0); +x_3 = l_BitVec_term_____x23_______closed__20; +x_4 = lean_alloc_ctor(3, 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_2); -lean_ctor_set(x_4, 3, x_3); +lean_ctor_set(x_4, 2, x_3); return x_4; } } @@ -938,7 +983,7 @@ static lean_object* _init_l_BitVec_term_____x23____() { _start: { lean_object* x_1; -x_1 = l_BitVec_term_____x23_______closed__17; +x_1 = l_BitVec_term_____x23_______closed__21; return x_1; } } @@ -1105,40 +1150,59 @@ return x_7; } else { -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; 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_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; x_8 = lean_unsigned_to_nat(0u); x_9 = l_Lean_Syntax_getArg(x_1, x_8); -x_10 = lean_unsigned_to_nat(2u); -x_11 = l_Lean_Syntax_getArg(x_1, x_10); +x_10 = l_BitVec_term_____x23_______closed__7; +lean_inc(x_9); +x_11 = l_Lean_Syntax_isOfKind(x_9, x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; +lean_dec(x_9); +lean_dec(x_2); lean_dec(x_1); -x_12 = lean_ctor_get(x_2, 5); -lean_inc(x_12); -x_13 = 0; -x_14 = l_Lean_SourceInfo_fromRef(x_12, x_13); -x_15 = lean_ctor_get(x_2, 2); -lean_inc(x_15); -x_16 = lean_ctor_get(x_2, 1); +x_12 = lean_box(1); +x_13 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_3); +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; 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(2u); +x_15 = l_Lean_Syntax_getArg(x_1, x_14); +lean_dec(x_1); +x_16 = lean_ctor_get(x_2, 5); lean_inc(x_16); +x_17 = 0; +x_18 = l_Lean_SourceInfo_fromRef(x_16, x_17); +x_19 = lean_ctor_get(x_2, 2); +lean_inc(x_19); +x_20 = lean_ctor_get(x_2, 1); +lean_inc(x_20); lean_dec(x_2); -x_17 = l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23______1___closed__9; -x_18 = l_Lean_addMacroScope(x_16, x_17, x_15); -x_19 = l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23______1___closed__7; -x_20 = l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23______1___closed__13; -lean_inc(x_14); -x_21 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_21, 0, x_14); -lean_ctor_set(x_21, 1, x_19); -lean_ctor_set(x_21, 2, x_18); -lean_ctor_set(x_21, 3, x_20); -x_22 = l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23______1___closed__15; -lean_inc(x_14); -x_23 = l_Lean_Syntax_node2(x_14, x_22, x_11, x_9); -x_24 = l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23______1___closed__5; -x_25 = l_Lean_Syntax_node2(x_14, x_24, x_21, x_23); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_3); -return x_26; +x_21 = l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23______1___closed__9; +x_22 = l_Lean_addMacroScope(x_20, x_21, x_19); +x_23 = l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23______1___closed__7; +x_24 = l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23______1___closed__13; +lean_inc(x_18); +x_25 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_25, 0, x_18); +lean_ctor_set(x_25, 1, x_23); +lean_ctor_set(x_25, 2, x_22); +lean_ctor_set(x_25, 3, x_24); +x_26 = l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23______1___closed__15; +lean_inc(x_18); +x_27 = l_Lean_Syntax_node2(x_18, x_26, x_15, x_9); +x_28 = l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23______1___closed__5; +x_29 = l_Lean_Syntax_node2(x_18, x_28, x_25, x_27); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_3); +return x_30; +} } } } @@ -1182,24 +1246,43 @@ 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; lean_object* x_22; lean_object* x_23; +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; x_14 = lean_unsigned_to_nat(0u); x_15 = l_Lean_Syntax_getArg(x_9, x_14); x_16 = l_Lean_Syntax_getArg(x_9, x_8); lean_dec(x_9); -x_17 = 0; -x_18 = l_Lean_SourceInfo_fromRef(x_2, x_17); -x_19 = l_BitVec_term_____x23_______closed__9; -lean_inc(x_18); -x_20 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_20, 0, x_18); -lean_ctor_set(x_20, 1, x_19); -x_21 = l_BitVec_term_____x23_______closed__3; -x_22 = l_Lean_Syntax_node3(x_18, x_21, x_16, x_20, x_15); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_3); -return x_23; +x_17 = l_BitVec_term_____x23_______closed__7; +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_dec(x_16); +lean_dec(x_15); +lean_dec(x_2); +x_19 = lean_box(0); +x_20 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_3); +return x_20; +} +else +{ +uint8_t 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 = 0; +x_22 = l_Lean_SourceInfo_fromRef(x_2, x_21); +x_23 = l_BitVec_term_____x23_______closed__13; +lean_inc(x_22); +x_24 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +x_25 = l_BitVec_term_____x23_______closed__3; +x_26 = l_Lean_Syntax_node3(x_22, x_25, x_16, x_24, x_15); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_26); +lean_ctor_set(x_27, 1, x_3); +return x_27; +} } } } @@ -1245,7 +1328,7 @@ static lean_object* _init_l_BitVec_term_____x23_x27_______closed__5() { { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_BitVec_term_____x23_______closed__5; -x_2 = l_BitVec_term_____x23_______closed__8; +x_2 = l_BitVec_term_____x23_______closed__11; x_3 = l_BitVec_term_____x23_x27_______closed__4; x_4 = lean_alloc_ctor(2, 3, 0); lean_ctor_set(x_4, 0, x_1); @@ -1260,7 +1343,7 @@ static lean_object* _init_l_BitVec_term_____x23_x27_______closed__6() { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_BitVec_term_____x23_______closed__5; x_2 = l_BitVec_term_____x23_x27_______closed__5; -x_3 = l_BitVec_term_____x23_______closed__8; +x_3 = l_BitVec_term_____x23_______closed__11; x_4 = lean_alloc_ctor(2, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -1274,7 +1357,7 @@ static lean_object* _init_l_BitVec_term_____x23_x27_______closed__7() { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_BitVec_term_____x23_______closed__5; x_2 = l_BitVec_term_____x23_x27_______closed__6; -x_3 = l_BitVec_term_____x23_______closed__15; +x_3 = l_BitVec_term_____x23_______closed__19; x_4 = lean_alloc_ctor(2, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -1569,7 +1652,7 @@ static lean_object* _init_l_BitVec_instRepr___closed__3() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_BitVec_term_____x23_______closed__9; +x_1 = l_BitVec_term_____x23_______closed__13; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; @@ -3589,6 +3672,14 @@ l_BitVec_term_____x23_______closed__16 = _init_l_BitVec_term_____x23_______close lean_mark_persistent(l_BitVec_term_____x23_______closed__16); l_BitVec_term_____x23_______closed__17 = _init_l_BitVec_term_____x23_______closed__17(); lean_mark_persistent(l_BitVec_term_____x23_______closed__17); +l_BitVec_term_____x23_______closed__18 = _init_l_BitVec_term_____x23_______closed__18(); +lean_mark_persistent(l_BitVec_term_____x23_______closed__18); +l_BitVec_term_____x23_______closed__19 = _init_l_BitVec_term_____x23_______closed__19(); +lean_mark_persistent(l_BitVec_term_____x23_______closed__19); +l_BitVec_term_____x23_______closed__20 = _init_l_BitVec_term_____x23_______closed__20(); +lean_mark_persistent(l_BitVec_term_____x23_______closed__20); +l_BitVec_term_____x23_______closed__21 = _init_l_BitVec_term_____x23_______closed__21(); +lean_mark_persistent(l_BitVec_term_____x23_______closed__21); l_BitVec_term_____x23____ = _init_l_BitVec_term_____x23____(); lean_mark_persistent(l_BitVec_term_____x23____); l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23______1___closed__1 = _init_l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23______1___closed__1(); diff --git a/stage0/stdlib/Init/Data/BitVec/Lemmas.c b/stage0/stdlib/Init/Data/BitVec/Lemmas.c index e198f6ff1ae1..9a123a215cf9 100644 --- a/stage0/stdlib/Init/Data/BitVec/Lemmas.c +++ b/stage0/stdlib/Init/Data/BitVec/Lemmas.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Init.Data.BitVec.Lemmas -// Imports: Init.Data.Bool Init.Data.BitVec.Basic Init.Data.Fin.Lemmas Init.Data.Nat.Lemmas Init.Data.Nat.Mod +// Imports: Init.Data.Bool Init.Data.BitVec.Basic Init.Data.Fin.Lemmas Init.Data.Nat.Lemmas Init.Data.Nat.Mod Init.Data.Int.Bitwise.Lemmas #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -88,6 +88,7 @@ lean_object* initialize_Init_Data_BitVec_Basic(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_Fin_Lemmas(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_Nat_Lemmas(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_Nat_Mod(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Int_Bitwise_Lemmas(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Init_Data_BitVec_Lemmas(uint8_t builtin, lean_object* w) { lean_object * res; @@ -108,6 +109,9 @@ lean_dec_ref(res); res = initialize_Init_Data_Nat_Mod(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Init_Data_Int_Bitwise_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 diff --git a/stage0/stdlib/Init/Data/Char/Basic.c b/stage0/stdlib/Init/Data/Char/Basic.c index 11b173200391..2cafd8843453 100644 --- a/stage0/stdlib/Init/Data/Char/Basic.c +++ b/stage0/stdlib/Init/Data/Char/Basic.c @@ -14,9 +14,13 @@ extern "C" { #endif LEAN_EXPORT lean_object* l_Char_isDigit___boxed(lean_object*); +uint8_t lean_uint32_to_uint8(uint32_t); +LEAN_EXPORT uint32_t l_Char_ofUInt8(uint8_t); lean_object* lean_uint32_to_nat(uint32_t); +uint32_t lean_uint8_to_uint32(uint8_t); LEAN_EXPORT lean_object* l_Char_isLower___boxed(lean_object*); LEAN_EXPORT uint8_t l_Char_isAlpha(uint32_t); +LEAN_EXPORT lean_object* l_Char_toUInt8___boxed(lean_object*); LEAN_EXPORT lean_object* l_Char_isAlpha___boxed(lean_object*); LEAN_EXPORT lean_object* l_Char_toNat(uint32_t); LEAN_EXPORT uint8_t l_Char_instDecidableLt(uint32_t, uint32_t); @@ -25,11 +29,13 @@ LEAN_EXPORT uint8_t l_Char_isAlphanum(uint32_t); LEAN_EXPORT uint8_t l_Char_isWhitespace(uint32_t); LEAN_EXPORT lean_object* l_Char_toUpper(uint32_t); uint8_t lean_uint32_dec_le(uint32_t, uint32_t); +LEAN_EXPORT uint8_t l_Char_toUInt8(uint32_t); LEAN_EXPORT lean_object* l_Char_toNat___boxed(lean_object*); LEAN_EXPORT lean_object* l_Char_isWhitespace___boxed(lean_object*); LEAN_EXPORT uint32_t l_Char_instInhabited; LEAN_EXPORT lean_object* l_Char_toLower___boxed(lean_object*); LEAN_EXPORT lean_object* l_Char_toUpper___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Char_ofUInt8___boxed(lean_object*); LEAN_EXPORT lean_object* l_Char_instLE; LEAN_EXPORT uint8_t l_Char_isDigit(uint32_t); LEAN_EXPORT uint8_t l_Char_isUpper(uint32_t); @@ -122,6 +128,44 @@ x_3 = l_Char_toNat(x_2); return x_3; } } +LEAN_EXPORT uint8_t l_Char_toUInt8(uint32_t x_1) { +_start: +{ +uint8_t x_2; +x_2 = lean_uint32_to_uint8(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Char_toUInt8___boxed(lean_object* x_1) { +_start: +{ +uint32_t x_2; uint8_t x_3; lean_object* x_4; +x_2 = lean_unbox_uint32(x_1); +lean_dec(x_1); +x_3 = l_Char_toUInt8(x_2); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT uint32_t l_Char_ofUInt8(uint8_t x_1) { +_start: +{ +uint32_t x_2; +x_2 = lean_uint8_to_uint32(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Char_ofUInt8___boxed(lean_object* x_1) { +_start: +{ +uint8_t x_2; uint32_t x_3; lean_object* x_4; +x_2 = lean_unbox(x_1); +lean_dec(x_1); +x_3 = l_Char_ofUInt8(x_2); +x_4 = lean_box_uint32(x_3); +return x_4; +} +} static uint32_t _init_l_Char_instInhabited() { _start: { diff --git a/stage0/stdlib/Init/Data/Format/Syntax.c b/stage0/stdlib/Init/Data/Format/Syntax.c index 78a4ece0a910..a48b32331476 100644 --- a/stage0/stdlib/Init/Data/Format/Syntax.c +++ b/stage0/stdlib/Init/Data/Format/Syntax.c @@ -906,309 +906,313 @@ return x_5; } case 1: { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; -x_6 = lean_ctor_get(x_4, 1); +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; +x_6 = lean_ctor_get(x_4, 0); lean_inc(x_6); -x_7 = lean_ctor_get(x_4, 2); +x_7 = lean_ctor_get(x_4, 1); lean_inc(x_7); +x_8 = lean_ctor_get(x_4, 2); +lean_inc(x_8); lean_dec(x_4); -x_8 = lean_unsigned_to_nat(1u); -x_9 = lean_nat_add(x_3, x_8); -x_10 = l_Lean_Syntax_formatStxAux___closed__4; -x_11 = lean_name_eq(x_6, x_10); -if (x_11 == 0) -{ -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; uint8_t x_20; -x_12 = l_Lean_Syntax_formatStxAux___closed__7; -x_13 = lean_box(0); -x_14 = l_Lean_Name_replacePrefix(x_6, x_12, x_13); -x_15 = 1; -x_16 = l_Lean_Name_toString(x_14, x_15); -x_17 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_17, 0, x_16); -x_18 = lean_array_get_size(x_7); -x_19 = lean_unsigned_to_nat(0u); -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; 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; uint8_t x_33; lean_object* x_34; -x_21 = lean_array_to_list(lean_box(0), x_7); -x_22 = lean_box(0); -x_23 = l_List_mapTR_loop___at_Lean_Syntax_formatStxAux___spec__1(x_1, x_2, x_9, x_21, x_22); -lean_dec(x_9); -x_24 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_24, 0, x_17); -lean_ctor_set(x_24, 1, x_23); -x_25 = lean_box(1); -x_26 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_24, x_25); -x_27 = l_Lean_Syntax_formatStxAux___closed__11; -x_28 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_28, 0, x_27); -lean_ctor_set(x_28, 1, x_26); -x_29 = l_Lean_Syntax_formatStxAux___closed__13; +x_9 = lean_unsigned_to_nat(1u); +x_10 = lean_nat_add(x_3, x_9); +x_11 = l_Lean_Syntax_formatStxAux___closed__4; +x_12 = lean_name_eq(x_7, 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; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_13 = l_Lean_Syntax_formatStxAux___closed__7; +x_14 = lean_box(0); +x_15 = l_Lean_Name_replacePrefix(x_7, x_13, x_14); +x_16 = 1; +x_17 = l_Lean_Name_toString(x_15, x_16); +x_18 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_18, 0, x_17); +x_19 = l___private_Init_Data_Format_Syntax_0__Lean_Syntax_formatInfo(x_2, x_6, x_18); +x_20 = lean_array_get_size(x_8); +x_21 = lean_unsigned_to_nat(0u); +x_22 = lean_nat_dec_lt(x_21, x_20); +lean_dec(x_20); +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; uint8_t x_35; lean_object* x_36; +x_23 = lean_array_to_list(lean_box(0), x_8); +x_24 = lean_box(0); +x_25 = l_List_mapTR_loop___at_Lean_Syntax_formatStxAux___spec__1(x_1, x_2, x_10, x_23, x_24); +lean_dec(x_10); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_19); +lean_ctor_set(x_26, 1, x_25); +x_27 = lean_box(1); +x_28 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_26, x_27); +x_29 = l_Lean_Syntax_formatStxAux___closed__11; 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_Lean_Syntax_formatStxAux___closed__10; -x_32 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_32, 0, x_31); -lean_ctor_set(x_32, 1, x_30); -x_33 = 0; -x_34 = lean_alloc_ctor(6, 1, 1); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set_uint8(x_34, sizeof(void*)*1, x_33); -return x_34; +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_28); +x_31 = l_Lean_Syntax_formatStxAux___closed__13; +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_Lean_Syntax_formatStxAux___closed__10; +x_34 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_32); +x_35 = 0; +x_36 = lean_alloc_ctor(6, 1, 1); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set_uint8(x_36, sizeof(void*)*1, x_35); +return x_36; } else { if (lean_obj_tag(x_1) == 0) { -uint8_t x_35; -x_35 = lean_nat_dec_lt(x_9, x_9); -if (x_35 == 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; uint8_t x_48; lean_object* x_49; -x_36 = lean_array_to_list(lean_box(0), x_7); -x_37 = lean_box(0); -x_38 = l_List_mapTR_loop___at_Lean_Syntax_formatStxAux___spec__2(x_1, x_2, x_9, x_36, x_37); -lean_dec(x_9); -x_39 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_39, 0, x_17); -lean_ctor_set(x_39, 1, x_38); -x_40 = lean_box(1); -x_41 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_39, x_40); -x_42 = l_Lean_Syntax_formatStxAux___closed__11; -x_43 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_41); -x_44 = l_Lean_Syntax_formatStxAux___closed__13; +uint8_t x_37; +x_37 = lean_nat_dec_lt(x_10, x_10); +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; 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; +x_38 = lean_array_to_list(lean_box(0), x_8); +x_39 = lean_box(0); +x_40 = l_List_mapTR_loop___at_Lean_Syntax_formatStxAux___spec__2(x_1, x_2, x_10, x_38, x_39); +lean_dec(x_10); +x_41 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_41, 0, x_19); +lean_ctor_set(x_41, 1, x_40); +x_42 = lean_box(1); +x_43 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_41, x_42); +x_44 = l_Lean_Syntax_formatStxAux___closed__11; x_45 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_45, 0, x_43); -lean_ctor_set(x_45, 1, x_44); -x_46 = l_Lean_Syntax_formatStxAux___closed__10; -x_47 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_47, 0, x_46); -lean_ctor_set(x_47, 1, x_45); -x_48 = 0; -x_49 = lean_alloc_ctor(6, 1, 1); -lean_ctor_set(x_49, 0, x_47); -lean_ctor_set_uint8(x_49, sizeof(void*)*1, x_48); -return x_49; +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_43); +x_46 = l_Lean_Syntax_formatStxAux___closed__13; +x_47 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +x_48 = l_Lean_Syntax_formatStxAux___closed__10; +x_49 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_49, 0, x_48); +lean_ctor_set(x_49, 1, x_47); +x_50 = 0; +x_51 = lean_alloc_ctor(6, 1, 1); +lean_ctor_set(x_51, 0, x_49); +lean_ctor_set_uint8(x_51, sizeof(void*)*1, x_50); +return x_51; } 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; uint8_t x_60; lean_object* x_61; -lean_dec(x_9); -lean_dec(x_7); -x_50 = l_Lean_Syntax_formatStxAux___closed__16; -x_51 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_51, 0, x_17); -lean_ctor_set(x_51, 1, x_50); -x_52 = lean_box(1); -x_53 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_51, x_52); -x_54 = l_Lean_Syntax_formatStxAux___closed__11; -x_55 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_55, 0, x_54); -lean_ctor_set(x_55, 1, x_53); -x_56 = l_Lean_Syntax_formatStxAux___closed__13; +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; uint8_t x_62; lean_object* x_63; +lean_dec(x_10); +lean_dec(x_8); +x_52 = l_Lean_Syntax_formatStxAux___closed__16; +x_53 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_53, 0, x_19); +lean_ctor_set(x_53, 1, x_52); +x_54 = lean_box(1); +x_55 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_53, x_54); +x_56 = l_Lean_Syntax_formatStxAux___closed__11; x_57 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_57, 0, x_55); -lean_ctor_set(x_57, 1, x_56); -x_58 = l_Lean_Syntax_formatStxAux___closed__10; -x_59 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_59, 0, x_58); -lean_ctor_set(x_59, 1, x_57); -x_60 = 0; -x_61 = lean_alloc_ctor(6, 1, 1); -lean_ctor_set(x_61, 0, x_59); -lean_ctor_set_uint8(x_61, sizeof(void*)*1, x_60); -return x_61; +lean_ctor_set(x_57, 0, x_56); +lean_ctor_set(x_57, 1, x_55); +x_58 = l_Lean_Syntax_formatStxAux___closed__13; +x_59 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_59, 0, x_57); +lean_ctor_set(x_59, 1, x_58); +x_60 = l_Lean_Syntax_formatStxAux___closed__10; +x_61 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_61, 0, x_60); +lean_ctor_set(x_61, 1, x_59); +x_62 = 0; +x_63 = lean_alloc_ctor(6, 1, 1); +lean_ctor_set(x_63, 0, x_61); +lean_ctor_set_uint8(x_63, sizeof(void*)*1, x_62); +return x_63; } } else { -lean_object* x_62; uint8_t x_63; -x_62 = lean_ctor_get(x_1, 0); -x_63 = lean_nat_dec_lt(x_62, x_9); -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_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; uint8_t x_76; lean_object* x_77; -x_64 = lean_array_to_list(lean_box(0), x_7); -x_65 = lean_box(0); -x_66 = l_List_mapTR_loop___at_Lean_Syntax_formatStxAux___spec__3(x_1, x_2, x_9, x_64, x_65); -lean_dec(x_9); -x_67 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_67, 0, x_17); -lean_ctor_set(x_67, 1, x_66); -x_68 = lean_box(1); -x_69 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_67, x_68); -x_70 = l_Lean_Syntax_formatStxAux___closed__11; -x_71 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_71, 0, x_70); -lean_ctor_set(x_71, 1, x_69); -x_72 = l_Lean_Syntax_formatStxAux___closed__13; +lean_object* x_64; uint8_t x_65; +x_64 = lean_ctor_get(x_1, 0); +x_65 = lean_nat_dec_lt(x_64, x_10); +if (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; lean_object* x_75; lean_object* x_76; lean_object* x_77; uint8_t x_78; lean_object* x_79; +x_66 = lean_array_to_list(lean_box(0), x_8); +x_67 = lean_box(0); +x_68 = l_List_mapTR_loop___at_Lean_Syntax_formatStxAux___spec__3(x_1, x_2, x_10, x_66, x_67); +lean_dec(x_10); +x_69 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_69, 0, x_19); +lean_ctor_set(x_69, 1, x_68); +x_70 = lean_box(1); +x_71 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_69, x_70); +x_72 = l_Lean_Syntax_formatStxAux___closed__11; x_73 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_73, 0, x_71); -lean_ctor_set(x_73, 1, x_72); -x_74 = l_Lean_Syntax_formatStxAux___closed__10; -x_75 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_75, 0, x_74); -lean_ctor_set(x_75, 1, x_73); -x_76 = 0; -x_77 = lean_alloc_ctor(6, 1, 1); -lean_ctor_set(x_77, 0, x_75); -lean_ctor_set_uint8(x_77, sizeof(void*)*1, x_76); -return x_77; +lean_ctor_set(x_73, 0, x_72); +lean_ctor_set(x_73, 1, x_71); +x_74 = l_Lean_Syntax_formatStxAux___closed__13; +x_75 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_75, 0, x_73); +lean_ctor_set(x_75, 1, x_74); +x_76 = l_Lean_Syntax_formatStxAux___closed__10; +x_77 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_77, 0, x_76); +lean_ctor_set(x_77, 1, x_75); +x_78 = 0; +x_79 = lean_alloc_ctor(6, 1, 1); +lean_ctor_set(x_79, 0, x_77); +lean_ctor_set_uint8(x_79, sizeof(void*)*1, x_78); +return x_79; } 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; lean_object* x_87; uint8_t x_88; lean_object* x_89; -lean_dec(x_9); -lean_dec(x_7); -x_78 = l_Lean_Syntax_formatStxAux___closed__16; -x_79 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_79, 0, x_17); -lean_ctor_set(x_79, 1, x_78); -x_80 = lean_box(1); -x_81 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_79, x_80); -x_82 = l_Lean_Syntax_formatStxAux___closed__11; -x_83 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_83, 0, x_82); -lean_ctor_set(x_83, 1, x_81); -x_84 = l_Lean_Syntax_formatStxAux___closed__13; +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; uint8_t x_90; lean_object* x_91; +lean_dec(x_10); +lean_dec(x_8); +x_80 = l_Lean_Syntax_formatStxAux___closed__16; +x_81 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_81, 0, x_19); +lean_ctor_set(x_81, 1, x_80); +x_82 = lean_box(1); +x_83 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_81, x_82); +x_84 = l_Lean_Syntax_formatStxAux___closed__11; x_85 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_85, 0, x_83); -lean_ctor_set(x_85, 1, x_84); -x_86 = l_Lean_Syntax_formatStxAux___closed__10; -x_87 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_87, 0, x_86); -lean_ctor_set(x_87, 1, x_85); -x_88 = 0; -x_89 = lean_alloc_ctor(6, 1, 1); -lean_ctor_set(x_89, 0, x_87); -lean_ctor_set_uint8(x_89, sizeof(void*)*1, x_88); -return x_89; +lean_ctor_set(x_85, 0, x_84); +lean_ctor_set(x_85, 1, x_83); +x_86 = l_Lean_Syntax_formatStxAux___closed__13; +x_87 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_87, 0, x_85); +lean_ctor_set(x_87, 1, x_86); +x_88 = l_Lean_Syntax_formatStxAux___closed__10; +x_89 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_89, 0, x_88); +lean_ctor_set(x_89, 1, x_87); +x_90 = 0; +x_91 = lean_alloc_ctor(6, 1, 1); +lean_ctor_set(x_91, 0, x_89); +lean_ctor_set_uint8(x_91, sizeof(void*)*1, x_90); +return x_91; } } } } else { -lean_object* x_90; lean_object* x_91; uint8_t x_92; +lean_object* x_92; lean_object* x_93; uint8_t x_94; +lean_dec(x_7); lean_dec(x_6); -x_90 = lean_array_get_size(x_7); -x_91 = lean_unsigned_to_nat(0u); -x_92 = lean_nat_dec_lt(x_91, x_90); -lean_dec(x_90); -if (x_92 == 0) -{ -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; uint8_t x_104; lean_object* x_105; -x_93 = lean_array_to_list(lean_box(0), x_7); -x_94 = lean_box(0); -x_95 = l_List_mapTR_loop___at_Lean_Syntax_formatStxAux___spec__4(x_1, x_2, x_9, x_93, x_94); -lean_dec(x_9); -x_96 = lean_box(1); -x_97 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_95, x_96); -x_98 = l_Lean_Syntax_formatStxAux___closed__20; -x_99 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_99, 0, x_98); -lean_ctor_set(x_99, 1, x_97); -x_100 = l_Lean_Syntax_formatStxAux___closed__22; +x_92 = lean_array_get_size(x_8); +x_93 = lean_unsigned_to_nat(0u); +x_94 = lean_nat_dec_lt(x_93, x_92); +lean_dec(x_92); +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; lean_object* x_103; lean_object* x_104; lean_object* x_105; uint8_t x_106; lean_object* x_107; +x_95 = lean_array_to_list(lean_box(0), x_8); +x_96 = lean_box(0); +x_97 = l_List_mapTR_loop___at_Lean_Syntax_formatStxAux___spec__4(x_1, x_2, x_10, x_95, x_96); +lean_dec(x_10); +x_98 = lean_box(1); +x_99 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_97, x_98); +x_100 = l_Lean_Syntax_formatStxAux___closed__20; x_101 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_101, 0, x_99); -lean_ctor_set(x_101, 1, x_100); -x_102 = l_Lean_Syntax_formatStxAux___closed__19; -x_103 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_103, 0, x_102); -lean_ctor_set(x_103, 1, x_101); -x_104 = 0; -x_105 = lean_alloc_ctor(6, 1, 1); -lean_ctor_set(x_105, 0, x_103); -lean_ctor_set_uint8(x_105, sizeof(void*)*1, x_104); -return x_105; +lean_ctor_set(x_101, 0, x_100); +lean_ctor_set(x_101, 1, x_99); +x_102 = l_Lean_Syntax_formatStxAux___closed__22; +x_103 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_103, 0, x_101); +lean_ctor_set(x_103, 1, x_102); +x_104 = l_Lean_Syntax_formatStxAux___closed__19; +x_105 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_105, 0, x_104); +lean_ctor_set(x_105, 1, x_103); +x_106 = 0; +x_107 = lean_alloc_ctor(6, 1, 1); +lean_ctor_set(x_107, 0, x_105); +lean_ctor_set_uint8(x_107, sizeof(void*)*1, x_106); +return x_107; } else { if (lean_obj_tag(x_1) == 0) { -uint8_t x_106; -x_106 = lean_nat_dec_lt(x_9, x_9); -if (x_106 == 0) -{ -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; uint8_t x_118; lean_object* x_119; -x_107 = lean_array_to_list(lean_box(0), x_7); -x_108 = lean_box(0); -x_109 = l_List_mapTR_loop___at_Lean_Syntax_formatStxAux___spec__5(x_1, x_2, x_9, x_107, x_108); -lean_dec(x_9); -x_110 = lean_box(1); -x_111 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_109, x_110); -x_112 = l_Lean_Syntax_formatStxAux___closed__20; -x_113 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_113, 0, x_112); -lean_ctor_set(x_113, 1, x_111); -x_114 = l_Lean_Syntax_formatStxAux___closed__22; +uint8_t x_108; +x_108 = lean_nat_dec_lt(x_10, x_10); +if (x_108 == 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; lean_object* x_117; lean_object* x_118; lean_object* x_119; uint8_t x_120; lean_object* x_121; +x_109 = lean_array_to_list(lean_box(0), x_8); +x_110 = lean_box(0); +x_111 = l_List_mapTR_loop___at_Lean_Syntax_formatStxAux___spec__5(x_1, x_2, x_10, x_109, x_110); +lean_dec(x_10); +x_112 = lean_box(1); +x_113 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_111, x_112); +x_114 = l_Lean_Syntax_formatStxAux___closed__20; x_115 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_115, 0, x_113); -lean_ctor_set(x_115, 1, x_114); -x_116 = l_Lean_Syntax_formatStxAux___closed__19; -x_117 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_117, 0, x_116); -lean_ctor_set(x_117, 1, x_115); -x_118 = 0; -x_119 = lean_alloc_ctor(6, 1, 1); -lean_ctor_set(x_119, 0, x_117); -lean_ctor_set_uint8(x_119, sizeof(void*)*1, x_118); -return x_119; +lean_ctor_set(x_115, 0, x_114); +lean_ctor_set(x_115, 1, x_113); +x_116 = l_Lean_Syntax_formatStxAux___closed__22; +x_117 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_117, 0, x_115); +lean_ctor_set(x_117, 1, x_116); +x_118 = l_Lean_Syntax_formatStxAux___closed__19; +x_119 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_119, 0, x_118); +lean_ctor_set(x_119, 1, x_117); +x_120 = 0; +x_121 = lean_alloc_ctor(6, 1, 1); +lean_ctor_set(x_121, 0, x_119); +lean_ctor_set_uint8(x_121, sizeof(void*)*1, x_120); +return x_121; } else { -lean_object* x_120; -lean_dec(x_9); -lean_dec(x_7); -x_120 = l_Lean_Syntax_formatStxAux___closed__26; -return x_120; +lean_object* x_122; +lean_dec(x_10); +lean_dec(x_8); +x_122 = l_Lean_Syntax_formatStxAux___closed__26; +return x_122; } } else { -lean_object* x_121; uint8_t x_122; -x_121 = lean_ctor_get(x_1, 0); -x_122 = lean_nat_dec_lt(x_121, x_9); -if (x_122 == 0) -{ -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; lean_object* x_135; -x_123 = lean_array_to_list(lean_box(0), x_7); -x_124 = lean_box(0); -x_125 = l_List_mapTR_loop___at_Lean_Syntax_formatStxAux___spec__6(x_1, x_2, x_9, x_123, x_124); -lean_dec(x_9); -x_126 = lean_box(1); -x_127 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_125, x_126); -x_128 = l_Lean_Syntax_formatStxAux___closed__20; -x_129 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_129, 0, x_128); -lean_ctor_set(x_129, 1, x_127); -x_130 = l_Lean_Syntax_formatStxAux___closed__22; +lean_object* x_123; uint8_t x_124; +x_123 = lean_ctor_get(x_1, 0); +x_124 = lean_nat_dec_lt(x_123, x_10); +if (x_124 == 0) +{ +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; uint8_t x_136; lean_object* x_137; +x_125 = lean_array_to_list(lean_box(0), x_8); +x_126 = lean_box(0); +x_127 = l_List_mapTR_loop___at_Lean_Syntax_formatStxAux___spec__6(x_1, x_2, x_10, x_125, x_126); +lean_dec(x_10); +x_128 = lean_box(1); +x_129 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_127, x_128); +x_130 = l_Lean_Syntax_formatStxAux___closed__20; x_131 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_131, 0, x_129); -lean_ctor_set(x_131, 1, x_130); -x_132 = l_Lean_Syntax_formatStxAux___closed__19; -x_133 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_133, 0, x_132); -lean_ctor_set(x_133, 1, x_131); -x_134 = 0; -x_135 = lean_alloc_ctor(6, 1, 1); -lean_ctor_set(x_135, 0, x_133); -lean_ctor_set_uint8(x_135, sizeof(void*)*1, x_134); -return x_135; +lean_ctor_set(x_131, 0, x_130); +lean_ctor_set(x_131, 1, x_129); +x_132 = l_Lean_Syntax_formatStxAux___closed__22; +x_133 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_133, 0, x_131); +lean_ctor_set(x_133, 1, x_132); +x_134 = l_Lean_Syntax_formatStxAux___closed__19; +x_135 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_135, 0, x_134); +lean_ctor_set(x_135, 1, x_133); +x_136 = 0; +x_137 = lean_alloc_ctor(6, 1, 1); +lean_ctor_set(x_137, 0, x_135); +lean_ctor_set_uint8(x_137, sizeof(void*)*1, x_136); +return x_137; } else { -lean_object* x_136; -lean_dec(x_9); -lean_dec(x_7); -x_136 = l_Lean_Syntax_formatStxAux___closed__26; -return x_136; +lean_object* x_138; +lean_dec(x_10); +lean_dec(x_8); +x_138 = l_Lean_Syntax_formatStxAux___closed__26; +return x_138; } } } @@ -1216,37 +1220,37 @@ return x_136; } case 2: { -lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; -x_137 = lean_ctor_get(x_4, 0); -lean_inc(x_137); -x_138 = lean_ctor_get(x_4, 1); -lean_inc(x_138); +lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; +x_139 = lean_ctor_get(x_4, 0); +lean_inc(x_139); +x_140 = lean_ctor_get(x_4, 1); +lean_inc(x_140); lean_dec(x_4); -x_139 = l_String_quote(x_138); -lean_dec(x_138); -x_140 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_140, 0, x_139); -x_141 = l___private_Init_Data_Format_Syntax_0__Lean_Syntax_formatInfo(x_2, x_137, x_140); -return x_141; +x_141 = l_String_quote(x_140); +lean_dec(x_140); +x_142 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_142, 0, x_141); +x_143 = l___private_Init_Data_Format_Syntax_0__Lean_Syntax_formatInfo(x_2, x_139, x_142); +return x_143; } default: { -lean_object* x_142; lean_object* x_143; uint8_t x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; -x_142 = lean_ctor_get(x_4, 0); -lean_inc(x_142); -x_143 = lean_ctor_get(x_4, 2); -lean_inc(x_143); +lean_object* x_144; lean_object* x_145; uint8_t x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; +x_144 = lean_ctor_get(x_4, 0); +lean_inc(x_144); +x_145 = lean_ctor_get(x_4, 2); +lean_inc(x_145); lean_dec(x_4); -x_144 = 1; -x_145 = l_Lean_Name_toString(x_143, x_144); -x_146 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_146, 0, x_145); -x_147 = l_Lean_Syntax_formatStxAux___closed__28; -x_148 = lean_alloc_ctor(5, 2, 0); +x_146 = 1; +x_147 = l_Lean_Name_toString(x_145, x_146); +x_148 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_148, 0, x_147); -lean_ctor_set(x_148, 1, x_146); -x_149 = l___private_Init_Data_Format_Syntax_0__Lean_Syntax_formatInfo(x_2, x_142, x_148); -return x_149; +x_149 = l_Lean_Syntax_formatStxAux___closed__28; +x_150 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_150, 0, x_149); +lean_ctor_set(x_150, 1, x_148); +x_151 = l___private_Init_Data_Format_Syntax_0__Lean_Syntax_formatInfo(x_2, x_144, x_150); +return x_151; } } } diff --git a/stage0/stdlib/Init/Data/Int/Bitwise/Lemmas.c b/stage0/stdlib/Init/Data/Int/Bitwise/Lemmas.c new file mode 100644 index 000000000000..e491348fa267 --- /dev/null +++ b/stage0/stdlib/Init/Data/Int/Bitwise/Lemmas.c @@ -0,0 +1,96 @@ +// Lean compiler output +// Module: Init.Data.Int.Bitwise.Lemmas +// Imports: Init.Data.Nat.Bitwise.Lemmas Init.Data.Int.Bitwise +#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_Int_Bitwise_Lemmas_0__Int_shiftRight_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Data_Int_Bitwise_Lemmas_0__Int_shiftRight_match__1_splitter___rarg___closed__1; +lean_object* lean_nat_to_int(lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Int_Bitwise_Lemmas_0__Int_shiftRight_match__1_splitter(lean_object*); +lean_object* lean_nat_abs(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___private_Init_Data_Int_Bitwise_Lemmas_0__Int_shiftRight_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* _init_l___private_Init_Data_Int_Bitwise_Lemmas_0__Int_shiftRight_match__1_splitter___rarg___closed__1() { +_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; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Int_Bitwise_Lemmas_0__Int_shiftRight_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 = l___private_Init_Data_Int_Bitwise_Lemmas_0__Int_shiftRight_match__1_splitter___rarg___closed__1; +x_6 = lean_int_dec_lt(x_1, x_5); +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; +lean_dec(x_4); +x_7 = lean_nat_abs(x_1); +x_8 = lean_apply_2(x_3, x_7, x_2); +return x_8; +} +else +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_dec(x_3); +x_9 = lean_nat_abs(x_1); +x_10 = lean_unsigned_to_nat(1u); +x_11 = lean_nat_sub(x_9, x_10); +lean_dec(x_9); +x_12 = lean_apply_2(x_4, x_11, x_2); +return x_12; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Int_Bitwise_Lemmas_0__Int_shiftRight_match__1_splitter(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l___private_Init_Data_Int_Bitwise_Lemmas_0__Int_shiftRight_match__1_splitter___rarg___boxed), 4, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Int_Bitwise_Lemmas_0__Int_shiftRight_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_Int_Bitwise_Lemmas_0__Int_shiftRight_match__1_splitter___rarg(x_1, x_2, x_3, x_4); +lean_dec(x_1); +return x_5; +} +} +lean_object* initialize_Init_Data_Nat_Bitwise_Lemmas(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Int_Bitwise(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Init_Data_Int_Bitwise_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_Nat_Bitwise_Lemmas(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Data_Int_Bitwise(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l___private_Init_Data_Int_Bitwise_Lemmas_0__Int_shiftRight_match__1_splitter___rarg___closed__1 = _init_l___private_Init_Data_Int_Bitwise_Lemmas_0__Int_shiftRight_match__1_splitter___rarg___closed__1(); +lean_mark_persistent(l___private_Init_Data_Int_Bitwise_Lemmas_0__Int_shiftRight_match__1_splitter___rarg___closed__1); +return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Init/Data/String/Basic.c b/stage0/stdlib/Init/Data/String/Basic.c index 98274bd29bf4..c430a57b168b 100644 --- a/stage0/stdlib/Init/Data/String/Basic.c +++ b/stage0/stdlib/Init/Data/String/Basic.c @@ -52,6 +52,7 @@ LEAN_EXPORT lean_object* l_String_Iterator_remainingToString___boxed(lean_object LEAN_EXPORT lean_object* l_String_append___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_String_substrEq_loop(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_splitAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__Nat_fold_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_String_splitOn___closed__1; LEAN_EXPORT lean_object* l_String_foldlAux___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_trim___boxed(lean_object*); @@ -90,6 +91,7 @@ LEAN_EXPORT lean_object* l_String_instSizeOfIterator___boxed(lean_object*); lean_object* lean_string_utf8_set(lean_object*, lean_object*, uint32_t); LEAN_EXPORT lean_object* l_String_Iterator_setCurr___boxed(lean_object*, lean_object*); static lean_object* l_String_instAppend___closed__1; +LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__Nat_fold_match__1_splitter(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_anyAux___at_Substring_contains___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_firstDiffPos___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_isNat___boxed(lean_object*); @@ -166,11 +168,13 @@ LEAN_EXPORT lean_object* l_String_offsetOfPosAux___boxed(lean_object*, lean_obje uint8_t lean_string_utf8_at_end(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Substring_isEmpty(lean_object*); LEAN_EXPORT lean_object* l_String_find(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__Substring_nextn_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_trimRight___boxed(lean_object*); LEAN_EXPORT lean_object* l_Substring_takeRight(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_posOfAux(lean_object*, uint32_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_Iterator_hasPrev___boxed(lean_object*); LEAN_EXPORT uint32_t l_String_front(lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__Nat_fold_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_foldr___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_startsWith___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Substring_foldr(lean_object*); @@ -203,6 +207,7 @@ LEAN_EXPORT uint8_t l_String_isNat(lean_object*); LEAN_EXPORT lean_object* l_String_replace_loop(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_front___boxed(lean_object*); LEAN_EXPORT lean_object* l_Char_toString(uint32_t); +LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__Substring_nextn_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_instLT; LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__String_utf8ByteSize_go_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Substring_prev(lean_object*, lean_object*); @@ -227,6 +232,7 @@ LEAN_EXPORT lean_object* l_String_iter(lean_object*); LEAN_EXPORT lean_object* l_String_Iterator_nextn(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_foldl___at_String_join___spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_String_any(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__Substring_nextn_match__1_splitter(lean_object*); LEAN_EXPORT lean_object* l_String_Iterator_forward(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_findAux(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_replace(lean_object*, lean_object*, lean_object*); @@ -6113,6 +6119,88 @@ x_3 = l_Char_toString(x_2); return x_3; } } +LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__Nat_fold_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_String_Basic_0__Nat_fold_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_String_Basic_0__Nat_fold_match__1_splitter___rarg___boxed), 4, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__Nat_fold_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_String_Basic_0__Nat_fold_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_String_Basic_0__Substring_nextn_match__1_splitter___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; uint8_t x_7; +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_nat_dec_eq(x_2, x_6); +if (x_7 == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; +lean_dec(x_4); +x_8 = lean_unsigned_to_nat(1u); +x_9 = lean_nat_sub(x_2, x_8); +x_10 = lean_apply_3(x_5, x_1, x_9, x_3); +return x_10; +} +else +{ +lean_object* x_11; +lean_dec(x_5); +x_11 = lean_apply_2(x_4, x_1, x_3); +return x_11; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__Substring_nextn_match__1_splitter(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l___private_Init_Data_String_Basic_0__Substring_nextn_match__1_splitter___rarg___boxed), 5, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_String_Basic_0__Substring_nextn_match__1_splitter___rarg___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_Init_Data_String_Basic_0__Substring_nextn_match__1_splitter___rarg(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_2); +return x_6; +} +} lean_object* initialize_Init_Data_List_Basic(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_Char_Basic(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_Option_Basic(uint8_t builtin, lean_object*); diff --git a/stage0/stdlib/Init/System/IO.c b/stage0/stdlib/Init/System/IO.c index d23bc07d0304..183881a6a97e 100644 --- a/stage0/stdlib/Init/System/IO.c +++ b/stage0/stdlib/Init/System/IO.c @@ -13,13 +13,13 @@ #ifdef __cplusplus extern "C" { #endif -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__3; LEAN_EXPORT lean_object* l_IO_FS_Handle_lock___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_instInhabitedStream___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_unsafeIO___rarg(lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_readToEnd___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_println___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_eprintln___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729_(lean_object*, lean_object*); static lean_object* l_IO_FS_instInhabitedStream___closed__1; lean_object* lean_format_pretty(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_byte_array_copy_slice(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t); @@ -28,21 +28,21 @@ static lean_object* l_IO_instOrdTaskState___closed__1; LEAN_EXPORT lean_object* l_EIO_toIO_x27(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_eprint___rarg(lean_object*, lean_object*, lean_object*); lean_object* lean_io_cancel(lean_object*, lean_object*); -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__20; static lean_object* l_IO_FS_instInhabitedSystemTime___closed__1; lean_object* lean_io_prim_handle_lock(lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_IO_getNumHeartbeats___boxed(lean_object*); LEAN_EXPORT lean_object* l_EIO_toBaseIO___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_Process_SpawnArgs_cwd___default; +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_unsafeBaseIO(lean_object*); LEAN_EXPORT lean_object* l_termPrintln_x21____; -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____boxed(lean_object*, lean_object*); static lean_object* l_IO_FS_instInhabitedStream___closed__4; static lean_object* l_IO_FS_instInhabitedStream___closed__2; LEAN_EXPORT lean_object* l_IO_FS_Handle_readBinToEnd(lean_object*, lean_object*); lean_object* lean_io_prim_handle_unlock(lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); LEAN_EXPORT lean_object* l_EIO_toIO(lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__14; lean_object* lean_io_prim_handle_put_str(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_toEIO(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_withStdin___rarg___lambda__2(lean_object*); @@ -54,66 +54,71 @@ LEAN_EXPORT lean_object* l_IO_mkRef___rarg(lean_object*, lean_object*); lean_object* lean_uint32_to_nat(uint32_t); lean_object* l_System_FilePath_join(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_hasFinished___rarg(lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__4; LEAN_EXPORT lean_object* l_IO_FS_removeFile___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_lines_read___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_IO_FS_withIsolatedStreams___rarg___lambda__1___closed__4; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__2; LEAN_EXPORT lean_object* l_IO_Process_spawn___boxed(lean_object*, lean_object*); static uint32_t l_IO_AccessRight_flags___closed__5; LEAN_EXPORT lean_object* l_MonadExcept_orElse___at_instOrElseEIO___spec__1___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__13; lean_object* lean_io_remove_file(lean_object*, lean_object*); static uint32_t l_IO_AccessRight_flags___closed__11; -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_ordSystemTime____x40_Init_System_IO___hyg_3026____boxed(lean_object*, lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__11; LEAN_EXPORT lean_object* l_BaseIO_mapTasks_go___rarg___lambda__1(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_println(lean_object*); lean_object* lean_io_prim_handle_read(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_readFile___boxed(lean_object*, lean_object*); lean_object* lean_io_check_canceled(lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__6; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__32; +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_beqSystemTime____x40_Init_System_IO___hyg_2786____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_appPath___boxed(lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__9; LEAN_EXPORT lean_object* l_EIO_toIO___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_hasFinished(lean_object*); -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__2; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__38; static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__8; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__4; LEAN_EXPORT lean_object* l_IO_CancelToken_isSet(lean_object*, lean_object*); static uint32_t l_IO_FS_instInhabitedStream___lambda__1___closed__1; LEAN_EXPORT lean_object* l_EIO_asTask(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__4; lean_object* l_EStateM_instInhabited___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_EIO_toIO_x27___rarg(lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__1; lean_object* lean_get_set_stdout(lean_object*, lean_object*); static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__20; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__4; LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185_(uint8_t, lean_object*); static lean_object* l_termPrintln_x21_______closed__8; -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__3; LEAN_EXPORT lean_object* l_IO_FS_withIsolatedStreams___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instEvalUnit(lean_object*); -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__17; LEAN_EXPORT lean_object* l_IO_FS_Stream_ofHandle___elambda__6(lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__8; LEAN_EXPORT lean_object* l_IO_mkRef(lean_object*); lean_object* lean_io_as_task(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__10; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__37; LEAN_EXPORT lean_object* l_Lean_runEval___rarg___lambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_String_quote(lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__13; lean_object* lean_io_prim_handle_flush(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BaseIO_mapTasks(lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__2; static lean_object* l_IO_instToStringTaskState___closed__1; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__27; static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__3; LEAN_EXPORT lean_object* l_EIO_bindTask___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_getLine___boxed(lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__7; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__4; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__12; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__11; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__9; LEAN_EXPORT lean_object* l_IO_Process_run___lambda__1(lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FileRight_other___default; LEAN_EXPORT lean_object* l_IO_FS_rename___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__17; LEAN_EXPORT lean_object* l_IO_FileRight_flags___boxed(lean_object*); +static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__33; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__16; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__8; LEAN_EXPORT lean_object* l_IO_FS_withIsolatedStreams___rarg___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_mapTasks___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_IO_withStderr___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -126,76 +131,66 @@ static lean_object* l_IO_TaskState_noConfusion___rarg___closed__1; LEAN_EXPORT lean_object* l_IO_FS_instOrdSystemTime; LEAN_EXPORT lean_object* l_Lean_instEvalUnit___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* lean_io_eprintln(lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__13; LEAN_EXPORT lean_object* l_IO_FS_Handle_write___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Stream_ofHandle___elambda__2(lean_object*, lean_object*, lean_object*); uint8_t l_ByteArray_isEmpty(lean_object*); -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__13; lean_object* lean_io_process_child_take_stdin(lean_object*, lean_object*, lean_object*); static lean_object* l_IO_appDir___closed__1; LEAN_EXPORT uint8_t l_IO_instDecidableEqTaskState(uint8_t, uint8_t); static lean_object* l_termPrintln_x21_______closed__1; lean_object* lean_io_rename(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Mode_noConfusion___rarg___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__7; lean_object* l_ST_Prim_Ref_get___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Stream_ofHandle___elambda__5___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_instMonadLiftSTRealWorldBaseIO(lean_object*); lean_object* lean_io_metadata(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_wait___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632_; LEAN_EXPORT lean_object* l_IO_FS_withIsolatedStreams___at_Lean_runEval___spec__1___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__17; LEAN_EXPORT lean_object* l_IO_iterate(lean_object*, lean_object*); -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__5; -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____boxed(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__18; LEAN_EXPORT lean_object* l_IO_FS_Mode_noConfusion___rarg(uint8_t, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_IO_bindTask___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_System_FilePath_metadata___boxed(lean_object*, lean_object*); lean_object* lean_io_getenv(lean_object*, lean_object*); -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__7; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__12; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__1; LEAN_EXPORT lean_object* l_IO_FS_Stream_ofHandle___elambda__1(lean_object*, lean_object*); lean_object* l_ByteArray_extract(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__6; static lean_object* l_IO_FileRight_user___default___closed__1; LEAN_EXPORT lean_object* l_IO_FS_Stream_ofBuffer___elambda__3(lean_object*, lean_object*); static uint32_t l_IO_AccessRight_flags___closed__4; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__24; LEAN_EXPORT lean_object* l_IO_withStderr___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__16; lean_object* lean_io_remove_dir(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_DirEntry_path(lean_object*); static uint32_t l_IO_AccessRight_flags___closed__2; LEAN_EXPORT lean_object* l_IO_checkCanceled___boxed(lean_object*); LEAN_EXPORT lean_object* l_IO_monoMsNow___boxed(lean_object*); LEAN_EXPORT lean_object* l_IO_mapTasks(lean_object*, lean_object*); -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__6; static lean_object* l_termPrintln_x21_______closed__13; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__6; LEAN_EXPORT lean_object* l_allocprof___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__18; LEAN_EXPORT lean_object* l_IO_FS_instInhabitedSystemTime; LEAN_EXPORT lean_object* l_Lean_instEval(lean_object*); static lean_object* l_Lean_instEvalUnit___rarg___closed__2; static lean_object* l_termPrintln_x21_______closed__3; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__3; -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__10; LEAN_EXPORT lean_object* l_IO_FS_FileType_toCtorIdx(uint8_t); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__22; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__7; static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__14; lean_object* l_Lean_Syntax_node5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ByteArray_findIdx_x3f_loop___at_IO_FS_Stream_ofBuffer___spec__1___boxed(lean_object*, lean_object*); lean_object* lean_io_get_num_heartbeats(lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__2; uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_instReprSystemTime; LEAN_EXPORT lean_object* l_instInhabitedEIO___rarg(lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__5; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__4; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__40; LEAN_EXPORT lean_object* l_IO_TaskState_toCtorIdx(uint8_t); LEAN_EXPORT lean_object* l_IO_Process_Stdio_noConfusion(lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__14; LEAN_EXPORT lean_object* l_instMonadFinallyBaseIO; LEAN_EXPORT lean_object* l_System_FilePath_readDir___boxed(lean_object*, lean_object*); static uint32_t l_IO_AccessRight_flags___closed__12; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__20; LEAN_EXPORT lean_object* l_Lean_instEvalUnit___rarg(uint8_t, lean_object*); static uint32_t l_IO_AccessRight_flags___closed__8; lean_object* l_EStateM_instMonad(lean_object*, lean_object*); @@ -203,14 +198,11 @@ static lean_object* l_IO_FS_Stream_ofBuffer___elambda__3___closed__2; static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__5; LEAN_EXPORT lean_object* l_IO_instDecidableEqTaskState___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_getStdout___boxed(lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__4; static lean_object* l_IO_FS_instInhabitedStream___closed__3; LEAN_EXPORT lean_object* l_System_FilePath_walkDir_go___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_FileType_noConfusion(lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_readBinToEnd___boxed(lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__17; lean_object* l_ByteArray_append(lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__22; LEAN_EXPORT lean_object* l_ByteArray_findIdx_x3f_loop___at_IO_FS_Stream_ofBuffer___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_readBinToEnd_loop(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_lines(lean_object*, lean_object*); @@ -218,19 +210,21 @@ static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_S lean_object* lean_dbg_sleep(uint32_t, lean_object*); LEAN_EXPORT lean_object* l_IO_CancelToken_isSet___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_System_FilePath_pathExists(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___auto____x40_Init_System_IO___hyg_1808_; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__29; -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__1; LEAN_EXPORT lean_object* l_MonadExcept_orElse___at_instOrElseEIO___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_removeDir___boxed(lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__2; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__9; LEAN_EXPORT lean_object* l_IO_FS_Stream_Buffer_pos___default; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__32; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__19; static lean_object* l_IO_FS_instReprFileType___closed__1; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__26; +lean_object* lean_string_utf8_byte_size(lean_object*); LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_ordTaskState____x40_Init_System_IO___hyg_1401_(uint8_t, uint8_t); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__8; lean_object* lean_string_push(lean_object*, uint32_t); LEAN_EXPORT lean_object* l_IO_FS_instInhabitedStream; -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2857____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_hasFinished___rarg___boxed(lean_object*, lean_object*); uint8_t lean_string_validate_utf8(lean_object*); LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_ordTaskState____x40_Init_System_IO___hyg_1401____boxed(lean_object*, lean_object*); @@ -241,36 +235,38 @@ LEAN_EXPORT lean_object* l_IO_iterate___rarg(lean_object*, lean_object*, lean_ob LEAN_EXPORT lean_object* l_IO_FS_Stream_ofBuffer___elambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_cancel___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__19; -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__5; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__16; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__16; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__1; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__1; LEAN_EXPORT lean_object* l_IO_withStdout___at_Lean_runEval___spec__2(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__5; LEAN_EXPORT lean_object* l_IO_withStdin(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_createDirAll(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_TaskState_noConfusion(lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__36; lean_object* lean_get_stdout(lean_object*); static lean_object* l_termPrintln_x21_______closed__4; LEAN_EXPORT lean_object* l_instInhabitedEIO(lean_object*, lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__31; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__11; LEAN_EXPORT uint32_t l_IO_AccessRight_flags(lean_object*); LEAN_EXPORT lean_object* l_IO_instReprTaskState; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__17; LEAN_EXPORT lean_object* l_IO_FS_writeBinFile(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__9; lean_object* lean_io_process_child_wait(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__4; LEAN_EXPORT lean_object* l_IO_println___at_Lean_instEval___spec__1(lean_object*, lean_object*); static lean_object* l_IO_Process_output___closed__1; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__7; LEAN_EXPORT lean_object* l_IO_TaskState_noConfusion___rarg___lambda__1___boxed(lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__2; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__20; -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____boxed(lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_EIO_mapTask(lean_object*, lean_object*, lean_object*); uint8_t l_String_isEmpty(lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__15; LEAN_EXPORT lean_object* l_IO_FS_Mode_toCtorIdx___boxed(lean_object*); LEAN_EXPORT lean_object* l_IO_sleep___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_instInhabitedStream___lambda__2(size_t, lean_object*); LEAN_EXPORT lean_object* l_IO_CancelToken_new(lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__20; LEAN_EXPORT lean_object* l_unsafeEIO(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_TaskState_noConfusion___rarg(uint8_t, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_BaseIO_mapTask___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -280,127 +276,124 @@ LEAN_EXPORT lean_object* l_IO_FS_createDirAll___lambda__1___boxed(lean_object*, lean_object* lean_io_prim_handle_try_lock(lean_object*, uint8_t, lean_object*); LEAN_EXPORT uint8_t l_IO_instInhabitedTaskState; LEAN_EXPORT lean_object* l_IO_getStdin___boxed(lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__1; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__21; static lean_object* l_IO_FS_withIsolatedStreams___rarg___lambda__1___closed__1; LEAN_EXPORT lean_object* l_IO_eprint(lean_object*); LEAN_EXPORT lean_object* l_IO_ofExcept(lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__19; lean_object* lean_st_ref_take(lean_object*, lean_object*); lean_object* lean_io_allocprof(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__22; LEAN_EXPORT lean_object* l_IO_FS_Stream_ofBuffer___elambda__6(lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__16; -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__14; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__8; LEAN_EXPORT lean_object* l_IO_TaskState_noConfusion___rarg___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_IO_FS_instInhabitedStream___lambda__3___boxed(lean_object*, lean_object*); lean_object* l_String_dropRight(lean_object*, lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__25; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__19; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__9; +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_truncate___boxed(lean_object*, lean_object*); static lean_object* l_IO_FS_withIsolatedStreams___rarg___lambda__1___closed__2; LEAN_EXPORT lean_object* l_System_FilePath_isDir(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_Process_Stdio_toCtorIdx(uint8_t); LEAN_EXPORT lean_object* l_IO_FS_Stream_ofBuffer___elambda__4___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2694____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_waitAny___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instEvalOfRepr(lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__6; LEAN_EXPORT lean_object* l_IO_eprintln___at___private_Init_System_IO_0__IO_eprintlnAux___spec__1(lean_object*, lean_object*); lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); lean_object* lean_io_timeit(lean_object*, lean_object*, lean_object*); lean_object* lean_nat_to_int(lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_putStrLn(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_FS_beqSystemTime____x40_Init_System_IO___hyg_2949_(lean_object*, lean_object*); extern lean_object* l_ByteArray_empty; LEAN_EXPORT lean_object* l_System_FilePath_walkDir_go(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_mapTasks___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_io_add_heartbeats(uint64_t, lean_object*); static lean_object* l_IO_FS_instBEqSystemTime___closed__1; LEAN_EXPORT lean_object* l_IO_FS_Stream_ofHandle___elambda__4___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__8; LEAN_EXPORT lean_object* l_IO_CancelToken_set___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_EIO_mapTask___rarg___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_EIO_mapTasks___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_IO_instLTTaskState; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__8; LEAN_EXPORT lean_object* l_IO_Process_run___lambda__1___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____boxed(lean_object*, lean_object*); static lean_object* l_IO_Process_run___closed__1; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__9; -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__16; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__3; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__24; -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143_(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__39; LEAN_EXPORT lean_object* l_instMonadEIO(lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_System_FilePath_walkDir_go___spec__1___closed__1; LEAN_EXPORT lean_object* l_IO_getTaskState___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__1; LEAN_EXPORT uint8_t l_IO_instMinTaskState(uint8_t, uint8_t); lean_object* lean_io_wait_any(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_withIsolatedStreams___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_tryLock___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__19; -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__9; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__3; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__1; -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__4; LEAN_EXPORT lean_object* l_IO_FS_withFile(lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__2; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__21; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__30; lean_object* lean_uint64_to_nat(uint64_t); LEAN_EXPORT lean_object* l_IO_CancelToken_set(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BaseIO_mapTasks___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_IO_lazyPure___rarg(lean_object*, lean_object*); -LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_FS_ordSystemTime____x40_Init_System_IO___hyg_3026_(lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__11; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__6; LEAN_EXPORT lean_object* l_IO_sleep(uint32_t, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_readToEnd_loop(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_removeDirAll___boxed(lean_object*, lean_object*); +LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2694_(uint8_t, uint8_t); LEAN_EXPORT lean_object* l_IO_Process_getCurrentDir___boxed(lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__1; lean_object* lean_st_ref_get(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_timeit___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_AccessRight_flags___boxed(lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Stream_ofBuffer___elambda__5(lean_object*, size_t, lean_object*); -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__2; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__16; lean_object* lean_st_mk_ref(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Stream_ofBuffer___lambda__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_mk___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__18; +static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__34; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__14; LEAN_EXPORT lean_object* l_IO_FS_Handle_isTty___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_readToEnd_loop___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_print(lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__28; static lean_object* l_instMonadFinallyEIO___closed__1; LEAN_EXPORT lean_object* l_IO_Process_Stdio_noConfusion___rarg(uint8_t, uint8_t, lean_object*); -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__6; LEAN_EXPORT lean_object* l_BaseIO_mapTasks___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_appDir(lean_object*); LEAN_EXPORT lean_object* l_IO_withStderr___at_Lean_runEval___spec__4(lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); lean_object* l_Lean_Syntax_node3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__3; LEAN_EXPORT lean_object* lean_stream_of_handle(lean_object*); static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__13; lean_object* l_EStateM_pure___rarg(lean_object*, lean_object*); lean_object* lean_io_process_spawn(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__23; static lean_object* l_IO_FS_withIsolatedStreams___rarg___lambda__1___closed__3; LEAN_EXPORT lean_object* l_IO_FS_removeDirAll(lean_object*, lean_object*); lean_object* lean_io_map_task(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__30; lean_object* l_System_FilePath_parent(lean_object*); lean_object* l_Int_repr(lean_object*); lean_object* lean_io_mono_nanos_now(lean_object*); lean_object* l_panic___at_String_fromUTF8_x21___spec__1(lean_object*); LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____boxed(lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__18; LEAN_EXPORT uint8_t l_IO_AccessRight_execution___default; lean_object* lean_get_stdin(lean_object*); static uint32_t l_IO_AccessRight_flags___closed__13; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__4; LEAN_EXPORT lean_object* l_IO_FS_instBEqSystemTime; -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__13; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__7; lean_object* lean_io_prim_handle_is_tty(lean_object*, lean_object*); -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__8; lean_object* lean_get_stderr(lean_object*); LEAN_EXPORT lean_object* l_IO_FS_instInhabitedStream___lambda__3(lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__14; LEAN_EXPORT lean_object* l_IO_FS_createDirAll___lambda__1(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__10; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__6; LEAN_EXPORT lean_object* l_BaseIO_mapTasks_go___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_instMinTaskState___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_Process_output(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_Process_exit___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_print___at_IO_println___spec__1(lean_object*, lean_object*); @@ -409,78 +402,74 @@ LEAN_EXPORT lean_object* l_IO_instMaxTaskState___boxed(lean_object*, lean_object LEAN_EXPORT lean_object* l_IO_Process_SpawnArgs_env___default; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_withIsolatedStreams___rarg___lambda__4(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__9; LEAN_EXPORT lean_object* l_IO_FS_withIsolatedStreams___rarg___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_flush___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Stream_ofBuffer(lean_object*); LEAN_EXPORT lean_object* l_IO_print___rarg(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_beqSystemTime____x40_Init_System_IO___hyg_2949____boxed(lean_object*, lean_object*); static lean_object* l_IO_FS_withIsolatedStreams___rarg___closed__1; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__19; LEAN_EXPORT lean_object* l_IO_withStdout(lean_object*, lean_object*); lean_object* lean_io_prim_handle_write(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_node2(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__1; LEAN_EXPORT lean_object* l_IO_Process_Child_wait___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__5; LEAN_EXPORT lean_object* l_instMonadBaseIO; 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*); lean_object* lean_io_prim_handle_mk(lean_object*, uint8_t, lean_object*); -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__12; LEAN_EXPORT lean_object* l_EIO_bindTask___rarg___lambda__1(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__26; static lean_object* l_IO_FS_instReprMetadata___closed__1; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__2; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__3; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__7; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_System_FilePath_walkDir_go___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instEvalIO___rarg(lean_object*, lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_IO_withStdin___rarg___lambda__1(lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__1; lean_object* lean_get_set_stderr(lean_object*, lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__3; -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__7; LEAN_EXPORT lean_object* l_EIO_toBaseIO(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Stream_ofBuffer___elambda__5___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_FS_ordSystemTime____x40_Init_System_IO___hyg_2863_(lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__16; static uint32_t l_IO_AccessRight_flags___closed__6; LEAN_EXPORT lean_object* l_IO_sleep___boxed(lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__18; lean_object* lean_task_get_own(lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__13; static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__17; extern lean_object* l_Std_Format_defWidth; static lean_object* l_Lean_instEvalUnit___rarg___closed__1; lean_object* lean_string_from_utf8(lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__13; LEAN_EXPORT lean_object* l_IO_FS_Stream_ofHandle___elambda__5(lean_object*, size_t, lean_object*); static lean_object* l_instMonadEIO___closed__1; LEAN_EXPORT uint8_t l_IO_Process_StdioConfig_stdin___default; -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__18; LEAN_EXPORT lean_object* l_IO_FS_withIsolatedStreams___at_Lean_runEval___spec__1(lean_object*, uint8_t, lean_object*); -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__12; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__41; LEAN_EXPORT lean_object* l_IO_toEIO___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_setStderr___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_getRandomBytes___boxed(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__12; LEAN_EXPORT uint8_t l_IO_TaskState_ofNat(lean_object*); lean_object* lean_usize_to_nat(size_t); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__7; +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_instReprDirEntry; LEAN_EXPORT lean_object* l_IO_instToStringTaskState; static lean_object* l_IO_instReprTaskState___closed__1; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__2; static lean_object* l_IO_FS_instBEqFileType___closed__1; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__27; lean_object* lean_io_process_set_current_dir(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__13; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__17; lean_object* lean_io_prim_handle_get_line(lean_object*, lean_object*); -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__9; LEAN_EXPORT uint8_t l_IO_AccessRight_write___default; LEAN_EXPORT lean_object* l_IO_TaskState_toString(uint8_t); static lean_object* l_IO_FS_Stream_ofBuffer___closed__1; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__10; LEAN_EXPORT lean_object* l_IO_println___at_Lean_instEvalOfRepr___spec__1(lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__2; static lean_object* l_termPrintln_x21_______closed__12; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__7; LEAN_EXPORT lean_object* l_IO_FS_readFile(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_readBinFile___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_FileType_toCtorIdx___boxed(lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__23; LEAN_EXPORT lean_object* l_Lean_runEval___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_IO_Process_StdioConfig_stderr___default; LEAN_EXPORT lean_object* l_unsafeBaseIO___rarg(lean_object*); @@ -489,55 +478,59 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_IO_FS_removeDirAll___spec LEAN_EXPORT lean_object* l_IO_FS_createDir___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_mapTask(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_EIO_mapTasks(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__28; LEAN_EXPORT lean_object* l_BaseIO_bindTask___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Stream_ofBuffer___lambda__1(lean_object*, lean_object*); static lean_object* l_termPrintln_x21_______closed__5; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__11; LEAN_EXPORT lean_object* l_IO_FS_writeFile___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_IO_Process_SpawnArgs_setsid___default; -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__12; LEAN_EXPORT lean_object* l_IO_TaskState_noConfusion___rarg___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__33; LEAN_EXPORT lean_object* l_System_FilePath_walkDir_go___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__34; static uint32_t l_IO_AccessRight_flags___closed__1; -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__10; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__20; LEAN_EXPORT lean_object* l_EIO_catchExceptions___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_withStdout___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BaseIO_mapTasks_go(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_withFile___rarg(lean_object*, uint8_t, lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__3; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__10; LEAN_EXPORT lean_object* l_BaseIO_toIO(lean_object*); static lean_object* l_IO_Process_run___closed__2; -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_lines___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BaseIO_mapTasks_go___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__4; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__24; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_IO_FS_removeDirAll___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_getEnv___boxed(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__9; LEAN_EXPORT lean_object* l_IO_withStdout___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__19; lean_object* lean_string_length(lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__5; static lean_object* l_termPrintln_x21_______closed__16; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__7; +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_ordSystemTime____x40_Init_System_IO___hyg_2863____boxed(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__43; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__3; static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__2; LEAN_EXPORT lean_object* l_Lean_instEvalIO(lean_object*); LEAN_EXPORT lean_object* l_EIO_bindTask(lean_object*, lean_object*, lean_object*); -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__11; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Stream_ofHandle___elambda__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_Process_SpawnArgs_args___default; +LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_FS_beqSystemTime____x40_Init_System_IO___hyg_2786_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_withIsolatedStreams___rarg(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t); -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710_(uint8_t, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__6; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__6; static lean_object* l_IO_FS_withIsolatedStreams___rarg___closed__2; LEAN_EXPORT lean_object* l_IO_FS_instInhabitedStream___lambda__2___boxed(lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__5; LEAN_EXPORT lean_object* l_IO_TaskState_toString___boxed(lean_object*); LEAN_EXPORT lean_object* l_IO_FS_createDirAll___lambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__12; uint8_t lean_uint32_dec_eq(uint32_t, uint32_t); extern lean_object* l_Task_Priority_dedicated; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__1; static lean_object* l_IO_withStdin___rarg___lambda__3___closed__1; LEAN_EXPORT lean_object* l_IO_setAccessRights___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); @@ -545,10 +538,10 @@ LEAN_EXPORT lean_object* l_IO_FS_Handle_putStr___boxed(lean_object*, lean_object LEAN_EXPORT lean_object* l_IO_bindTask___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_IO_withStdin___rarg___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_EIO_bindTask___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__10; -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__6; LEAN_EXPORT lean_object* l_IO_Process_setCurrentDir___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_EIO_mapTasks___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__10; +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547_(uint8_t, lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__2; LEAN_EXPORT lean_object* l_Lean_instEvalBaseIO___rarg(lean_object*, lean_object*, uint8_t, lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__19; @@ -556,6 +549,8 @@ LEAN_EXPORT lean_object* l_IO_FS_instReprFileType; lean_object* lean_io_app_path(lean_object*); uint32_t l_String_back(lean_object*); LEAN_EXPORT lean_object* l_System_FilePath_isDir___boxed(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__35; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__5; static lean_object* l_instMonadExceptOfEIO___closed__1; LEAN_EXPORT lean_object* l_IO_Process_getPID___boxed(lean_object*); static uint32_t l_IO_AccessRight_flags___closed__10; @@ -564,27 +559,29 @@ LEAN_EXPORT lean_object* l_BaseIO_asTask___boxed(lean_object*, lean_object*, lea lean_object* l_Lean_Syntax_node1(lean_object*, lean_object*, lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__23; LEAN_EXPORT lean_object* l_IO_FS_withIsolatedStreams___rarg___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__29; static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__6; -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__2; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__12; lean_object* lean_io_realpath(lean_object*, lean_object*); lean_object* lean_io_get_task_state(lean_object*, lean_object*); lean_object* lean_string_to_utf8(lean_object*); -LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2857_(uint8_t, uint8_t); lean_object* lean_io_exit(uint8_t, lean_object*); static lean_object* l_termPrintln_x21_______closed__10; uint8_t l_instDecidableRelLe___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_Prim_setAccessRights___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_unsafeIO(lean_object*); +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980_(lean_object*, lean_object*); static lean_object* l_termPrintln_x21_______closed__2; lean_object* l_Repr_addAppParen(lean_object*, lean_object*); uint32_t lean_uint32_lor(uint32_t, uint32_t); static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__15; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__21; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__22; uint32_t lean_uint32_shift_left(uint32_t, uint32_t); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__5; static lean_object* l_IO_FS_instInhabitedStream___lambda__1___closed__2; lean_object* lean_chmod(lean_object*, uint32_t, lean_object*); -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__7; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__10; uint8_t lean_int_dec_lt(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_instBEqFileType; LEAN_EXPORT uint8_t l_IO_instMaxTaskState(uint8_t, uint8_t); @@ -596,9 +593,9 @@ static lean_object* l_IO_FS_instInhabitedStream___lambda__1___closed__3; LEAN_EXPORT lean_object* l_IO_currentDir___boxed(lean_object*); static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__18; uint32_t lean_uint32_of_nat(lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__23; LEAN_EXPORT lean_object* l_IO_Process_Stdio_toCtorIdx___boxed(lean_object*); lean_object* lean_io_bind_task(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__14; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_System_FilePath_walkDir_go___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_get_set_stdin(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_lazyPure(lean_object*); @@ -612,15 +609,14 @@ LEAN_EXPORT lean_object* l_IO_withStdin___rarg___lambda__2___boxed(lean_object*) LEAN_EXPORT lean_object* l_IO_Process_Child_takeStdin___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_setStdout___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BaseIO_toIO___rarg(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892_(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____boxed(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__42; static lean_object* l_IO_TaskState_toString___closed__2; -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__14; LEAN_EXPORT lean_object* l_IO_FileRight_user___default; LEAN_EXPORT lean_object* l_instMonadLiftBaseIOEIO___rarg(lean_object*, lean_object*); lean_object* l_EStateM_instMonadFinally(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_instLESystemTime; LEAN_EXPORT lean_object* l_BaseIO_mapTasks_go___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__1; lean_object* lean_io_initializing(lean_object*); lean_object* l_List_reverse___rarg(lean_object*); static uint32_t l_IO_AccessRight_flags___closed__3; @@ -633,21 +629,18 @@ LEAN_EXPORT lean_object* l_IO_monoNanosNow___boxed(lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_unlock___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_EIO_mapTask___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_readBinToEnd_loop___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__25; uint8_t lean_byte_array_get(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_unsafeEIO___rarg(lean_object*); -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__17; -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__8; size_t lean_usize_add(size_t, size_t); lean_object* lean_io_current_dir(lean_object*); LEAN_EXPORT lean_object* l_IO_getStderr___boxed(lean_object*); uint8_t lean_uint32_dec_lt(uint32_t, uint32_t); -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__8; static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__9; static lean_object* l_IO_FS_instReprDirEntry___closed__1; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__6; -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__11; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__15; lean_object* lean_array_uget(lean_object*, size_t); -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__10; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__7; LEAN_EXPORT lean_object* l_IO_FileRight_group___default; LEAN_EXPORT lean_object* l_IO_FS_FileType_noConfusion___rarg(uint8_t, uint8_t, lean_object*); static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__11; @@ -655,10 +648,8 @@ LEAN_EXPORT lean_object* l_IO_FS_instReprMetadata; LEAN_EXPORT lean_object* l_IO_FS_Stream_ofHandle___elambda__3(lean_object*, lean_object*); lean_object* lean_io_error_to_string(lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__13; LEAN_EXPORT lean_object* l_IO_mapTask___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); static lean_object* l_IO_FS_instOrdSystemTime___closed__1; -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__4; lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__15; LEAN_EXPORT lean_object* l_IO_FS_Handle_readToEnd(lean_object*, lean_object*); @@ -666,11 +657,12 @@ static lean_object* l_IO_appDir___closed__2; uint8_t lean_int_dec_eq(lean_object*, lean_object*); static lean_object* l_IO_FS_instInhabitedStream___closed__5; LEAN_EXPORT lean_object* l_IO_FS_Stream_putStrLn(lean_object*, lean_object*, lean_object*); -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__15; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__17; LEAN_EXPORT lean_object* l_IO_addHeartbeats___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_writeFile(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_initializing___boxed(lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Stream_ofBuffer___elambda__4(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__3; LEAN_EXPORT lean_object* l_IO_FS_realPath___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_lines_read(lean_object*, lean_object*, lean_object*); lean_object* l_EStateM_instMonadExceptOfOfBacktrackable___rarg(lean_object*); @@ -682,13 +674,13 @@ static lean_object* l_instMonadExceptOfEIO___closed__2; LEAN_EXPORT lean_object* l_IO_setStdin___boxed(lean_object*, lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Mode_toCtorIdx(uint8_t); -static lean_object* l___auto____x40_Init_System_IO___hyg_1808____closed__5; LEAN_EXPORT lean_object* l_IO_asTask___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_eprintln(lean_object*); lean_object* lean_io_wait(lean_object*, lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__1; lean_object* lean_array_get_size(lean_object*); LEAN_EXPORT lean_object* l_IO_FS_writeBinFile___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__4; LEAN_EXPORT lean_object* l_IO_eprint___at_IO_eprintln___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_asTask(lean_object*); LEAN_EXPORT lean_object* l_BaseIO_toEIO___rarg(lean_object*, lean_object*); @@ -699,33 +691,35 @@ LEAN_EXPORT lean_object* l_IO_withStdin___rarg(lean_object*, lean_object*, lean_ static lean_object* l_IO_FS_instReprSystemTime___closed__1; uint8_t lean_usize_dec_lt(size_t, size_t); static uint32_t l_IO_AccessRight_flags___closed__7; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__12; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__5; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__24; LEAN_EXPORT lean_object* l_Lean_instEvalIO___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__7; LEAN_EXPORT lean_object* l_IO_sleep___lambda__1___boxed(lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__6; lean_object* lean_nat_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_instMonadLiftBaseIOEIO(lean_object*, lean_object*); lean_object* lean_io_get_random_bytes(size_t, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__10; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__15; lean_object* lean_io_process_get_pid(lean_object*); LEAN_EXPORT lean_object* l_IO_FS_readBinFile(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instEvalOfRepr___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_EIO_asTask___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_termPrintln_x21_______closed__6; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__5; LEAN_EXPORT lean_object* l_IO_FS_withIsolatedStreams___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__8; +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__14; LEAN_EXPORT lean_object* l_IO_FS_Handle_rewind___boxed(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__15; LEAN_EXPORT lean_object* l_IO_bindTask(lean_object*, lean_object*); -static lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__15; LEAN_EXPORT lean_object* l_IO_FS_Stream_ofHandle___elambda__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instEvalBaseIO(lean_object*); LEAN_EXPORT lean_object* l_IO_withStdin___at_Lean_runEval___spec__3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_instMonadLiftSTRealWorldBaseIO___rarg(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_IO_Process_StdioConfig_stdout___default; -LEAN_EXPORT lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__20; extern uint8_t l_System_Platform_isWindows; lean_object* lean_byte_array_size(lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__31; uint8_t lean_uint8_dec_eq(uint8_t, uint8_t); LEAN_EXPORT lean_object* l_Lean_instEvalBaseIO___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_IO_AccessRight_read___default; @@ -735,12 +729,14 @@ lean_object* l_String_toSubstring_x27(lean_object*); LEAN_EXPORT lean_object* l_IO_Process_run(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_setAccessRights(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_withIsolatedStreams(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_System_IO___hyg_1645____closed__3; static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__9; lean_object* lean_io_process_child_kill(lean_object*, lean_object*, lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__10; LEAN_EXPORT lean_object* l_IO_Process_Child_kill___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_io_prim_handle_rewind(lean_object*, lean_object*); static lean_object* l_IO_FS_Stream_ofBuffer___closed__2; +static lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__5; lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); static lean_object* l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__18; LEAN_EXPORT lean_object* l_EIO_mapTask___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -751,23 +747,19 @@ static uint32_t l_IO_AccessRight_flags___closed__9; LEAN_EXPORT lean_object* lean_io_eprint(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_Process_Stdio_noConfusion___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Mode_noConfusion(lean_object*); +static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__15; static lean_object* l_IO_TaskState_toString___closed__1; LEAN_EXPORT lean_object* l_IO_FS_withFile___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Stream_ofBuffer___elambda__1(lean_object*); -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__3; +LEAN_EXPORT lean_object* l___auto____x40_Init_System_IO___hyg_1645_; lean_object* lean_io_create_dir(lean_object*, lean_object*); -static lean_object* l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__11; LEAN_EXPORT lean_object* l_IO_FS_Handle_putStrLn___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_EIO_catchExceptions(lean_object*, lean_object*); lean_object* lean_io_process_get_current_dir(lean_object*); LEAN_EXPORT lean_object* l_IO_FS_instLTSystemTime; static lean_object* l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__12; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__8; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__11; LEAN_EXPORT lean_object* l_Lean_instEvalOfRepr___rarg(lean_object*, lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_IO_FS_Handle_read___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__20; -static lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__21; static lean_object* _init_l_instMonadEIO___closed__1() { _start: { @@ -2903,221 +2895,140 @@ x_4 = lean_io_wait(x_2, x_3); return x_4; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__1() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("IO", 2); +x_1 = lean_mk_string_from_bytes("Lean", 4); return x_1; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__2() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__2() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Parser", 6); +return x_1; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__3() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__3() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("tacticNonempty_list", 19); +x_1 = lean_mk_string_from_bytes("Tactic", 6); return x_1; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__4() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__4() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__2; -x_2 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__3; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("tacticSeq", 9); +return x_1; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__5() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__5() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("_@", 2); -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___auto____x40_Init_System_IO___hyg_1645____closed__1; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__2; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__3; +x_4 = l___auto____x40_Init_System_IO___hyg_1645____closed__4; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__6() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__6() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__4; -x_2 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__5; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; +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_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__7() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__7() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Init", 4); +x_1 = lean_mk_string_from_bytes("tacticSeq1Indented", 18); return x_1; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__8() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__8() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__6; -x_2 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__7; -x_3 = l_Lean_Name_str___override(x_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; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__1; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__2; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__3; +x_4 = l___auto____x40_Init_System_IO___hyg_1645____closed__7; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__9() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__9() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("System", 6); +x_1 = lean_mk_string_from_bytes("null", 4); return x_1; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__10() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__8; -x_2 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__9; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__11() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__10; -x_2 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__1; +x_1 = lean_box(0); +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__9; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__12() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__11() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("_hyg", 4); +x_1 = lean_mk_string_from_bytes("exact", 5); return x_1; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__13() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__12() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__11; -x_2 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__12; -x_3 = l_Lean_Name_str___override(x_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; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__1; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__2; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__3; +x_4 = l___auto____x40_Init_System_IO___hyg_1645____closed__11; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__14() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__13; -x_2 = lean_unsigned_to_nat(1632u); -x_3 = l_Lean_Name_num___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__15() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("nonempty_list", 13); -return x_1; -} -} -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__16() { -_start: -{ -lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__15; -x_2 = 0; -x_3 = lean_alloc_ctor(6, 1, 1); +x_1 = lean_box(2); +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__11; +x_3 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_3, 0, x_1); -lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); +lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__17() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__14; -x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__16; -x_4 = lean_alloc_ctor(3, 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_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632_() { -_start: -{ -lean_object* x_1; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__17; -return x_1; -} -} -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__1() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__14() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Lean", 4); -return x_1; -} -} -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Parser", 6); -return x_1; -} -} -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Tactic", 6); -return x_1; -} -} -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__4() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("exact", 5); -return x_1; -} -} -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___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_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__1; -x_2 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__2; -x_3 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__3; -x_4 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__4; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__6; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__13; +x_3 = lean_array_push(x_1, x_2); +return x_3; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__6() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__15() { _start: { lean_object* x_1; @@ -3125,7 +3036,7 @@ x_1 = lean_mk_string_from_bytes("Term", 4); return x_1; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__7() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__16() { _start: { lean_object* x_1; @@ -3133,19 +3044,19 @@ x_1 = lean_mk_string_from_bytes("app", 3); return x_1; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__8() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____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_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__1; -x_2 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__2; -x_3 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__6; -x_4 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__7; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__1; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__2; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__15; +x_4 = l___auto____x40_Init_System_IO___hyg_1645____closed__16; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__9() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__18() { _start: { lean_object* x_1; @@ -3153,16 +3064,30 @@ x_1 = lean_mk_string_from_bytes("Nat.zero_lt_succ", 16); return x_1; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__10() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__19() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__9; -x_2 = l_String_toSubstring_x27(x_1); +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__18; +x_2 = lean_string_utf8_byte_size(x_1); return x_2; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__11() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__20() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__18; +x_2 = lean_unsigned_to_nat(0u); +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__19; +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___auto____x40_Init_System_IO___hyg_1645____closed__21() { _start: { lean_object* x_1; @@ -3170,7 +3095,7 @@ x_1 = lean_mk_string_from_bytes("Nat", 3); return x_1; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__12() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__22() { _start: { lean_object* x_1; @@ -3178,59 +3103,43 @@ x_1 = lean_mk_string_from_bytes("zero_lt_succ", 12); return x_1; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__13() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__23() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__11; -x_2 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__12; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__21; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__22; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__14() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__24() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___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_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__15() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = lean_box(0); -x_2 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___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); -return x_3; -} -} -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__16() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("null", 4); -return x_1; +x_2 = lean_box(2); +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__20; +x_4 = l___auto____x40_Init_System_IO___hyg_1645____closed__23; +x_5 = lean_alloc_ctor(3, 4, 0); +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_1); +return x_5; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__17() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__25() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__16; -x_3 = l_Lean_Name_str___override(x_1, x_2); +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__6; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__24; +x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__18() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__26() { _start: { lean_object* x_1; @@ -3238,19 +3147,19 @@ x_1 = lean_mk_string_from_bytes("hole", 4); return x_1; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__19() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__27() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__1; -x_2 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__2; -x_3 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__6; -x_4 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__18; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__1; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__2; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__15; +x_4 = l___auto____x40_Init_System_IO___hyg_1645____closed__26; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__20() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__28() { _start: { lean_object* x_1; @@ -3258,150 +3167,107 @@ x_1 = lean_mk_string_from_bytes("_", 1); return x_1; } } -LEAN_EXPORT lean_object* l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__29() { _start: { -lean_object* x_4; uint8_t x_5; -x_4 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__14; -x_5 = l_Lean_Syntax_isOfKind(x_1, x_4); -if (x_5 == 0) -{ -lean_object* x_6; lean_object* x_7; -lean_dec(x_2); -x_6 = lean_box(1); -x_7 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_7, 0, x_6); -lean_ctor_set(x_7, 1, x_3); -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; -x_8 = lean_ctor_get(x_2, 5); -lean_inc(x_8); -x_9 = 0; -x_10 = l_Lean_SourceInfo_fromRef(x_8, x_9); -x_11 = lean_ctor_get(x_2, 2); -lean_inc(x_11); -x_12 = lean_ctor_get(x_2, 1); -lean_inc(x_12); -lean_dec(x_2); -x_13 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__4; -lean_inc(x_10); -x_14 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_14, 0, x_10); -lean_ctor_set(x_14, 1, x_13); -x_15 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__13; -x_16 = l_Lean_addMacroScope(x_12, x_15, x_11); -x_17 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__10; -x_18 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__15; -lean_inc(x_10); -x_19 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_19, 0, x_10); -lean_ctor_set(x_19, 1, x_17); -lean_ctor_set(x_19, 2, x_16); -lean_ctor_set(x_19, 3, x_18); -x_20 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__20; -lean_inc(x_10); -x_21 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_21, 0, x_10); -lean_ctor_set(x_21, 1, x_20); -x_22 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__19; -lean_inc(x_10); -x_23 = l_Lean_Syntax_node1(x_10, x_22, x_21); -x_24 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__17; -lean_inc(x_10); -x_25 = l_Lean_Syntax_node1(x_10, x_24, x_23); -x_26 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__8; -lean_inc(x_10); -x_27 = l_Lean_Syntax_node2(x_10, x_26, x_19, x_25); -x_28 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__5; -x_29 = l_Lean_Syntax_node2(x_10, x_28, x_14, x_27); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_29); -lean_ctor_set(x_30, 1, x_3); -return x_30; -} +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(2); +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__28; +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_System_IO___hyg_1808____closed__1() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__30() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("tacticSeq", 9); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__6; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__29; +x_3 = lean_array_push(x_1, x_2); +return x_3; } } -static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1808____closed__2() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__31() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__1; -x_2 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__2; -x_3 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__3; -x_4 = l___auto____x40_Init_System_IO___hyg_1808____closed__1; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; +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_System_IO___hyg_1645____closed__27; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____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); +lean_ctor_set(x_4, 2, x_3); +return x_4; } } -static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1808____closed__3() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__32() { _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_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__6; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__31; +x_3 = lean_array_push(x_1, x_2); +return x_3; } } -static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1808____closed__4() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__33() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("tacticSeq1Indented", 18); -return x_1; +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_System_IO___hyg_1645____closed__10; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__32; +x_4 = lean_alloc_ctor(1, 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___auto____x40_Init_System_IO___hyg_1808____closed__5() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__34() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__1; -x_2 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__2; -x_3 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__3; -x_4 = l___auto____x40_Init_System_IO___hyg_1808____closed__4; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__25; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__33; +x_3 = lean_array_push(x_1, x_2); +return x_3; } } -static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1808____closed__6() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__35() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__15; -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; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__17; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__34; +x_4 = lean_alloc_ctor(1, 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___auto____x40_Init_System_IO___hyg_1808____closed__7() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__36() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_System_IO___hyg_1808____closed__3; -x_2 = l___auto____x40_Init_System_IO___hyg_1808____closed__6; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__14; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__35; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1808____closed__8() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__37() { _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_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__14; -x_3 = l___auto____x40_Init_System_IO___hyg_1808____closed__7; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__12; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__36; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -3409,23 +3275,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1808____closed__9() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__38() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_System_IO___hyg_1808____closed__3; -x_2 = l___auto____x40_Init_System_IO___hyg_1808____closed__8; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__6; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__37; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1808____closed__10() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__39() { _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_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__17; -x_3 = l___auto____x40_Init_System_IO___hyg_1808____closed__9; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__10; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__38; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -3433,23 +3299,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1808____closed__11() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__40() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_System_IO___hyg_1808____closed__3; -x_2 = l___auto____x40_Init_System_IO___hyg_1808____closed__10; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__6; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__39; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1808____closed__12() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__41() { _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_System_IO___hyg_1808____closed__5; -x_3 = l___auto____x40_Init_System_IO___hyg_1808____closed__11; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__8; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__40; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -3457,23 +3323,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1808____closed__13() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__42() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_System_IO___hyg_1808____closed__3; -x_2 = l___auto____x40_Init_System_IO___hyg_1808____closed__12; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__6; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__41; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1808____closed__14() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645____closed__43() { _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_System_IO___hyg_1808____closed__2; -x_3 = l___auto____x40_Init_System_IO___hyg_1808____closed__13; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__5; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__42; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -3481,11 +3347,11 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1808_() { +static lean_object* _init_l___auto____x40_Init_System_IO___hyg_1645_() { _start: { lean_object* x_1; -x_1 = l___auto____x40_Init_System_IO___hyg_1808____closed__14; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__43; return x_1; } } @@ -4676,7 +4542,7 @@ lean_inc(x_5); x_6 = lean_ctor_get(x_4, 1); lean_inc(x_6); lean_dec(x_4); -x_7 = l___auto____x40_Init_System_IO___hyg_1808____closed__3; +x_7 = l___auto____x40_Init_System_IO___hyg_1645____closed__6; x_8 = l_IO_FS_lines_read(x_5, x_7, x_6); lean_dec(x_5); return x_8; @@ -4831,7 +4697,7 @@ x_7 = lean_apply_2(x_4, x_6, x_3); return x_7; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__1() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__1() { _start: { lean_object* x_1; @@ -4839,29 +4705,29 @@ x_1 = lean_mk_string_from_bytes("root", 4); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__2() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__1; +x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__3() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__2; +x_2 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__4() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__4() { _start: { lean_object* x_1; @@ -4869,29 +4735,29 @@ x_1 = lean_mk_string_from_bytes(" := ", 4); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__5() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__5() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__4; +x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__6() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__3; -x_2 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__5; +x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__3; +x_2 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__7() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__7() { _start: { lean_object* x_1; lean_object* x_2; @@ -4900,7 +4766,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__8() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__8() { _start: { lean_object* x_1; @@ -4908,17 +4774,17 @@ x_1 = lean_mk_string_from_bytes("FilePath.mk ", 12); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__9() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__9() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__8; +x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__10() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__10() { _start: { lean_object* x_1; @@ -4926,17 +4792,17 @@ x_1 = lean_mk_string_from_bytes(",", 1); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__11() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__11() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__10; +x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__12() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__12() { _start: { lean_object* x_1; @@ -4944,17 +4810,17 @@ x_1 = lean_mk_string_from_bytes("fileName", 8); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__13() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__13() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__12; +x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__14() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__14() { _start: { lean_object* x_1; lean_object* x_2; @@ -4963,7 +4829,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__15() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__15() { _start: { lean_object* x_1; @@ -4971,35 +4837,35 @@ x_1 = lean_mk_string_from_bytes("{ ", 2); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__16() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__16() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__15; +x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__15; x_2 = lean_string_length(x_1); return x_2; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__17() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__17() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__16; +x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__16; x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__18() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__18() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__15; +x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__19() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__19() { _start: { lean_object* x_1; @@ -5007,17 +4873,17 @@ x_1 = lean_mk_string_from_bytes(" }", 2); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__20() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__20() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__19; +x_1 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__19; 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_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637_(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474_(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; 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; @@ -5025,13 +4891,13 @@ x_3 = lean_ctor_get(x_1, 0); x_4 = l_String_quote(x_3); x_5 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_5, 0, x_4); -x_6 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__9; +x_6 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__9; x_7 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_7, 0, x_6); lean_ctor_set(x_7, 1, x_5); x_8 = lean_unsigned_to_nat(0u); x_9 = l_Repr_addAppParen(x_7, x_8); -x_10 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__7; +x_10 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__7; x_11 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_9); @@ -5039,11 +4905,11 @@ x_12 = 0; x_13 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_13, 0, x_11); lean_ctor_set_uint8(x_13, sizeof(void*)*1, x_12); -x_14 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__6; +x_14 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__6; x_15 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_15, 0, x_14); lean_ctor_set(x_15, 1, x_13); -x_16 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__11; +x_16 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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); @@ -5051,11 +4917,11 @@ x_18 = lean_box(1); 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___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__13; +x_20 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__13; x_21 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_21, 0, x_19); lean_ctor_set(x_21, 1, x_20); -x_22 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__5; +x_22 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__5; x_23 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_23, 0, x_21); lean_ctor_set(x_23, 1, x_22); @@ -5063,7 +4929,7 @@ x_24 = lean_ctor_get(x_1, 1); x_25 = l_String_quote(x_24); x_26 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_26, 0, x_25); -x_27 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__14; +x_27 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__14; x_28 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_28, 0, x_27); lean_ctor_set(x_28, 1, x_26); @@ -5073,15 +4939,15 @@ lean_ctor_set_uint8(x_29, sizeof(void*)*1, x_12); x_30 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_30, 0, x_23); lean_ctor_set(x_30, 1, x_29); -x_31 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__18; +x_31 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__18; x_32 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_32, 0, x_31); lean_ctor_set(x_32, 1, x_30); -x_33 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__20; +x_33 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__20; x_34 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_34, 0, x_32); lean_ctor_set(x_34, 1, x_33); -x_35 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__17; +x_35 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__17; x_36 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_36, 0, x_35); lean_ctor_set(x_36, 1, x_34); @@ -5091,11 +4957,11 @@ lean_ctor_set_uint8(x_37, sizeof(void*)*1, x_12); return x_37; } } -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637_(x_1, x_2); +x_3 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474_(x_1, x_2); lean_dec(x_2); lean_dec(x_1); return x_3; @@ -5105,7 +4971,7 @@ static lean_object* _init_l_IO_FS_instReprDirEntry___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____boxed), 2, 0); return x_1; } } @@ -5199,7 +5065,7 @@ x_6 = l_IO_FS_FileType_noConfusion___rarg(x_4, x_5, x_3); return x_6; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__1() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__1() { _start: { lean_object* x_1; @@ -5207,33 +5073,33 @@ x_1 = lean_mk_string_from_bytes("IO.FS.FileType.dir", 18); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__2() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__1; +x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__3() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__3; -x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__2; +x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__4() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__4() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__3; +x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__3; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -5241,23 +5107,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__5() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__6; -x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__2; +x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__6() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__6() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__5; +x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__5; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -5265,7 +5131,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__7() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__7() { _start: { lean_object* x_1; @@ -5273,33 +5139,33 @@ x_1 = lean_mk_string_from_bytes("IO.FS.FileType.file", 19); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__8() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__8() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__7; +x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__9() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__3; -x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__8; +x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__10() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__10() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__9; +x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__9; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -5307,23 +5173,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__11() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__6; -x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__8; +x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__12() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__12() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__11; +x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__11; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -5331,7 +5197,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__13() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__13() { _start: { lean_object* x_1; @@ -5339,33 +5205,33 @@ x_1 = lean_mk_string_from_bytes("IO.FS.FileType.symlink", 22); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__14() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__14() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__13; +x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__15() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__3; -x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__14; +x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__16() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__16() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__15; +x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__15; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -5373,23 +5239,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__17() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__6; -x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__14; +x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__18() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__18() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__17; +x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__17; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -5397,7 +5263,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__19() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__19() { _start: { lean_object* x_1; @@ -5405,33 +5271,33 @@ x_1 = lean_mk_string_from_bytes("IO.FS.FileType.other", 20); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__20() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__20() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__19; +x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__21() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__3; -x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__20; +x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__22() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__22() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__21; +x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__21; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -5439,23 +5305,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__23() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__23() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Init_System_IO_0__IO_reprTaskState____x40_Init_System_IO___hyg_1185____closed__6; -x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__20; +x_2 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__24() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__24() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__23; +x_1 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__23; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -5463,7 +5329,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710_(uint8_t x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547_(uint8_t x_1, lean_object* x_2) { _start: { switch (x_1) { @@ -5475,14 +5341,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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__4; +x_5 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__6; +x_7 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__6; x_8 = l_Repr_addAppParen(x_7, x_2); return x_8; } @@ -5495,14 +5361,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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__10; +x_11 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__12; +x_13 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__12; x_14 = l_Repr_addAppParen(x_13, x_2); return x_14; } @@ -5515,14 +5381,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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__16; +x_17 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__18; +x_19 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__18; x_20 = l_Repr_addAppParen(x_19, x_2); return x_20; } @@ -5535,14 +5401,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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__22; +x_23 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__24; +x_25 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__24; x_26 = l_Repr_addAppParen(x_25, x_2); return x_26; } @@ -5550,13 +5416,13 @@ return x_26; } } } -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____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_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710_(x_3, x_2); +x_4 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547_(x_3, x_2); lean_dec(x_2); return x_4; } @@ -5565,7 +5431,7 @@ static lean_object* _init_l_IO_FS_instReprFileType___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____boxed), 2, 0); return x_1; } } @@ -5577,7 +5443,7 @@ x_1 = l_IO_FS_instReprFileType___closed__1; return x_1; } } -LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2857_(uint8_t x_1, uint8_t x_2) { +LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2694_(uint8_t x_1, uint8_t x_2) { _start: { lean_object* x_3; lean_object* x_4; uint8_t x_5; @@ -5589,7 +5455,7 @@ lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2857____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2694____boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; uint8_t x_4; uint8_t x_5; lean_object* x_6; @@ -5597,7 +5463,7 @@ x_3 = lean_unbox(x_1); lean_dec(x_1); x_4 = lean_unbox(x_2); lean_dec(x_2); -x_5 = l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2857_(x_3, x_4); +x_5 = l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2694_(x_3, x_4); x_6 = lean_box(x_5); return x_6; } @@ -5606,7 +5472,7 @@ static lean_object* _init_l_IO_FS_instBEqFileType___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2857____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2694____boxed), 2, 0); return x_1; } } @@ -5618,7 +5484,7 @@ x_1 = l_IO_FS_instBEqFileType___closed__1; return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__1() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__1() { _start: { lean_object* x_1; @@ -5626,41 +5492,41 @@ x_1 = lean_mk_string_from_bytes("sec", 3); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__2() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__1; +x_1 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____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_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__3() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____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_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__2; +x_2 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____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_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__4() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__3; -x_2 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__5; +x_1 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__3; +x_2 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__5() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__5() { _start: { lean_object* x_1; lean_object* x_2; @@ -5669,7 +5535,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__6() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__6() { _start: { lean_object* x_1; @@ -5677,17 +5543,17 @@ x_1 = lean_mk_string_from_bytes("nsec", 4); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__7() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__7() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__6; +x_1 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__6; 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_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892_(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729_(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; uint32_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; lean_object* x_33; lean_object* x_34; @@ -5695,7 +5561,7 @@ x_3 = lean_ctor_get(x_1, 0); x_4 = l_Int_repr(x_3); x_5 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_5, 0, x_4); -x_6 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__5; +x_6 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____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); @@ -5703,11 +5569,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_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__4; +x_10 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____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___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__11; +x_12 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__11; x_13 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_13, 0, x_11); lean_ctor_set(x_13, 1, x_12); @@ -5715,11 +5581,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_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__7; +x_16 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____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_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__5; +x_18 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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); @@ -5728,7 +5594,7 @@ x_21 = lean_uint32_to_nat(x_20); 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_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__7; +x_24 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__7; x_25 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_25, 0, x_24); lean_ctor_set(x_25, 1, x_23); @@ -5738,15 +5604,15 @@ lean_ctor_set_uint8(x_26, sizeof(void*)*1, x_8); x_27 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_27, 0, x_19); lean_ctor_set(x_27, 1, x_26); -x_28 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__18; +x_28 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__18; 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___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__20; +x_30 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__20; 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_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__17; +x_32 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__17; x_33 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_33, 0, x_32); lean_ctor_set(x_33, 1, x_31); @@ -5756,11 +5622,11 @@ lean_ctor_set_uint8(x_34, sizeof(void*)*1, x_8); return x_34; } } -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892_(x_1, x_2); +x_3 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729_(x_1, x_2); lean_dec(x_2); lean_dec(x_1); return x_3; @@ -5770,7 +5636,7 @@ static lean_object* _init_l_IO_FS_instReprSystemTime___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____boxed), 2, 0); return x_1; } } @@ -5782,7 +5648,7 @@ x_1 = l_IO_FS_instReprSystemTime___closed__1; return x_1; } } -LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_FS_beqSystemTime____x40_Init_System_IO___hyg_2949_(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_FS_beqSystemTime____x40_Init_System_IO___hyg_2786_(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; uint32_t x_4; lean_object* x_5; uint32_t x_6; uint8_t x_7; @@ -5805,11 +5671,11 @@ return x_9; } } } -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_beqSystemTime____x40_Init_System_IO___hyg_2949____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_beqSystemTime____x40_Init_System_IO___hyg_2786____boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; -x_3 = l___private_Init_System_IO_0__IO_FS_beqSystemTime____x40_Init_System_IO___hyg_2949_(x_1, x_2); +x_3 = l___private_Init_System_IO_0__IO_FS_beqSystemTime____x40_Init_System_IO___hyg_2786_(x_1, x_2); lean_dec(x_2); lean_dec(x_1); x_4 = lean_box(x_3); @@ -5820,7 +5686,7 @@ static lean_object* _init_l_IO_FS_instBEqSystemTime___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_beqSystemTime____x40_Init_System_IO___hyg_2949____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_beqSystemTime____x40_Init_System_IO___hyg_2786____boxed), 2, 0); return x_1; } } @@ -5832,7 +5698,7 @@ x_1 = l_IO_FS_instBEqSystemTime___closed__1; return x_1; } } -LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_FS_ordSystemTime____x40_Init_System_IO___hyg_3026_(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT uint8_t l___private_Init_System_IO_0__IO_FS_ordSystemTime____x40_Init_System_IO___hyg_2863_(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; uint32_t x_4; lean_object* x_5; uint32_t x_6; uint8_t x_7; @@ -5887,11 +5753,11 @@ return x_15; } } } -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_ordSystemTime____x40_Init_System_IO___hyg_3026____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_ordSystemTime____x40_Init_System_IO___hyg_2863____boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; -x_3 = l___private_Init_System_IO_0__IO_FS_ordSystemTime____x40_Init_System_IO___hyg_3026_(x_1, x_2); +x_3 = l___private_Init_System_IO_0__IO_FS_ordSystemTime____x40_Init_System_IO___hyg_2863_(x_1, x_2); lean_dec(x_2); lean_dec(x_1); x_4 = lean_box(x_3); @@ -5902,7 +5768,7 @@ static lean_object* _init_l_IO_FS_instOrdSystemTime___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_ordSystemTime____x40_Init_System_IO___hyg_3026____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_ordSystemTime____x40_Init_System_IO___hyg_2863____boxed), 2, 0); return x_1; } } @@ -5959,7 +5825,7 @@ x_1 = lean_box(0); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__1() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__1() { _start: { lean_object* x_1; @@ -5967,41 +5833,41 @@ x_1 = lean_mk_string_from_bytes("accessed", 8); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__2() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__1; +x_1 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____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_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__3() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____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_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__2; +x_2 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____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_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__4() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__3; -x_2 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__5; +x_1 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__3; +x_2 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__5() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__5() { _start: { lean_object* x_1; @@ -6009,17 +5875,17 @@ x_1 = lean_mk_string_from_bytes("modified", 8); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__6() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__6() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__5; +x_1 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____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_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__7() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__7() { _start: { lean_object* x_1; @@ -6027,17 +5893,17 @@ x_1 = lean_mk_string_from_bytes("byteSize", 8); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__8() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__8() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__7; +x_1 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____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_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__9() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__9() { _start: { lean_object* x_1; @@ -6045,24 +5911,24 @@ x_1 = lean_mk_string_from_bytes("type", 4); return x_1; } } -static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__10() { +static lean_object* _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__10() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__9; +x_1 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__9; 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_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143_(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980_(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; uint64_t 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; 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; lean_object* x_54; x_3 = lean_ctor_get(x_1, 0); x_4 = lean_unsigned_to_nat(0u); -x_5 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892_(x_3, x_4); -x_6 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__14; +x_5 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729_(x_3, x_4); +x_6 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__14; x_7 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_7, 0, x_6); lean_ctor_set(x_7, 1, x_5); @@ -6070,11 +5936,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_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__4; +x_10 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____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___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__11; +x_12 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__11; x_13 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_13, 0, x_11); lean_ctor_set(x_13, 1, x_12); @@ -6082,16 +5948,16 @@ 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_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__6; +x_16 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__6; 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_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__5; +x_18 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____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); x_20 = lean_ctor_get(x_1, 1); -x_21 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892_(x_20, x_4); +x_21 = l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729_(x_20, x_4); x_22 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_22, 0, x_6); lean_ctor_set(x_22, 1, x_21); @@ -6107,7 +5973,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_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__8; +x_27 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__8; x_28 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_28, 0, x_26); lean_ctor_set(x_28, 1, x_27); @@ -6134,7 +6000,7 @@ lean_ctor_set(x_37, 1, x_12); x_38 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_38, 0, x_37); lean_ctor_set(x_38, 1, x_14); -x_39 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__10; +x_39 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__10; x_40 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_40, 0, x_38); lean_ctor_set(x_40, 1, x_39); @@ -6142,8 +6008,8 @@ x_41 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_41, 0, x_40); lean_ctor_set(x_41, 1, x_18); x_42 = lean_ctor_get_uint8(x_1, sizeof(void*)*2 + 8); -x_43 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710_(x_42, x_4); -x_44 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__7; +x_43 = l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547_(x_42, x_4); +x_44 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__7; x_45 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_45, 0, x_44); lean_ctor_set(x_45, 1, x_43); @@ -6153,15 +6019,15 @@ lean_ctor_set_uint8(x_46, sizeof(void*)*1, x_8); x_47 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_47, 0, x_41); lean_ctor_set(x_47, 1, x_46); -x_48 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__18; +x_48 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__18; x_49 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_49, 0, x_48); lean_ctor_set(x_49, 1, x_47); -x_50 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__20; +x_50 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__20; x_51 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_51, 0, x_49); lean_ctor_set(x_51, 1, x_50); -x_52 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__17; +x_52 = l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__17; x_53 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_53, 0, x_52); lean_ctor_set(x_53, 1, x_51); @@ -6171,11 +6037,11 @@ lean_ctor_set_uint8(x_54, sizeof(void*)*1, x_8); return x_54; } } -LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143_(x_1, x_2); +x_3 = l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980_(x_1, x_2); lean_dec(x_2); lean_dec(x_1); return x_3; @@ -6185,7 +6051,7 @@ static lean_object* _init_l_IO_FS_instReprMetadata___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____boxed), 2, 0); return x_1; } } @@ -6231,7 +6097,7 @@ x_5 = lean_ctor_get(x_3, 0); x_6 = lean_ctor_get_uint8(x_5, sizeof(void*)*2 + 8); lean_dec(x_5); x_7 = 0; -x_8 = l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2857_(x_6, x_7); +x_8 = l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2694_(x_6, x_7); x_9 = lean_box(x_8); lean_ctor_set(x_3, 0, x_9); return x_3; @@ -6247,7 +6113,7 @@ lean_dec(x_3); x_12 = lean_ctor_get_uint8(x_10, sizeof(void*)*2 + 8); lean_dec(x_10); x_13 = 0; -x_14 = l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2857_(x_12, x_13); +x_14 = l___private_Init_System_IO_0__IO_FS_beqFileType____x40_Init_System_IO___hyg_2694_(x_12, x_13); x_15 = lean_box(x_14); x_16 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_16, 0, x_15); @@ -7292,7 +7158,7 @@ LEAN_EXPORT lean_object* l_System_FilePath_walkDir(lean_object* x_1, lean_object _start: { lean_object* x_4; lean_object* x_5; -x_4 = l___auto____x40_Init_System_IO___hyg_1808____closed__3; +x_4 = l___auto____x40_Init_System_IO___hyg_1645____closed__6; x_5 = l_System_FilePath_walkDir_go(x_2, x_1, x_4, x_3); if (lean_obj_tag(x_5) == 0) { @@ -8353,7 +8219,7 @@ static lean_object* _init_l_IO_Process_SpawnArgs_args___default() { _start: { lean_object* x_1; -x_1 = l___auto____x40_Init_System_IO___hyg_1808____closed__3; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__6; return x_1; } } @@ -8369,7 +8235,7 @@ static lean_object* _init_l_IO_Process_SpawnArgs_env___default() { _start: { lean_object* x_1; -x_1 = l___auto____x40_Init_System_IO___hyg_1808____closed__3; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__6; return x_1; } } @@ -11936,9 +11802,9 @@ static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__1; -x_2 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__2; -x_3 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__6; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__1; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__2; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__15; x_4 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -11973,67 +11839,75 @@ static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("println", 7); +x_1 = lean_mk_string_from_bytes("IO", 2); return x_1; } } static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__9() { _start: { +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("println", 7); +return x_1; +} +} +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__10() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__1; -x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__8; +x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__8; +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__9; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__10() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__9; +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__10; 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___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__11() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__12() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__9; +x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__10; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__12() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__11; +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__12; 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___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__13() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__10; -x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__12; +x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__11; +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__13; 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___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__14() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__15() { _start: { lean_object* x_1; @@ -12041,62 +11915,72 @@ x_1 = lean_mk_string_from_bytes(":", 1); return x_1; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__15() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__16() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__1; +x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__8; x_2 = l_String_toSubstring_x27(x_1); return x_2; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__16() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__17() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__8; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__2; +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___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___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__17() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__19() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__2; +x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__17; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__18() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__20() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__17; +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__19; 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___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__19() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__16; -x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__18; +x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__18; +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___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___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__20() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__22() { _start: { lean_object* x_1; @@ -12104,72 +11988,72 @@ x_1 = lean_mk_string_from_bytes("Unit", 4); return x_1; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__21() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__23() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__20; +x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__22; x_2 = l_String_toSubstring_x27(x_1); return x_2; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__22() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__24() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__20; +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__22; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__23() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__25() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__22; +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__24; 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___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__24() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__26() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__22; +x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__24; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__25() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__27() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__24; +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__26; 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___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__26() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__28() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__23; -x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__25; +x_1 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__25; +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__27; 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___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__27() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__29() { _start: { lean_object* x_1; @@ -12177,7 +12061,7 @@ x_1 = lean_mk_string_from_bytes(")", 1); return x_1; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__28() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__30() { _start: { lean_object* x_1; @@ -12185,19 +12069,19 @@ x_1 = lean_mk_string_from_bytes("paren", 5); return x_1; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__29() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__31() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__1; -x_2 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__2; -x_3 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__6; -x_4 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__28; +x_1 = l___auto____x40_Init_System_IO___hyg_1645____closed__1; +x_2 = l___auto____x40_Init_System_IO___hyg_1645____closed__2; +x_3 = l___auto____x40_Init_System_IO___hyg_1645____closed__15; +x_4 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__30; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__30() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__32() { _start: { lean_object* x_1; @@ -12205,17 +12089,17 @@ x_1 = lean_mk_string_from_bytes("termS!_", 7); return x_1; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__31() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__33() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__30; +x_2 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__32; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__32() { +static lean_object* _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__34() { _start: { lean_object* x_1; @@ -12267,45 +12151,45 @@ lean_inc(x_14); x_18 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_18, 0, x_14); lean_ctor_set(x_18, 1, x_17); -x_19 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__9; +x_19 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__10; lean_inc(x_15); lean_inc(x_16); x_20 = l_Lean_addMacroScope(x_16, x_19, x_15); x_21 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__7; -x_22 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__13; +x_22 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__14; lean_inc(x_14); x_23 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_23, 0, x_14); lean_ctor_set(x_23, 1, x_21); lean_ctor_set(x_23, 2, x_20); lean_ctor_set(x_23, 3, x_22); -x_24 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__17; +x_24 = l___auto____x40_Init_System_IO___hyg_1645____closed__10; lean_inc(x_14); x_25 = l_Lean_Syntax_node1(x_14, x_24, x_9); -x_26 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__8; +x_26 = l___auto____x40_Init_System_IO___hyg_1645____closed__17; lean_inc(x_14); x_27 = l_Lean_Syntax_node2(x_14, x_26, x_23, x_25); -x_28 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__14; +x_28 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__15; lean_inc(x_14); x_29 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_29, 0, x_14); lean_ctor_set(x_29, 1, x_28); -x_30 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__2; +x_30 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__17; lean_inc(x_15); lean_inc(x_16); x_31 = l_Lean_addMacroScope(x_16, x_30, x_15); -x_32 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__15; -x_33 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__19; +x_32 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__16; +x_33 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__21; lean_inc(x_14); x_34 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_34, 0, x_14); lean_ctor_set(x_34, 1, x_32); lean_ctor_set(x_34, 2, x_31); lean_ctor_set(x_34, 3, x_33); -x_35 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__22; +x_35 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__24; x_36 = l_Lean_addMacroScope(x_16, x_35, x_15); -x_37 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__21; -x_38 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__26; +x_37 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__23; +x_38 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__28; lean_inc(x_14); x_39 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_39, 0, x_14); @@ -12318,7 +12202,7 @@ lean_inc(x_14); x_41 = l_Lean_Syntax_node2(x_14, x_26, x_34, x_40); lean_inc(x_14); x_42 = l_Lean_Syntax_node1(x_14, x_24, x_41); -x_43 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__27; +x_43 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__29; lean_inc(x_14); x_44 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_44, 0, x_14); @@ -12347,63 +12231,63 @@ lean_inc(x_50); x_54 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_54, 0, x_50); lean_ctor_set(x_54, 1, x_53); -x_55 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__9; +x_55 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__10; lean_inc(x_51); lean_inc(x_52); x_56 = l_Lean_addMacroScope(x_52, x_55, x_51); x_57 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__7; -x_58 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__13; +x_58 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__14; lean_inc(x_50); x_59 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_59, 0, x_50); lean_ctor_set(x_59, 1, x_57); lean_ctor_set(x_59, 2, x_56); lean_ctor_set(x_59, 3, x_58); -x_60 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__32; +x_60 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__34; lean_inc(x_50); x_61 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_61, 0, x_50); lean_ctor_set(x_61, 1, x_60); -x_62 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__31; +x_62 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__33; lean_inc(x_50); x_63 = l_Lean_Syntax_node2(x_50, x_62, x_61, x_9); -x_64 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__27; +x_64 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__29; lean_inc(x_50); x_65 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_65, 0, x_50); lean_ctor_set(x_65, 1, x_64); -x_66 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__29; +x_66 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__31; lean_inc(x_65); lean_inc(x_54); lean_inc(x_50); x_67 = l_Lean_Syntax_node3(x_50, x_66, x_54, x_63, x_65); -x_68 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__17; +x_68 = l___auto____x40_Init_System_IO___hyg_1645____closed__10; lean_inc(x_50); x_69 = l_Lean_Syntax_node1(x_50, x_68, x_67); -x_70 = l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__8; +x_70 = l___auto____x40_Init_System_IO___hyg_1645____closed__17; lean_inc(x_50); x_71 = l_Lean_Syntax_node2(x_50, x_70, x_59, x_69); -x_72 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__14; +x_72 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__15; lean_inc(x_50); x_73 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_73, 0, x_50); lean_ctor_set(x_73, 1, x_72); -x_74 = l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__2; +x_74 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__17; lean_inc(x_51); lean_inc(x_52); x_75 = l_Lean_addMacroScope(x_52, x_74, x_51); -x_76 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__15; -x_77 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__19; +x_76 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__16; +x_77 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__21; lean_inc(x_50); x_78 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_78, 0, x_50); lean_ctor_set(x_78, 1, x_76); lean_ctor_set(x_78, 2, x_75); lean_ctor_set(x_78, 3, x_77); -x_79 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__22; +x_79 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__24; x_80 = l_Lean_addMacroScope(x_52, x_79, x_51); -x_81 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__21; -x_82 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__26; +x_81 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__23; +x_82 = l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__28; lean_inc(x_50); x_83 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_83, 0, x_50); @@ -12540,112 +12424,94 @@ l_IO_instToStringTaskState___closed__1 = _init_l_IO_instToStringTaskState___clos lean_mark_persistent(l_IO_instToStringTaskState___closed__1); l_IO_instToStringTaskState = _init_l_IO_instToStringTaskState(); lean_mark_persistent(l_IO_instToStringTaskState); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__1 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__1(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__1); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__2 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__2(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__2); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__3 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__3(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__3); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__4 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__4(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__4); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__5 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__5(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__5); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__6 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__6(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__6); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__7 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__7(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__7); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__8 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__8(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__8); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__9 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__9(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__9); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__10 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__10(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__10); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__11 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__11(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__11); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__12 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__12(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__12); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__13 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__13(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__13); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__14 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__14(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__14); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__15 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__15(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__15); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__16 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__16(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__16); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__17 = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__17(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632____closed__17); -l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632_ = _init_l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632_(); -lean_mark_persistent(l_IO_tacticNonempty__list____x40_Init_System_IO___hyg_1632_); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__1 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__1(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__1); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__2 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__2(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__2); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__3 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__3(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__3); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__4 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__4(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__4); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__5 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__5(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__5); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__6 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__6(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__6); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__7 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__7(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__7); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__8 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__8(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__8); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__9 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__9(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__9); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__10 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__10(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__10); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__11 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__11(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__11); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__12 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__12(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__12); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__13 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__13(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__13); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__14 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__14(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__14); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__15 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__15(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__15); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__16 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__16(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__16); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__17 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__17(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__17); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__18 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__18(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__18); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__19 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__19(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__19); -l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__20 = _init_l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__20(); -lean_mark_persistent(l_IO___aux__Init__System__IO______macroRules__IO__tacticNonempty__list__1___closed__20); -l___auto____x40_Init_System_IO___hyg_1808____closed__1 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__1(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__1); -l___auto____x40_Init_System_IO___hyg_1808____closed__2 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__2(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__2); -l___auto____x40_Init_System_IO___hyg_1808____closed__3 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__3(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__3); -l___auto____x40_Init_System_IO___hyg_1808____closed__4 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__4(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__4); -l___auto____x40_Init_System_IO___hyg_1808____closed__5 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__5(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__5); -l___auto____x40_Init_System_IO___hyg_1808____closed__6 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__6(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__6); -l___auto____x40_Init_System_IO___hyg_1808____closed__7 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__7(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__7); -l___auto____x40_Init_System_IO___hyg_1808____closed__8 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__8(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__8); -l___auto____x40_Init_System_IO___hyg_1808____closed__9 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__9(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__9); -l___auto____x40_Init_System_IO___hyg_1808____closed__10 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__10(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__10); -l___auto____x40_Init_System_IO___hyg_1808____closed__11 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__11(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__11); -l___auto____x40_Init_System_IO___hyg_1808____closed__12 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__12(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__12); -l___auto____x40_Init_System_IO___hyg_1808____closed__13 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__13(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__13); -l___auto____x40_Init_System_IO___hyg_1808____closed__14 = _init_l___auto____x40_Init_System_IO___hyg_1808____closed__14(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808____closed__14); -l___auto____x40_Init_System_IO___hyg_1808_ = _init_l___auto____x40_Init_System_IO___hyg_1808_(); -lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1808_); +l___auto____x40_Init_System_IO___hyg_1645____closed__1 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__1(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__1); +l___auto____x40_Init_System_IO___hyg_1645____closed__2 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__2(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__2); +l___auto____x40_Init_System_IO___hyg_1645____closed__3 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__3(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__3); +l___auto____x40_Init_System_IO___hyg_1645____closed__4 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__4(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__4); +l___auto____x40_Init_System_IO___hyg_1645____closed__5 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__5(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__5); +l___auto____x40_Init_System_IO___hyg_1645____closed__6 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__6(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__6); +l___auto____x40_Init_System_IO___hyg_1645____closed__7 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__7(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__7); +l___auto____x40_Init_System_IO___hyg_1645____closed__8 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__8(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__8); +l___auto____x40_Init_System_IO___hyg_1645____closed__9 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__9(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__9); +l___auto____x40_Init_System_IO___hyg_1645____closed__10 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__10(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__10); +l___auto____x40_Init_System_IO___hyg_1645____closed__11 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__11(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__11); +l___auto____x40_Init_System_IO___hyg_1645____closed__12 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__12(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__12); +l___auto____x40_Init_System_IO___hyg_1645____closed__13 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__13(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__13); +l___auto____x40_Init_System_IO___hyg_1645____closed__14 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__14(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__14); +l___auto____x40_Init_System_IO___hyg_1645____closed__15 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__15(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__15); +l___auto____x40_Init_System_IO___hyg_1645____closed__16 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__16(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__16); +l___auto____x40_Init_System_IO___hyg_1645____closed__17 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__17(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__17); +l___auto____x40_Init_System_IO___hyg_1645____closed__18 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__18(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__18); +l___auto____x40_Init_System_IO___hyg_1645____closed__19 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__19(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__19); +l___auto____x40_Init_System_IO___hyg_1645____closed__20 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__20(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__20); +l___auto____x40_Init_System_IO___hyg_1645____closed__21 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__21(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__21); +l___auto____x40_Init_System_IO___hyg_1645____closed__22 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__22(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__22); +l___auto____x40_Init_System_IO___hyg_1645____closed__23 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__23(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__23); +l___auto____x40_Init_System_IO___hyg_1645____closed__24 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__24(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__24); +l___auto____x40_Init_System_IO___hyg_1645____closed__25 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__25(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__25); +l___auto____x40_Init_System_IO___hyg_1645____closed__26 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__26(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__26); +l___auto____x40_Init_System_IO___hyg_1645____closed__27 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__27(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__27); +l___auto____x40_Init_System_IO___hyg_1645____closed__28 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__28(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__28); +l___auto____x40_Init_System_IO___hyg_1645____closed__29 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__29(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__29); +l___auto____x40_Init_System_IO___hyg_1645____closed__30 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__30(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__30); +l___auto____x40_Init_System_IO___hyg_1645____closed__31 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__31(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__31); +l___auto____x40_Init_System_IO___hyg_1645____closed__32 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__32(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__32); +l___auto____x40_Init_System_IO___hyg_1645____closed__33 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__33(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__33); +l___auto____x40_Init_System_IO___hyg_1645____closed__34 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__34(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__34); +l___auto____x40_Init_System_IO___hyg_1645____closed__35 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__35(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__35); +l___auto____x40_Init_System_IO___hyg_1645____closed__36 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__36(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__36); +l___auto____x40_Init_System_IO___hyg_1645____closed__37 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__37(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__37); +l___auto____x40_Init_System_IO___hyg_1645____closed__38 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__38(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__38); +l___auto____x40_Init_System_IO___hyg_1645____closed__39 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__39(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__39); +l___auto____x40_Init_System_IO___hyg_1645____closed__40 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__40(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__40); +l___auto____x40_Init_System_IO___hyg_1645____closed__41 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__41(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__41); +l___auto____x40_Init_System_IO___hyg_1645____closed__42 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__42(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__42); +l___auto____x40_Init_System_IO___hyg_1645____closed__43 = _init_l___auto____x40_Init_System_IO___hyg_1645____closed__43(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645____closed__43); +l___auto____x40_Init_System_IO___hyg_1645_ = _init_l___auto____x40_Init_System_IO___hyg_1645_(); +lean_mark_persistent(l___auto____x40_Init_System_IO___hyg_1645_); l_IO_FS_instInhabitedStream___lambda__1___closed__1 = _init_l_IO_FS_instInhabitedStream___lambda__1___closed__1(); l_IO_FS_instInhabitedStream___lambda__1___closed__2 = _init_l_IO_FS_instInhabitedStream___lambda__1___closed__2(); lean_mark_persistent(l_IO_FS_instInhabitedStream___lambda__1___closed__2); @@ -12663,98 +12529,98 @@ l_IO_FS_instInhabitedStream___closed__5 = _init_l_IO_FS_instInhabitedStream___cl lean_mark_persistent(l_IO_FS_instInhabitedStream___closed__5); l_IO_FS_instInhabitedStream = _init_l_IO_FS_instInhabitedStream(); lean_mark_persistent(l_IO_FS_instInhabitedStream); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__1 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__1(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__1); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__2 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__2(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__2); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__3 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__3(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__3); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__4 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__4(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__4); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__5 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__5(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__5); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__6 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__6(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__6); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__7 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__7(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__7); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__8 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__8(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__8); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__9 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__9(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__9); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__10 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__10(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__10); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__11 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__11(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__11); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__12 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__12(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__12); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__13 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__13(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__13); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__14 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__14(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__14); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__15 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__15(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__15); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__16 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__16(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__16); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__17 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__17(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__17); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__18 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__18(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__18); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__19 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__19(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__19); -l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__20 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__20(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2637____closed__20); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__1 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__1(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__1); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__2 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__2(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__2); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__3 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__3(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__3); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__4 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__4(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__4); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__5 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__5(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__5); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__6 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__6(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__6); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__7 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__7(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__7); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__8 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__8(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__8); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__9 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__9(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__9); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__10 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__10(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__10); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__11 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__11(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__11); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__12 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__12(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__12); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__13 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__13(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__13); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__14 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__14(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__14); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__15 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__15(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__15); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__16 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__16(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__16); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__17 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__17(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__17); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__18 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__18(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__18); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__19 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__19(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__19); +l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__20 = _init_l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__20(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprDirEntry____x40_Init_System_IO___hyg_2474____closed__20); l_IO_FS_instReprDirEntry___closed__1 = _init_l_IO_FS_instReprDirEntry___closed__1(); lean_mark_persistent(l_IO_FS_instReprDirEntry___closed__1); l_IO_FS_instReprDirEntry = _init_l_IO_FS_instReprDirEntry(); lean_mark_persistent(l_IO_FS_instReprDirEntry); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__1 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__1(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__1); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__2 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__2(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__2); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__3 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__3(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__3); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__4 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__4(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__4); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__5 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__5(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__5); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__6 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__6(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__6); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__7 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__7(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__7); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__8 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__8(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__8); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__9 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__9(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__9); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__10 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__10(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__10); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__11 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__11(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__11); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__12 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__12(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__12); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__13 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__13(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__13); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__14 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__14(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__14); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__15 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__15(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__15); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__16 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__16(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__16); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__17 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__17(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__17); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__18 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__18(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__18); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__19 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__19(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__19); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__20 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__20(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__20); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__21 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__21(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__21); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__22 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__22(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__22); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__23 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__23(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__23); -l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__24 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__24(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2710____closed__24); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__1 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__1(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__1); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__2 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__2(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__2); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__3 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__3(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__3); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__4 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__4(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__4); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__5 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__5(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__5); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__6 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__6(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__6); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__7 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__7(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__7); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__8 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__8(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__8); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__9 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__9(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__9); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__10 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__10(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__10); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__11 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__11(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__11); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__12 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__12(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__12); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__13 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__13(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__13); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__14 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__14(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__14); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__15 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__15(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__15); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__16 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__16(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__16); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__17 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__17(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__17); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__18 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__18(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__18); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__19 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__19(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__19); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__20 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__20(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__20); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__21 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__21(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__21); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__22 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__22(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__22); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__23 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__23(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__23); +l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__24 = _init_l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__24(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprFileType____x40_Init_System_IO___hyg_2547____closed__24); l_IO_FS_instReprFileType___closed__1 = _init_l_IO_FS_instReprFileType___closed__1(); lean_mark_persistent(l_IO_FS_instReprFileType___closed__1); l_IO_FS_instReprFileType = _init_l_IO_FS_instReprFileType(); @@ -12763,20 +12629,20 @@ l_IO_FS_instBEqFileType___closed__1 = _init_l_IO_FS_instBEqFileType___closed__1( lean_mark_persistent(l_IO_FS_instBEqFileType___closed__1); l_IO_FS_instBEqFileType = _init_l_IO_FS_instBEqFileType(); lean_mark_persistent(l_IO_FS_instBEqFileType); -l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__1 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__1(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__1); -l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__2 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__2(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__2); -l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__3 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__3(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__3); -l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__4 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__4(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__4); -l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__5 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__5(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__5); -l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__6 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__6(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__6); -l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__7 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__7(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2892____closed__7); +l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__1 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__1(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__1); +l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__2 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__2(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__2); +l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__3 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__3(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__3); +l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__4 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__4(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__4); +l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__5 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__5(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__5); +l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__6 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__6(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__6); +l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__7 = _init_l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__7(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprSystemTime____x40_Init_System_IO___hyg_2729____closed__7); l_IO_FS_instReprSystemTime___closed__1 = _init_l_IO_FS_instReprSystemTime___closed__1(); lean_mark_persistent(l_IO_FS_instReprSystemTime___closed__1); l_IO_FS_instReprSystemTime = _init_l_IO_FS_instReprSystemTime(); @@ -12799,26 +12665,26 @@ l_IO_FS_instLTSystemTime = _init_l_IO_FS_instLTSystemTime(); lean_mark_persistent(l_IO_FS_instLTSystemTime); l_IO_FS_instLESystemTime = _init_l_IO_FS_instLESystemTime(); lean_mark_persistent(l_IO_FS_instLESystemTime); -l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__1 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__1(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__1); -l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__2 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__2(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__2); -l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__3 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__3(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__3); -l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__4 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__4(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__4); -l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__5 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__5(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__5); -l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__6 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__6(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__6); -l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__7 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__7(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__7); -l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__8 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__8(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__8); -l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__9 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__9(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__9); -l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__10 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__10(); -lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_3143____closed__10); +l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__1 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__1(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__1); +l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__2 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__2(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__2); +l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__3 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__3(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__3); +l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__4 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__4(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__4); +l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__5 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__5(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__5); +l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__6 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__6(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__6); +l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__7 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__7(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__7); +l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__8 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__8(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__8); +l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__9 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__9(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__9); +l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__10 = _init_l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__10(); +lean_mark_persistent(l___private_Init_System_IO_0__IO_FS_reprMetadata____x40_Init_System_IO___hyg_2980____closed__10); l_IO_FS_instReprMetadata___closed__1 = _init_l_IO_FS_instReprMetadata___closed__1(); lean_mark_persistent(l_IO_FS_instReprMetadata___closed__1); l_IO_FS_instReprMetadata = _init_l_IO_FS_instReprMetadata(); @@ -12999,6 +12865,10 @@ l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__31 = lean_mark_persistent(l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__31); l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__32 = _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__32(); lean_mark_persistent(l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__32); +l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__33 = _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__33(); +lean_mark_persistent(l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__33); +l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__34 = _init_l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__34(); +lean_mark_persistent(l___aux__Init__System__IO______macroRules__termPrintln_x21______1___closed__34); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Init/Tactics.c b/stage0/stdlib/Init/Tactics.c index e76b7e271c08..379839993b23 100644 --- a/stage0/stdlib/Init/Tactics.c +++ b/stage0/stdlib/Init/Tactics.c @@ -95,6 +95,7 @@ static lean_object* l_Lean_Parser_Tactic_tacticSimpa_x3f_____closed__2; static lean_object* l_Lean_Parser_Tactic_tacticStop_____closed__3; static lean_object* l_Lean_Parser_Syntax_exact_x3f___closed__4; static lean_object* l_Lean_Parser_Tactic_rotateLeft___closed__10; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__13; static lean_object* l_Lean_Parser_Tactic_tacticHaveI_____closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticRfl__3___closed__4; static lean_object* l_Lean_Parser_Tactic_assumption___closed__3; @@ -131,6 +132,7 @@ static lean_object* l_Lean_Parser_Tactic_rwRuleSeq___closed__2; static lean_object* l_Lean_Parser_Tactic_refine___closed__5; static lean_object* l_Lean_Parser_Tactic_tacticNorm__cast_____closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_by_x3f; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__9; static lean_object* l_Lean_Parser_Tactic_tacticInfer__instance___closed__4; static lean_object* l_Lean_Parser_Tactic_tacticAnd__intros___closed__1; static lean_object* l_Lean_Parser_Tactic_induction___closed__11; @@ -215,6 +217,7 @@ static lean_object* l_Lean_Parser_Tactic_withAnnotateState___closed__7; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_anyGoals; static lean_object* l_Lean_Parser_Tactic_dsimpArgs___closed__5; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticSorry__1(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5; static lean_object* l_Lean_Parser_Tactic_apply_x3f___closed__6; static lean_object* l_Lean_Parser_Tactic_generalizeArg___closed__8; static lean_object* l_Lean_Parser_Tactic_tacticHave_____closed__5; @@ -265,7 +268,6 @@ static lean_object* l_Lean_Parser_Tactic_withUnfoldingAll___closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticInfer__instance__1___closed__7; static lean_object* l_Lean_Parser_Tactic_tacticHave_x27___x3a_x3d_____closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_tacticTrivial; -static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__3; static lean_object* l_Lean_Parser_Tactic_tacIfThenElse___closed__1; lean_object* l_Lean_Syntax_getArgs(lean_object*); static lean_object* l_Lean_Parser_Tactic_rewrites__forbidden___closed__1; @@ -275,10 +277,11 @@ static lean_object* l_Lean_Parser_Tactic_tacDepIfThenElse___closed__3; static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticRfl_x27__1___closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_checkpoint; static lean_object* l_Lean_Parser_Tactic_withAnnotateState___closed__17; +lean_object* l_Lean_replaceRef(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_withAnnotateState___closed__15; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__8; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_casesTarget; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExists___x2c_x2c__1(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__4; static lean_object* l_Lean_Parser_Tactic_intros___closed__4; static lean_object* l_Lean_Parser_Attr_grind__norm___closed__4; static lean_object* l_Lean_Parser_Tactic_tacticRfl___closed__1; @@ -341,7 +344,6 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__L static lean_object* l_Lean_Parser_Tactic_intros___closed__8; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_withReducibleAndInstances; static lean_object* l_Lean_Parser_Tactic_rewrites_x3f___closed__1; -static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_tacticHave_x27___x3a_x3d__; static lean_object* l_Lean_Parser_Tactic_withReducible___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticNext___x3d_x3e____1(lean_object*, lean_object*, lean_object*); @@ -393,6 +395,7 @@ static lean_object* l_Lean_Parser_Tactic_discharger___closed__8; static lean_object* l_Lean_Parser_Tactic_tacticHave_x27___x3a_x3d_____closed__7; static lean_object* l_Lean_Parser_Tactic_rewriteSeq___closed__4; static lean_object* l_Lean_Parser_Tactic_tacIfThenElse___closed__2; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__15; static lean_object* l_Lean_Parser_Tactic_constructor___closed__2; static lean_object* l_Lean_Parser_Tactic_symm___closed__1; static lean_object* l_Lean_Parser_Tactic_generalize___closed__3; @@ -419,7 +422,6 @@ static lean_object* l___aux__Init__Tactics______macroRules__tacticGet__elem__tac static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticShow____1___closed__3; static lean_object* l_Lean_Parser_Tactic_tacticHaveI_____closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticTrivial__1(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__8; static lean_object* l_Lean_Parser_Tactic_repeat_x27___closed__1; static lean_object* l_Lean_Parser_Tactic_config___closed__7; static lean_object* l_Lean_Parser_Attr_simp___closed__6; @@ -459,7 +461,6 @@ static lean_object* l_Lean_Parser_Tactic_tacticAdmit___closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticTrivial__6___closed__7; static lean_object* l_Lean_Parser_Tactic_discharger___closed__16; static lean_object* l_tacticGet__elem__tactic___closed__3; -static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__2; static lean_object* l_Lean_Parser_Tactic_showTermElab___closed__3; static lean_object* l_Lean_Parser_Tactic_injections___closed__2; static lean_object* l_tacticGet__elem__tactic__trivial___closed__5; @@ -467,13 +468,13 @@ static lean_object* l_Lean_Parser_Tactic_checkpoint___closed__1; static lean_object* l_Lean_Parser_Tactic_config___closed__12; static lean_object* l_Lean_Parser_Tactic_locationHyp___closed__24; static lean_object* l_Lean_Parser_Tactic_tacticNofun___closed__3; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__17; static lean_object* l_Lean_Parser_Tactic_by_x3f___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_rename; static lean_object* l_Lean_Parser_Tactic_dsimpTraceArgsRest___closed__6; static lean_object* l_Lean_Parser_Tactic_repeat_x27___closed__5; static lean_object* l_Lean_Parser_Tactic_change___closed__8; static lean_object* l_Lean_Parser_Tactic_tacticHave_____closed__6; -static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_tacticRefine__lift__; static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__9; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_tacticSimpa_x3f_x21__; @@ -527,6 +528,7 @@ static lean_object* l_Lean_Parser_Tactic_dsimp___closed__8; static lean_object* l_Lean_Parser_Tactic_tacticLetI_____closed__2; static lean_object* l_Lean_Parser_Tactic_changeWith___closed__4; static lean_object* l_Lean_Parser_Tactic_config___closed__5; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__14; static lean_object* l_Lean_Parser_Tactic_withAnnotateState___closed__6; static lean_object* l_Lean_Parser_Tactic_locationHyp___closed__12; static lean_object* l_Lean_Parser_Tactic_applyRules___closed__8; @@ -589,7 +591,6 @@ static lean_object* l_Lean_Parser_Tactic_delta___closed__4; static lean_object* l_Lean_Parser_Tactic_runTac___closed__6; static lean_object* l_Lean_Parser_Tactic_tacticHave_____closed__3; static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticTry____1___closed__2; -static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__4; static lean_object* l_Lean_Parser_Tactic_tacticRepeat_____closed__3; static lean_object* l_Lean_Parser_Tactic_traceMessage___closed__9; static lean_object* l_Lean_Parser_Tactic_showTermElab___closed__1; @@ -690,6 +691,7 @@ static lean_object* l_Lean_Parser_Tactic_substEqs___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_tacticSorry; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_simpLemma; static lean_object* l_Lean_Parser_Tactic_delta___closed__6; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__12; static lean_object* l_Lean_Parser_Tactic_tacticStop_____closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticTrivial__5___closed__1; static lean_object* l_Lean_Parser_Tactic_letrec___closed__11; @@ -729,6 +731,7 @@ static lean_object* l_Lean_Parser_Tactic_withReducibleAndInstances___closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_acRfl; static lean_object* l_Lean_Parser_Tactic_exact___closed__3; static lean_object* l_Lean_Parser_Tactic_tacticShow_____closed__3; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__10; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_congr; static lean_object* l_Lean_Parser_Tactic_tacticRfl_x27___closed__2; static lean_object* l_Lean_Parser_Tactic_pushCast___closed__5; @@ -849,6 +852,7 @@ static lean_object* l_Lean_Parser_Tactic_injection___closed__11; static lean_object* l_Lean_Parser_Tactic_clear___closed__4; static lean_object* l_Lean_Parser_Attr_normCastLabel___closed__11; static lean_object* l_Lean_Parser_Tactic_apply___closed__1; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6; static lean_object* l_Lean_Parser_Tactic_tacticNext___x3d_x3e_____closed__9; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_falseOrByContra; static lean_object* l_Lean_Parser_Tactic_runTac___closed__4; @@ -899,6 +903,7 @@ static lean_object* l_Lean_Parser_Tactic_simp___closed__14; static lean_object* l_Lean_Parser_Tactic_refine___closed__1; LEAN_EXPORT lean_object* l___aux__Init__Tactics______macroRules__tacticGet__elem__tactic__trivial__3(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simp___closed__3; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__7; static lean_object* l_Lean_Parser_Tactic_case___closed__9; static lean_object* l_Lean_Parser_Tactic_pushCast___closed__7; static lean_object* l_Lean_Parser_Tactic_first___closed__26; @@ -938,6 +943,7 @@ static lean_object* l_Lean_Parser_Tactic_tacDepIfThenElse___closed__25; static lean_object* l_Lean_Parser_Tactic_tacticSuffices_____closed__2; static lean_object* l_Lean_Parser_Tactic_simpStar___closed__1; static lean_object* l_Lean_Parser_Tactic_tacticUnhygienic_____closed__3; +uint8_t l_Lean_Syntax_matchesNull(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticTrivial__5___closed__6; static lean_object* l_Lean_Parser_Tactic_simpAllTraceArgsRest___closed__5; static lean_object* l_Lean_Parser_Tactic_inductionAltLHS___closed__9; @@ -968,6 +974,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRul static lean_object* l_Lean_Parser_Tactic_tacticTry_____closed__4; static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__11; static lean_object* l_Lean_Parser_Tactic_simpTraceArgsRest___closed__5; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__16; static lean_object* l_Lean_Parser_Tactic_showTerm___closed__6; static lean_object* l_Lean_Parser_Tactic_focus___closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_simpAllTraceArgsRest; @@ -1010,6 +1017,7 @@ static lean_object* l_Lean_Parser_Tactic_rwRuleSeq___closed__12; static lean_object* l_Lean_Parser_Tactic_simpaArgsRest___closed__10; static lean_object* l_Lean_Parser_Tactic_assumption___closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticTrivial__6___closed__3; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__18; static lean_object* l_Lean_Parser_Attr_simp___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_withAnnotateState; static lean_object* l_Lean_Parser_Tactic_withAnnotateState___closed__22; @@ -1043,7 +1051,6 @@ static lean_object* l_Lean_Parser_Tactic_simpTraceArgsRest___closed__8; static lean_object* l_Lean_Parser_Tactic_config___closed__8; static lean_object* l_Lean_Parser_Tactic_withReducibleAndInstances___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticLetI____1(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__1; static lean_object* l_Lean_Parser_Tactic_simpArgs___closed__2; static lean_object* l_Lean_Parser_Tactic_simpTrace___closed__8; static lean_object* l_Lean_Parser_Tactic_tacticDsimp_x3f_x21_____closed__1; @@ -1228,7 +1235,6 @@ static lean_object* l_Lean_Parser_Tactic_apply_x3f___closed__3; static lean_object* l_Lean_Parser_Tactic_tacticHaveI_____closed__4; static lean_object* l_Lean_Parser_Tactic_tacDepIfThenElse___closed__21; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_injections; -static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__7; static lean_object* l_Lean_Parser_Tactic_tacticRefine__lift_____closed__6; static lean_object* l_Lean_Parser_Tactic_case_x27___closed__5; static lean_object* l_Lean_Parser_Tactic_SolveByElim_using_____closed__3; @@ -1300,7 +1306,6 @@ static lean_object* l_Lean_Parser_Tactic_withReducible___closed__4; static lean_object* l_Lean_Parser_Tactic_tacticDsimp_x3f_x21_____closed__4; static lean_object* l_Lean_Parser_Tactic_intro___closed__16; static lean_object* l_Lean_Parser_Tactic_config___closed__6; -static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__9; static lean_object* l_Lean_Parser_Tactic_tacDepIfThenElse___closed__29; static lean_object* l_Lean_Parser_Tactic_tacticSorry___closed__3; static lean_object* l_Lean_Parser_Tactic_tacticLetI_____closed__5; @@ -1596,6 +1601,7 @@ static lean_object* l_Lean_Parser_Tactic_generalize___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_injection___closed__6; static lean_object* l_Lean_Parser_Tactic_tacticSuffices_____closed__1; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__11; static lean_object* l_Lean_Parser_Tactic_locationHyp___closed__6; static lean_object* l_Lean_Parser_Tactic_generalizeArg___closed__1; static lean_object* l_Lean_Parser_Tactic_change___closed__1; @@ -1676,12 +1682,12 @@ static lean_object* l_Lean_Parser_Tactic_done___closed__3; static lean_object* l_Lean_Parser_Attr_normCastLabel___closed__14; static lean_object* l_term_u2039___u203a___closed__8; static lean_object* l_Lean_Parser_Tactic_first___closed__16; +static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_applyRfl; static lean_object* l_Lean_Parser_Tactic_rwRuleSeq___closed__9; static lean_object* l_Lean_Parser_Tactic_tacticAssumption__mod__cast___closed__1; static lean_object* l_Lean_Parser_Tactic_tacticNomatch___x2c_x2c___closed__6; static lean_object* l_Lean_Parser_Tactic_symm___closed__5; -static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__5; static lean_object* l_Lean_Parser_Tactic_SolveByElim_args___closed__5; static lean_object* l_Lean_Parser_Tactic_rotateLeft___closed__8; static lean_object* l_Lean_Parser_Tactic_tacticTry_____closed__5; @@ -1696,7 +1702,6 @@ static lean_object* l_Lean_Parser_Tactic_inductionAlts___closed__1; LEAN_EXPORT lean_object* l___aux__Init__Tactics______macroRules__term_u2039___u203a__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Attr_normCastLabel___closed__3; static lean_object* l_Lean_Parser_Tactic_tacIfThenElse___closed__3; -static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__6; static lean_object* l_Lean_Parser_Tactic_inductionAlt___closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__18; static lean_object* l_Lean_Parser_Tactic_simpAll___closed__2; @@ -13304,12 +13309,44 @@ return x_1; static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___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_Lean_Parser_Tactic_withAnnotateState___closed__1; +x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; +x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; +x_4 = l_Lean_Parser_Tactic_tacticHave_____closed__5; +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___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("haveIdDecl", 10); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____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_Parser_Tactic_withAnnotateState___closed__1; +x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; +x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; +x_4 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____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_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4() { +_start: +{ lean_object* x_1; x_1 = lean_mk_string_from_bytes("refine_lift", 11); return x_1; } } -static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__2() { +static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5() { _start: { lean_object* x_1; @@ -13317,18 +13354,133 @@ x_1 = lean_mk_string_from_bytes("have", 4); return x_1; } } -static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__3() { +static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___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_Parser_Tactic_withAnnotateState___closed__1; x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; -x_4 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__2; +x_4 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5; +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___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("haveId", 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___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_Parser_Tactic_withAnnotateState___closed__1; +x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; +x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; +x_4 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__7; 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___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("typeSpec", 8); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__10() { +_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_Tactic_withAnnotateState___closed__1; +x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; +x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; +x_4 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__9; +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___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__11() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("byTactic", 8); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___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_Lean_Parser_Tactic_withAnnotateState___closed__1; +x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; +x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; +x_4 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__11; +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___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__13() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("body", 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__13; +x_2 = l_String_toSubstring_x27(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__15() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__13; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___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_Lean_Parser_Tactic_withAnnotateState___closed__1; +x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; +x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; +x_4 = l_Lean_Parser_Tactic_paren___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_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__17() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes(":", 1); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__18() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes(":=", 2); +return x_1; +} +} LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -13349,55 +13501,681 @@ return x_7; } else { -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; 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_8 = lean_unsigned_to_nat(1u); +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_8 = lean_unsigned_to_nat(0u); x_9 = l_Lean_Syntax_getArg(x_1, x_8); +x_10 = lean_unsigned_to_nat(1u); +x_11 = l_Lean_Syntax_getArg(x_1, x_10); lean_dec(x_1); -x_10 = lean_ctor_get(x_2, 5); -lean_inc(x_10); +x_12 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__1; +lean_inc(x_11); +x_13 = l_Lean_Syntax_isOfKind(x_11, x_12); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; +lean_dec(x_11); +lean_dec(x_9); lean_dec(x_2); -x_11 = 0; -x_12 = l_Lean_SourceInfo_fromRef(x_10, x_11); -x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__1; -lean_inc(x_12); -x_14 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_14, 0, x_12); -lean_ctor_set(x_14, 1, x_13); -x_15 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__2; -lean_inc(x_12); -x_16 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_16, 0, x_12); -lean_ctor_set(x_16, 1, x_15); -x_17 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__rwSeq__1___closed__2; -lean_inc(x_12); -x_18 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_18, 0, x_12); -lean_ctor_set(x_18, 1, x_17); -x_19 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__17; -lean_inc(x_12); -x_20 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_20, 0, x_12); -lean_ctor_set(x_20, 1, x_19); -x_21 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__19; -lean_inc(x_12); -x_22 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_22, 0, x_12); -lean_ctor_set(x_22, 1, x_21); -x_23 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__18; -lean_inc(x_12); -x_24 = l_Lean_Syntax_node1(x_12, x_23, x_22); -x_25 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__16; -lean_inc(x_12); -x_26 = l_Lean_Syntax_node2(x_12, x_25, x_20, x_24); -x_27 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__3; -lean_inc(x_12); -x_28 = l_Lean_Syntax_node4(x_12, x_27, x_16, x_9, x_18, x_26); -x_29 = l_Lean_Parser_Tactic_tacticRefine__lift_____closed__2; -x_30 = l_Lean_Syntax_node2(x_12, x_29, x_14, x_28); -x_31 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_31, 1, x_3); -return x_31; +x_14 = lean_box(1); +x_15 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_3); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = l_Lean_Syntax_getArg(x_11, x_8); +x_17 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__3; +lean_inc(x_16); +x_18 = l_Lean_Syntax_isOfKind(x_16, x_17); +if (x_18 == 0) +{ +lean_object* 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; 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_dec(x_16); +lean_dec(x_9); +x_19 = lean_ctor_get(x_2, 5); +lean_inc(x_19); +lean_dec(x_2); +x_20 = 0; +x_21 = l_Lean_SourceInfo_fromRef(x_19, x_20); +x_22 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; +lean_inc(x_21); +x_23 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_22); +x_24 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5; +lean_inc(x_21); +x_25 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_25, 0, x_21); +lean_ctor_set(x_25, 1, x_24); +x_26 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__rwSeq__1___closed__2; +lean_inc(x_21); +x_27 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_27, 0, x_21); +lean_ctor_set(x_27, 1, x_26); +x_28 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__17; +lean_inc(x_21); +x_29 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_29, 0, x_21); +lean_ctor_set(x_29, 1, x_28); +x_30 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__19; +lean_inc(x_21); +x_31 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_31, 0, x_21); +lean_ctor_set(x_31, 1, x_30); +x_32 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__18; +lean_inc(x_21); +x_33 = l_Lean_Syntax_node1(x_21, x_32, x_31); +x_34 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__16; +lean_inc(x_21); +x_35 = l_Lean_Syntax_node2(x_21, x_34, x_29, x_33); +x_36 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6; +lean_inc(x_21); +x_37 = l_Lean_Syntax_node4(x_21, x_36, x_25, x_11, x_27, x_35); +x_38 = l_Lean_Parser_Tactic_tacticRefine__lift_____closed__2; +x_39 = l_Lean_Syntax_node2(x_21, x_38, x_23, x_37); +x_40 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_3); +return x_40; +} +else +{ +lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_41 = l_Lean_Syntax_getArg(x_16, x_8); +x_42 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__8; +lean_inc(x_41); +x_43 = l_Lean_Syntax_isOfKind(x_41, x_42); +if (x_43 == 0) +{ +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; 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_dec(x_41); +lean_dec(x_16); +lean_dec(x_9); +x_44 = lean_ctor_get(x_2, 5); +lean_inc(x_44); +lean_dec(x_2); +x_45 = 0; +x_46 = l_Lean_SourceInfo_fromRef(x_44, x_45); +x_47 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; +lean_inc(x_46); +x_48 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +x_49 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5; +lean_inc(x_46); +x_50 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_50, 0, x_46); +lean_ctor_set(x_50, 1, x_49); +x_51 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__rwSeq__1___closed__2; +lean_inc(x_46); +x_52 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_52, 0, x_46); +lean_ctor_set(x_52, 1, x_51); +x_53 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__17; +lean_inc(x_46); +x_54 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_54, 0, x_46); +lean_ctor_set(x_54, 1, x_53); +x_55 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__19; +lean_inc(x_46); +x_56 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_56, 0, x_46); +lean_ctor_set(x_56, 1, x_55); +x_57 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__18; +lean_inc(x_46); +x_58 = l_Lean_Syntax_node1(x_46, x_57, x_56); +x_59 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__16; +lean_inc(x_46); +x_60 = l_Lean_Syntax_node2(x_46, x_59, x_54, x_58); +x_61 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6; +lean_inc(x_46); +x_62 = l_Lean_Syntax_node4(x_46, x_61, x_50, x_11, x_52, x_60); +x_63 = l_Lean_Parser_Tactic_tacticRefine__lift_____closed__2; +x_64 = l_Lean_Syntax_node2(x_46, x_63, x_48, x_62); +x_65 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_65, 0, x_64); +lean_ctor_set(x_65, 1, x_3); +return x_65; +} +else +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; uint8_t x_69; +x_66 = l_Lean_Syntax_getArg(x_16, x_10); +x_67 = lean_unsigned_to_nat(2u); +x_68 = l_Lean_Syntax_getArg(x_16, x_67); +lean_inc(x_68); +x_69 = l_Lean_Syntax_matchesNull(x_68, x_10); +if (x_69 == 0) +{ +lean_object* x_70; uint8_t 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_dec(x_68); +lean_dec(x_66); +lean_dec(x_41); +lean_dec(x_16); +lean_dec(x_9); +x_70 = lean_ctor_get(x_2, 5); +lean_inc(x_70); +lean_dec(x_2); +x_71 = 0; +x_72 = l_Lean_SourceInfo_fromRef(x_70, x_71); +x_73 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; +lean_inc(x_72); +x_74 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_74, 0, x_72); +lean_ctor_set(x_74, 1, x_73); +x_75 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5; +lean_inc(x_72); +x_76 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_76, 0, x_72); +lean_ctor_set(x_76, 1, x_75); +x_77 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__rwSeq__1___closed__2; +lean_inc(x_72); +x_78 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_78, 0, x_72); +lean_ctor_set(x_78, 1, x_77); +x_79 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__17; +lean_inc(x_72); +x_80 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_80, 0, x_72); +lean_ctor_set(x_80, 1, x_79); +x_81 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__19; +lean_inc(x_72); +x_82 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_82, 0, x_72); +lean_ctor_set(x_82, 1, x_81); +x_83 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__18; +lean_inc(x_72); +x_84 = l_Lean_Syntax_node1(x_72, x_83, x_82); +x_85 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__16; +lean_inc(x_72); +x_86 = l_Lean_Syntax_node2(x_72, x_85, x_80, x_84); +x_87 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6; +lean_inc(x_72); +x_88 = l_Lean_Syntax_node4(x_72, x_87, x_76, x_11, x_78, x_86); +x_89 = l_Lean_Parser_Tactic_tacticRefine__lift_____closed__2; +x_90 = l_Lean_Syntax_node2(x_72, x_89, x_74, x_88); +x_91 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_91, 0, x_90); +lean_ctor_set(x_91, 1, x_3); +return x_91; +} +else +{ +lean_object* x_92; lean_object* x_93; uint8_t x_94; +x_92 = l_Lean_Syntax_getArg(x_68, x_8); +lean_dec(x_68); +x_93 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__10; +lean_inc(x_92); +x_94 = l_Lean_Syntax_isOfKind(x_92, x_93); +if (x_94 == 0) +{ +lean_object* x_95; uint8_t 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_dec(x_92); +lean_dec(x_66); +lean_dec(x_41); +lean_dec(x_16); +lean_dec(x_9); +x_95 = lean_ctor_get(x_2, 5); +lean_inc(x_95); +lean_dec(x_2); +x_96 = 0; +x_97 = l_Lean_SourceInfo_fromRef(x_95, x_96); +x_98 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; +lean_inc(x_97); +x_99 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_99, 0, x_97); +lean_ctor_set(x_99, 1, x_98); +x_100 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5; +lean_inc(x_97); +x_101 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_101, 0, x_97); +lean_ctor_set(x_101, 1, x_100); +x_102 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__rwSeq__1___closed__2; +lean_inc(x_97); +x_103 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_103, 0, x_97); +lean_ctor_set(x_103, 1, x_102); +x_104 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__17; +lean_inc(x_97); +x_105 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_105, 0, x_97); +lean_ctor_set(x_105, 1, x_104); +x_106 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__19; +lean_inc(x_97); +x_107 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_107, 0, x_97); +lean_ctor_set(x_107, 1, x_106); +x_108 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__18; +lean_inc(x_97); +x_109 = l_Lean_Syntax_node1(x_97, x_108, x_107); +x_110 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__16; +lean_inc(x_97); +x_111 = l_Lean_Syntax_node2(x_97, x_110, x_105, x_109); +x_112 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6; +lean_inc(x_97); +x_113 = l_Lean_Syntax_node4(x_97, x_112, x_101, x_11, x_103, x_111); +x_114 = l_Lean_Parser_Tactic_tacticRefine__lift_____closed__2; +x_115 = l_Lean_Syntax_node2(x_97, x_114, x_99, x_113); +x_116 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_116, 0, x_115); +lean_ctor_set(x_116, 1, x_3); +return x_116; +} +else +{ +lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; uint8_t x_121; +x_117 = l_Lean_Syntax_getArg(x_92, x_10); +lean_dec(x_92); +x_118 = lean_unsigned_to_nat(4u); +x_119 = l_Lean_Syntax_getArg(x_16, x_118); +lean_dec(x_16); +x_120 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__12; +lean_inc(x_119); +x_121 = l_Lean_Syntax_isOfKind(x_119, x_120); +if (x_121 == 0) +{ +lean_object* x_122; uint8_t 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_dec(x_119); +lean_dec(x_117); +lean_dec(x_66); +lean_dec(x_41); +lean_dec(x_9); +x_122 = lean_ctor_get(x_2, 5); +lean_inc(x_122); +lean_dec(x_2); +x_123 = 0; +x_124 = l_Lean_SourceInfo_fromRef(x_122, x_123); +x_125 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; +lean_inc(x_124); +x_126 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_126, 0, x_124); +lean_ctor_set(x_126, 1, x_125); +x_127 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5; +lean_inc(x_124); +x_128 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_128, 0, x_124); +lean_ctor_set(x_128, 1, x_127); +x_129 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__rwSeq__1___closed__2; +lean_inc(x_124); +x_130 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_130, 0, x_124); +lean_ctor_set(x_130, 1, x_129); +x_131 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__17; +lean_inc(x_124); +x_132 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_132, 0, x_124); +lean_ctor_set(x_132, 1, x_131); +x_133 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__19; +lean_inc(x_124); +x_134 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_134, 0, x_124); +lean_ctor_set(x_134, 1, x_133); +x_135 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__18; +lean_inc(x_124); +x_136 = l_Lean_Syntax_node1(x_124, x_135, x_134); +x_137 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__16; +lean_inc(x_124); +x_138 = l_Lean_Syntax_node2(x_124, x_137, x_132, x_136); +x_139 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6; +lean_inc(x_124); +x_140 = l_Lean_Syntax_node4(x_124, x_139, x_128, x_11, x_130, x_138); +x_141 = l_Lean_Parser_Tactic_tacticRefine__lift_____closed__2; +x_142 = l_Lean_Syntax_node2(x_124, x_141, x_126, x_140); +x_143 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_143, 0, x_142); +lean_ctor_set(x_143, 1, x_3); +return x_143; +} +else +{ +lean_object* x_144; lean_object* x_145; lean_object* x_146; uint8_t x_147; +x_144 = l_Lean_Syntax_getArg(x_119, x_8); +x_145 = l_Lean_Syntax_getArg(x_119, x_10); +lean_dec(x_119); +x_146 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticTry____1___closed__1; +lean_inc(x_145); +x_147 = l_Lean_Syntax_isOfKind(x_145, x_146); +if (x_147 == 0) +{ +lean_object* x_148; uint8_t 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_dec(x_145); +lean_dec(x_144); +lean_dec(x_117); +lean_dec(x_66); +lean_dec(x_41); +lean_dec(x_9); +x_148 = lean_ctor_get(x_2, 5); +lean_inc(x_148); +lean_dec(x_2); +x_149 = 0; +x_150 = l_Lean_SourceInfo_fromRef(x_148, x_149); +x_151 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; +lean_inc(x_150); +x_152 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_152, 0, x_150); +lean_ctor_set(x_152, 1, x_151); +x_153 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5; +lean_inc(x_150); +x_154 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_154, 0, x_150); +lean_ctor_set(x_154, 1, x_153); +x_155 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__rwSeq__1___closed__2; +lean_inc(x_150); +x_156 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_156, 0, x_150); +lean_ctor_set(x_156, 1, x_155); +x_157 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__17; +lean_inc(x_150); +x_158 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_158, 0, x_150); +lean_ctor_set(x_158, 1, x_157); +x_159 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__19; +lean_inc(x_150); +x_160 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_160, 0, x_150); +lean_ctor_set(x_160, 1, x_159); +x_161 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__18; +lean_inc(x_150); +x_162 = l_Lean_Syntax_node1(x_150, x_161, x_160); +x_163 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__16; +lean_inc(x_150); +x_164 = l_Lean_Syntax_node2(x_150, x_163, x_158, x_162); +x_165 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6; +lean_inc(x_150); +x_166 = l_Lean_Syntax_node4(x_150, x_165, x_154, x_11, x_156, x_164); +x_167 = l_Lean_Parser_Tactic_tacticRefine__lift_____closed__2; +x_168 = l_Lean_Syntax_node2(x_150, x_167, x_152, 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_3); +return x_169; +} +else +{ +lean_object* x_170; lean_object* x_171; uint8_t x_172; +x_170 = l_Lean_Syntax_getArg(x_145, x_8); +lean_dec(x_145); +x_171 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticTry____1___closed__3; +lean_inc(x_170); +x_172 = l_Lean_Syntax_isOfKind(x_170, x_171); +if (x_172 == 0) +{ +lean_object* x_173; uint8_t 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_dec(x_170); +lean_dec(x_144); +lean_dec(x_117); +lean_dec(x_66); +lean_dec(x_41); +lean_dec(x_9); +x_173 = lean_ctor_get(x_2, 5); +lean_inc(x_173); +lean_dec(x_2); +x_174 = 0; +x_175 = l_Lean_SourceInfo_fromRef(x_173, x_174); +x_176 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; +lean_inc(x_175); +x_177 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_177, 0, x_175); +lean_ctor_set(x_177, 1, x_176); +x_178 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5; +lean_inc(x_175); +x_179 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_179, 0, x_175); +lean_ctor_set(x_179, 1, x_178); +x_180 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__rwSeq__1___closed__2; +lean_inc(x_175); +x_181 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_181, 0, x_175); +lean_ctor_set(x_181, 1, x_180); +x_182 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__17; +lean_inc(x_175); +x_183 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_183, 0, x_175); +lean_ctor_set(x_183, 1, x_182); +x_184 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__19; +lean_inc(x_175); +x_185 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_185, 0, x_175); +lean_ctor_set(x_185, 1, x_184); +x_186 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__18; +lean_inc(x_175); +x_187 = l_Lean_Syntax_node1(x_175, x_186, x_185); +x_188 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__16; +lean_inc(x_175); +x_189 = l_Lean_Syntax_node2(x_175, x_188, x_183, x_187); +x_190 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6; +lean_inc(x_175); +x_191 = l_Lean_Syntax_node4(x_175, x_190, x_179, x_11, x_181, x_189); +x_192 = l_Lean_Parser_Tactic_tacticRefine__lift_____closed__2; +x_193 = l_Lean_Syntax_node2(x_175, x_192, x_177, x_191); +x_194 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_194, 0, x_193); +lean_ctor_set(x_194, 1, x_3); +return x_194; +} +else +{ +lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; uint8_t 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; lean_object* x_219; 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; 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; 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; 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_dec(x_11); +x_195 = l_Lean_Syntax_getArg(x_170, x_8); +lean_dec(x_170); +x_196 = l_Lean_Syntax_getArgs(x_195); +lean_dec(x_195); +x_197 = l_Lean_Syntax_getArgs(x_66); +lean_dec(x_66); +x_198 = lean_ctor_get(x_2, 5); +lean_inc(x_198); +x_199 = l_Lean_replaceRef(x_144, x_198); +x_200 = 0; +x_201 = l_Lean_SourceInfo_fromRef(x_199, x_200); +x_202 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tactic___x3c_x3b_x3e____1___closed__1; +lean_inc(x_201); +x_203 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_203, 0, x_201); +lean_ctor_set(x_203, 1, x_202); +x_204 = l_Lean_Parser_Tactic_paren___closed__3; +lean_inc(x_201); +x_205 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_205, 0, x_201); +lean_ctor_set(x_205, 1, x_204); +x_206 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticNext___x3d_x3e____1___closed__5; +x_207 = l_Array_appendCore___rarg(x_206, x_196); +lean_dec(x_196); +x_208 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__14; +lean_inc(x_201); +x_209 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_209, 0, x_201); +lean_ctor_set(x_209, 1, x_208); +lean_ctor_set(x_209, 2, x_207); +lean_inc(x_201); +x_210 = l_Lean_Syntax_node1(x_201, x_171, x_209); +lean_inc(x_201); +x_211 = l_Lean_Syntax_node1(x_201, x_146, x_210); +x_212 = l_Lean_Parser_Tactic_paren___closed__9; +lean_inc(x_201); +x_213 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_213, 0, x_201); +lean_ctor_set(x_213, 1, x_212); +x_214 = l_Lean_Parser_Tactic_paren___closed__2; +lean_inc(x_201); +x_215 = l_Lean_Syntax_node3(x_201, x_214, x_205, x_211, x_213); +x_216 = l_Lean_Parser_Tactic_withAnnotateState___closed__5; +lean_inc(x_201); +x_217 = l_Lean_Syntax_node3(x_201, x_216, x_203, x_144, x_215); +lean_inc(x_198); +x_218 = l_Lean_SourceInfo_fromRef(x_198, x_200); +lean_inc(x_218); +x_219 = l_Lean_Syntax_node1(x_218, x_208, x_217); +lean_inc(x_218); +x_220 = l_Lean_Syntax_node1(x_218, x_171, x_219); +x_221 = l_Lean_Syntax_node1(x_218, x_146, x_220); +x_222 = lean_ctor_get(x_2, 1); +lean_inc(x_222); +x_223 = lean_ctor_get(x_2, 2); +lean_inc(x_223); +lean_dec(x_2); +x_224 = l_Lean_Parser_Tactic_case___closed__1; +lean_inc(x_201); +x_225 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_225, 0, x_201); +lean_ctor_set(x_225, 1, x_224); +x_226 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__15; +x_227 = l_Lean_addMacroScope(x_222, x_226, x_223); +x_228 = lean_box(0); +x_229 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__14; +lean_inc(x_227); +lean_inc(x_201); +x_230 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_230, 0, x_201); +lean_ctor_set(x_230, 1, x_229); +lean_ctor_set(x_230, 2, x_227); +lean_ctor_set(x_230, 3, x_228); +x_231 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticNext___x3d_x3e____1___closed__2; +lean_inc(x_201); +x_232 = l_Lean_Syntax_node1(x_201, x_231, x_230); +lean_inc(x_201); +x_233 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_233, 0, x_201); +lean_ctor_set(x_233, 1, x_208); +lean_ctor_set(x_233, 2, x_206); +x_234 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticNext___x3d_x3e____1___closed__4; +lean_inc(x_201); +x_235 = l_Lean_Syntax_node2(x_201, x_234, x_232, x_233); +lean_inc(x_201); +x_236 = l_Lean_Syntax_node1(x_201, x_208, x_235); +x_237 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticNext___x3d_x3e____1___closed__6; +lean_inc(x_201); +x_238 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_238, 0, x_201); +lean_ctor_set(x_238, 1, x_237); +x_239 = l_Lean_Parser_Tactic_case___closed__2; +x_240 = l_Lean_Syntax_node4(x_201, x_239, x_225, x_236, x_238, x_221); +x_241 = l_Lean_replaceRef(x_9, x_198); +lean_dec(x_198); +lean_dec(x_9); +x_242 = l_Lean_SourceInfo_fromRef(x_241, x_200); +x_243 = l_Lean_Parser_Tactic_focus___closed__1; +lean_inc(x_242); +x_244 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_244, 0, x_242); +lean_ctor_set(x_244, 1, x_243); +x_245 = l_Lean_Parser_Tactic_refine___closed__1; +lean_inc(x_242); +x_246 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_246, 0, x_242); +lean_ctor_set(x_246, 1, x_245); +x_247 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticRefine__lift____1___closed__3; +lean_inc(x_242); +x_248 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_248, 0, x_242); +lean_ctor_set(x_248, 1, x_247); +lean_inc(x_242); +x_249 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_249, 0, x_242); +lean_ctor_set(x_249, 1, x_204); +x_250 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5; +lean_inc(x_242); +x_251 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_251, 0, x_242); +lean_ctor_set(x_251, 1, x_250); +x_252 = l_Array_appendCore___rarg(x_206, x_197); +lean_dec(x_197); +lean_inc(x_242); +x_253 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_253, 0, x_242); +lean_ctor_set(x_253, 1, x_208); +lean_ctor_set(x_253, 2, x_252); +x_254 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__17; +lean_inc(x_242); +x_255 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_255, 0, x_242); +lean_ctor_set(x_255, 1, x_254); +lean_inc(x_242); +x_256 = l_Lean_Syntax_node2(x_242, x_93, x_255, x_117); +lean_inc(x_242); +x_257 = l_Lean_Syntax_node1(x_242, x_208, x_256); +x_258 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__18; +lean_inc(x_242); +x_259 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_259, 0, x_242); +lean_ctor_set(x_259, 1, x_258); +x_260 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__17; +lean_inc(x_242); +x_261 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_261, 0, x_242); +lean_ctor_set(x_261, 1, x_260); +lean_inc(x_242); +x_262 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_262, 0, x_242); +lean_ctor_set(x_262, 1, x_229); +lean_ctor_set(x_262, 2, x_227); +lean_ctor_set(x_262, 3, x_228); +x_263 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__16; +lean_inc(x_261); +lean_inc(x_242); +x_264 = l_Lean_Syntax_node2(x_242, x_263, x_261, x_262); +lean_inc(x_242); +x_265 = l_Lean_Syntax_node5(x_242, x_17, x_41, x_253, x_257, x_259, x_264); +lean_inc(x_242); +x_266 = l_Lean_Syntax_node1(x_242, x_12, x_265); +x_267 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__rwSeq__1___closed__2; +lean_inc(x_242); +x_268 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_268, 0, x_242); +lean_ctor_set(x_268, 1, x_267); +x_269 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__19; +lean_inc(x_242); +x_270 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_270, 0, x_242); +lean_ctor_set(x_270, 1, x_269); +x_271 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__18; +lean_inc(x_242); +x_272 = l_Lean_Syntax_node1(x_242, x_271, x_270); +lean_inc(x_242); +x_273 = l_Lean_Syntax_node2(x_242, x_263, x_261, x_272); +x_274 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6; +lean_inc(x_242); +x_275 = l_Lean_Syntax_node4(x_242, x_274, x_251, x_266, x_268, x_273); +lean_inc(x_242); +x_276 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_276, 0, x_242); +lean_ctor_set(x_276, 1, x_212); +x_277 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__16; +lean_inc(x_242); +x_278 = l_Lean_Syntax_node3(x_242, x_277, x_249, x_275, x_276); +x_279 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticRefine__lift____1___closed__2; +lean_inc(x_242); +x_280 = l_Lean_Syntax_node2(x_242, x_279, x_248, x_278); +x_281 = l_Lean_Parser_Tactic_refine___closed__2; +lean_inc(x_242); +x_282 = l_Lean_Syntax_node2(x_242, x_281, x_246, x_280); +lean_inc(x_242); +x_283 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_283, 0, x_242); +lean_ctor_set(x_283, 1, x_208); +lean_ctor_set(x_283, 2, x_206); +lean_inc(x_242); +x_284 = l_Lean_Syntax_node3(x_242, x_208, x_282, x_283, x_240); +lean_inc(x_242); +x_285 = l_Lean_Syntax_node1(x_242, x_171, x_284); +lean_inc(x_242); +x_286 = l_Lean_Syntax_node1(x_242, x_146, x_285); +x_287 = l_Lean_Parser_Tactic_focus___closed__2; +x_288 = l_Lean_Syntax_node2(x_242, x_287, x_244, x_286); +x_289 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_289, 0, x_288); +lean_ctor_set(x_289, 1, x_3); +return x_289; +} +} +} +} +} +} +} +} } } } @@ -13554,7 +14332,7 @@ lean_inc(x_10); lean_dec(x_2); x_11 = 0; x_12 = l_Lean_SourceInfo_fromRef(x_10, x_11); -x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__1; +x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; lean_inc(x_12); x_14 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_14, 0, x_12); @@ -13750,7 +14528,7 @@ lean_inc(x_10); lean_dec(x_2); x_11 = 0; x_12 = l_Lean_SourceInfo_fromRef(x_10, x_11); -x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__1; +x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; lean_inc(x_12); x_14 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_14, 0, x_12); @@ -13946,7 +14724,7 @@ lean_inc(x_10); lean_dec(x_2); x_11 = 0; x_12 = l_Lean_SourceInfo_fromRef(x_10, x_11); -x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__1; +x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; lean_inc(x_12); x_14 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_14, 0, x_12); @@ -14193,7 +14971,7 @@ lean_inc(x_10); lean_dec(x_2); x_11 = 0; x_12 = l_Lean_SourceInfo_fromRef(x_10, x_11); -x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__1; +x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; lean_inc(x_12); x_14 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_14, 0, x_12); @@ -14544,7 +15322,7 @@ lean_inc(x_12); x_14 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_14, 0, x_12); lean_ctor_set(x_14, 1, x_13); -x_15 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__2; +x_15 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5; lean_inc(x_12); x_16 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_16, 0, x_12); @@ -14570,7 +15348,7 @@ x_24 = l_Lean_Syntax_node1(x_12, x_23, x_22); x_25 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__16; lean_inc(x_12); x_26 = l_Lean_Syntax_node2(x_12, x_25, x_20, x_24); -x_27 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__3; +x_27 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6; lean_inc(x_12); x_28 = l_Lean_Syntax_node4(x_12, x_27, x_16, x_9, x_18, x_26); x_29 = l_Lean_Parser_Tactic_tacticRefine__lift_x27_____closed__2; @@ -14686,94 +15464,6 @@ x_1 = l_Lean_Parser_Tactic_tacticHave_x27___x3a_x3d_____closed__8; return x_1; } } -static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___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_Lean_Parser_Tactic_withAnnotateState___closed__1; -x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; -x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; -x_4 = l_Lean_Parser_Tactic_tacticHave_____closed__5; -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___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("haveIdDecl", 10); -return x_1; -} -} -static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____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_Parser_Tactic_withAnnotateState___closed__1; -x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; -x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; -x_4 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____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_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__4() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("haveId", 6); -return x_1; -} -} -static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___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_Parser_Tactic_withAnnotateState___closed__1; -x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; -x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; -x_4 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___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_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__6() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("typeSpec", 8); -return x_1; -} -} -static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___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_Parser_Tactic_withAnnotateState___closed__1; -x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; -x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; -x_4 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___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_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__8() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes(":", 1); -return x_1; -} -} -static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__9() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes(":=", 2); -return x_1; -} -} LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -14810,7 +15500,7 @@ lean_inc(x_14); x_16 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_16, 0, x_14); lean_ctor_set(x_16, 1, x_15); -x_17 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__5; +x_17 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__8; lean_inc(x_14); x_18 = l_Lean_Syntax_node1(x_14, x_17, x_9); x_19 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__14; @@ -14820,7 +15510,7 @@ x_21 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_21, 0, x_14); lean_ctor_set(x_21, 1, x_19); lean_ctor_set(x_21, 2, x_20); -x_22 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__8; +x_22 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__17; lean_inc(x_14); x_23 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_23, 0, x_14); @@ -14833,20 +15523,20 @@ lean_ctor_set(x_25, 1, x_24); x_26 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__18; lean_inc(x_14); x_27 = l_Lean_Syntax_node1(x_14, x_26, x_25); -x_28 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__7; +x_28 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__10; lean_inc(x_14); x_29 = l_Lean_Syntax_node2(x_14, x_28, x_23, x_27); lean_inc(x_14); x_30 = l_Lean_Syntax_node1(x_14, x_19, x_29); -x_31 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__9; +x_31 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__18; lean_inc(x_14); x_32 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_32, 0, x_14); lean_ctor_set(x_32, 1, x_31); -x_33 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__3; +x_33 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__3; lean_inc(x_14); x_34 = l_Lean_Syntax_node5(x_14, x_33, x_18, x_21, x_30, x_32, x_11); -x_35 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__1; +x_35 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__1; lean_inc(x_14); x_36 = l_Lean_Syntax_node1(x_14, x_35, x_34); x_37 = l_Lean_Parser_Tactic_tacticHave_x27_____closed__2; @@ -16387,6 +17077,158 @@ return x_47; } } } +static lean_object* _init_l_Lean_Parser_Tactic_repeat_x27___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("repeat'", 7); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Tactic_repeat_x27___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_Tactic_withAnnotateState___closed__1; +x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; +x_3 = l_Lean_Parser_Tactic_withAnnotateState___closed__3; +x_4 = l_Lean_Parser_Tactic_repeat_x27___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_Parser_Tactic_repeat_x27___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("repeat' ", 8); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Tactic_repeat_x27___closed__4() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Tactic_repeat_x27___closed__3; +x_2 = 0; +x_3 = lean_alloc_ctor(6, 1, 1); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Tactic_repeat_x27___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Tactic_withAnnotateState___closed__7; +x_2 = l_Lean_Parser_Tactic_repeat_x27___closed__4; +x_3 = l_Lean_Parser_Tactic_case___closed__12; +x_4 = lean_alloc_ctor(2, 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_Parser_Tactic_repeat_x27___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Tactic_repeat_x27___closed__2; +x_2 = lean_unsigned_to_nat(1022u); +x_3 = l_Lean_Parser_Tactic_repeat_x27___closed__5; +x_4 = lean_alloc_ctor(3, 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_Parser_Tactic_repeat_x27() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Tactic_repeat_x27___closed__6; +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Tactic_repeat1_x27___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("repeat1'", 8); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Tactic_repeat1_x27___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_Tactic_withAnnotateState___closed__1; +x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; +x_3 = l_Lean_Parser_Tactic_withAnnotateState___closed__3; +x_4 = l_Lean_Parser_Tactic_repeat1_x27___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_Parser_Tactic_repeat1_x27___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("repeat1' ", 9); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Tactic_repeat1_x27___closed__4() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Tactic_repeat1_x27___closed__3; +x_2 = 0; +x_3 = lean_alloc_ctor(6, 1, 1); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Tactic_repeat1_x27___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Tactic_withAnnotateState___closed__7; +x_2 = l_Lean_Parser_Tactic_repeat1_x27___closed__4; +x_3 = l_Lean_Parser_Tactic_case___closed__12; +x_4 = lean_alloc_ctor(2, 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_Parser_Tactic_repeat1_x27___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Tactic_repeat1_x27___closed__2; +x_2 = lean_unsigned_to_nat(1022u); +x_3 = l_Lean_Parser_Tactic_repeat1_x27___closed__5; +x_4 = lean_alloc_ctor(3, 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_Parser_Tactic_repeat1_x27() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Tactic_repeat1_x27___closed__6; +return x_1; +} +} static lean_object* _init_l_Lean_Parser_Tactic_tacticTrivial___closed__1() { _start: { @@ -18888,158 +19730,6 @@ x_1 = l_Lean_Parser_Tactic_replace___closed__5; return x_1; } } -static lean_object* _init_l_Lean_Parser_Tactic_repeat_x27___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("repeat'", 7); -return x_1; -} -} -static lean_object* _init_l_Lean_Parser_Tactic_repeat_x27___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_Tactic_withAnnotateState___closed__1; -x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; -x_3 = l_Lean_Parser_Tactic_withAnnotateState___closed__3; -x_4 = l_Lean_Parser_Tactic_repeat_x27___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_Parser_Tactic_repeat_x27___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("repeat' ", 8); -return x_1; -} -} -static lean_object* _init_l_Lean_Parser_Tactic_repeat_x27___closed__4() { -_start: -{ -lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_repeat_x27___closed__3; -x_2 = 0; -x_3 = lean_alloc_ctor(6, 1, 1); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Parser_Tactic_repeat_x27___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Tactic_withAnnotateState___closed__7; -x_2 = l_Lean_Parser_Tactic_repeat_x27___closed__4; -x_3 = l_Lean_Parser_Tactic_case___closed__12; -x_4 = lean_alloc_ctor(2, 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_Parser_Tactic_repeat_x27___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Tactic_repeat_x27___closed__2; -x_2 = lean_unsigned_to_nat(1022u); -x_3 = l_Lean_Parser_Tactic_repeat_x27___closed__5; -x_4 = lean_alloc_ctor(3, 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_Parser_Tactic_repeat_x27() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_repeat_x27___closed__6; -return x_1; -} -} -static lean_object* _init_l_Lean_Parser_Tactic_repeat1_x27___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("repeat1'", 8); -return x_1; -} -} -static lean_object* _init_l_Lean_Parser_Tactic_repeat1_x27___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_Tactic_withAnnotateState___closed__1; -x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; -x_3 = l_Lean_Parser_Tactic_withAnnotateState___closed__3; -x_4 = l_Lean_Parser_Tactic_repeat1_x27___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_Parser_Tactic_repeat1_x27___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("repeat1' ", 9); -return x_1; -} -} -static lean_object* _init_l_Lean_Parser_Tactic_repeat1_x27___closed__4() { -_start: -{ -lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Tactic_repeat1_x27___closed__3; -x_2 = 0; -x_3 = lean_alloc_ctor(6, 1, 1); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Parser_Tactic_repeat1_x27___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Tactic_withAnnotateState___closed__7; -x_2 = l_Lean_Parser_Tactic_repeat1_x27___closed__4; -x_3 = l_Lean_Parser_Tactic_case___closed__12; -x_4 = lean_alloc_ctor(2, 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_Parser_Tactic_repeat1_x27___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Parser_Tactic_repeat1_x27___closed__2; -x_2 = lean_unsigned_to_nat(1022u); -x_3 = l_Lean_Parser_Tactic_repeat1_x27___closed__5; -x_4 = lean_alloc_ctor(3, 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_Parser_Tactic_repeat1_x27() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_Parser_Tactic_repeat1_x27___closed__6; -return x_1; -} -} static lean_object* _init_l_Lean_Parser_Tactic_tacticAnd__intros___closed__1() { _start: { @@ -19476,7 +20166,7 @@ lean_inc(x_10); lean_dec(x_2); x_11 = 0; x_12 = l_Lean_SourceInfo_fromRef(x_10, x_11); -x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__1; +x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; lean_inc(x_12); x_14 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_14, 0, x_12); @@ -19636,7 +20326,7 @@ lean_inc(x_10); lean_dec(x_2); x_11 = 0; x_12 = l_Lean_SourceInfo_fromRef(x_10, x_11); -x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__1; +x_13 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4; lean_inc(x_12); x_14 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_14, 0, x_12); @@ -22166,36 +22856,24 @@ return x_1; static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___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_Lean_Parser_Tactic_withAnnotateState___closed__1; -x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; -x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; -x_4 = l_Lean_Parser_Tactic_paren___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_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__2() { -_start: -{ lean_object* x_1; x_1 = lean_mk_string_from_bytes("showTermElabImpl", 16); return x_1; } } -static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__3() { +static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__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_Tactic_withAnnotateState___closed__1; x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; -x_4 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__2; +x_4 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__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_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__4() { +static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__3() { _start: { lean_object* x_1; @@ -22246,11 +22924,11 @@ lean_ctor_set(x_18, 0, x_14); lean_ctor_set(x_18, 1, x_17); x_19 = 1; x_20 = l_Lean_SourceInfo_fromRef(x_9, x_19); -x_21 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__4; +x_21 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__3; x_22 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_22, 0, x_20); lean_ctor_set(x_22, 1, x_21); -x_23 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__3; +x_23 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__2; lean_inc(x_14); x_24 = l_Lean_Syntax_node2(x_14, x_23, x_22, x_11); x_25 = l_Lean_Parser_Tactic_paren___closed__9; @@ -22258,7 +22936,7 @@ lean_inc(x_14); x_26 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_26, 0, x_14); lean_ctor_set(x_26, 1, x_25); -x_27 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__1; +x_27 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__16; lean_inc(x_14); x_28 = l_Lean_Syntax_node3(x_14, x_27, x_18, x_24, x_26); x_29 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticRefine__lift____1___closed__2; @@ -22348,26 +23026,6 @@ static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRu _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("byTactic", 8); -return x_1; -} -} -static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__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_Parser_Tactic_withAnnotateState___closed__1; -x_2 = l_Lean_Parser_Tactic_withAnnotateState___closed__2; -x_3 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticExfalso__1___closed__1; -x_4 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__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_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__4() { -_start: -{ -lean_object* x_1; x_1 = lean_mk_string_from_bytes("by", 2); return x_1; } @@ -22410,11 +23068,11 @@ lean_inc(x_16); x_18 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_18, 0, x_16); lean_ctor_set(x_18, 1, x_17); -x_19 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__4; +x_19 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__2; x_20 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_20, 0, x_16); lean_ctor_set(x_20, 1, x_19); -x_21 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__3; +x_21 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__12; lean_inc(x_14); x_22 = l_Lean_Syntax_node2(x_14, x_21, x_20, x_11); x_23 = l_Lean_Parser_Tactic_showTermElab___closed__2; @@ -23142,7 +23800,7 @@ lean_inc(x_12); x_14 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_14, 0, x_12); lean_ctor_set(x_14, 1, x_13); -x_15 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__4; +x_15 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__2; lean_inc(x_12); x_16 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_16, 0, x_12); @@ -23164,10 +23822,10 @@ x_24 = l_Lean_Syntax_node1(x_12, x_23, x_22); x_25 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticTry____1___closed__1; lean_inc(x_12); x_26 = l_Lean_Syntax_node1(x_12, x_25, x_24); -x_27 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__3; +x_27 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__12; lean_inc(x_12); x_28 = l_Lean_Syntax_node2(x_12, x_27, x_16, x_26); -x_29 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__8; +x_29 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__17; lean_inc(x_12); x_30 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_30, 0, x_12); @@ -23540,7 +24198,7 @@ lean_inc(x_10); x_18 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_18, 0, x_10); lean_ctor_set(x_18, 1, x_17); -x_19 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__9; +x_19 = l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__18; lean_inc(x_10); x_20 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_20, 0, x_10); @@ -25724,6 +26382,36 @@ l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic_ lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__2); l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__3 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__3(); lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__3); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__4); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__5); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__6); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__7 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__7(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__7); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__8 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__8(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__8); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__9 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__9(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__9); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__10 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__10(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__10); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__11 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__11(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__11); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__12 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__12(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__12); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__13 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__13(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__13); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__14 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__14(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__14); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__15 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__15(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__15); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__16 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__16(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__16); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__17 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__17(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__17); +l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__18 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__18(); +lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave____1___closed__18); l_Lean_Parser_Tactic_tacticSuffices_____closed__1 = _init_l_Lean_Parser_Tactic_tacticSuffices_____closed__1(); lean_mark_persistent(l_Lean_Parser_Tactic_tacticSuffices_____closed__1); l_Lean_Parser_Tactic_tacticSuffices_____closed__2 = _init_l_Lean_Parser_Tactic_tacticSuffices_____closed__2(); @@ -25876,24 +26564,6 @@ l_Lean_Parser_Tactic_tacticHave_x27___x3a_x3d_____closed__8 = _init_l_Lean_Parse lean_mark_persistent(l_Lean_Parser_Tactic_tacticHave_x27___x3a_x3d_____closed__8); l_Lean_Parser_Tactic_tacticHave_x27___x3a_x3d__ = _init_l_Lean_Parser_Tactic_tacticHave_x27___x3a_x3d__(); lean_mark_persistent(l_Lean_Parser_Tactic_tacticHave_x27___x3a_x3d__); -l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__1 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__1(); -lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__1); -l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__2 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__2(); -lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__2); -l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__3 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__3(); -lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__3); -l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__4 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__4(); -lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__4); -l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__5 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__5(); -lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__5); -l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__6 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__6(); -lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__6); -l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__7 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__7(); -lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__7); -l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__8 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__8(); -lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__8); -l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__9 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__9(); -lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticHave_x27___x3a_x3d____1___closed__9); l_Lean_Parser_Tactic_tacticLet_x27_____closed__1 = _init_l_Lean_Parser_Tactic_tacticLet_x27_____closed__1(); lean_mark_persistent(l_Lean_Parser_Tactic_tacticLet_x27_____closed__1); l_Lean_Parser_Tactic_tacticLet_x27_____closed__2 = _init_l_Lean_Parser_Tactic_tacticLet_x27_____closed__2(); @@ -26126,6 +26796,34 @@ l_Lean_Parser_Tactic_tacticRepeat__ = _init_l_Lean_Parser_Tactic_tacticRepeat__( lean_mark_persistent(l_Lean_Parser_Tactic_tacticRepeat__); l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticRepeat____1___closed__1 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticRepeat____1___closed__1(); lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__tacticRepeat____1___closed__1); +l_Lean_Parser_Tactic_repeat_x27___closed__1 = _init_l_Lean_Parser_Tactic_repeat_x27___closed__1(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27___closed__1); +l_Lean_Parser_Tactic_repeat_x27___closed__2 = _init_l_Lean_Parser_Tactic_repeat_x27___closed__2(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27___closed__2); +l_Lean_Parser_Tactic_repeat_x27___closed__3 = _init_l_Lean_Parser_Tactic_repeat_x27___closed__3(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27___closed__3); +l_Lean_Parser_Tactic_repeat_x27___closed__4 = _init_l_Lean_Parser_Tactic_repeat_x27___closed__4(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27___closed__4); +l_Lean_Parser_Tactic_repeat_x27___closed__5 = _init_l_Lean_Parser_Tactic_repeat_x27___closed__5(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27___closed__5); +l_Lean_Parser_Tactic_repeat_x27___closed__6 = _init_l_Lean_Parser_Tactic_repeat_x27___closed__6(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27___closed__6); +l_Lean_Parser_Tactic_repeat_x27 = _init_l_Lean_Parser_Tactic_repeat_x27(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27); +l_Lean_Parser_Tactic_repeat1_x27___closed__1 = _init_l_Lean_Parser_Tactic_repeat1_x27___closed__1(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27___closed__1); +l_Lean_Parser_Tactic_repeat1_x27___closed__2 = _init_l_Lean_Parser_Tactic_repeat1_x27___closed__2(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27___closed__2); +l_Lean_Parser_Tactic_repeat1_x27___closed__3 = _init_l_Lean_Parser_Tactic_repeat1_x27___closed__3(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27___closed__3); +l_Lean_Parser_Tactic_repeat1_x27___closed__4 = _init_l_Lean_Parser_Tactic_repeat1_x27___closed__4(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27___closed__4); +l_Lean_Parser_Tactic_repeat1_x27___closed__5 = _init_l_Lean_Parser_Tactic_repeat1_x27___closed__5(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27___closed__5); +l_Lean_Parser_Tactic_repeat1_x27___closed__6 = _init_l_Lean_Parser_Tactic_repeat1_x27___closed__6(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27___closed__6); +l_Lean_Parser_Tactic_repeat1_x27 = _init_l_Lean_Parser_Tactic_repeat1_x27(); +lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27); l_Lean_Parser_Tactic_tacticTrivial___closed__1 = _init_l_Lean_Parser_Tactic_tacticTrivial___closed__1(); lean_mark_persistent(l_Lean_Parser_Tactic_tacticTrivial___closed__1); l_Lean_Parser_Tactic_tacticTrivial___closed__2 = _init_l_Lean_Parser_Tactic_tacticTrivial___closed__2(); @@ -26460,34 +27158,6 @@ l_Lean_Parser_Tactic_replace___closed__5 = _init_l_Lean_Parser_Tactic_replace___ lean_mark_persistent(l_Lean_Parser_Tactic_replace___closed__5); l_Lean_Parser_Tactic_replace = _init_l_Lean_Parser_Tactic_replace(); lean_mark_persistent(l_Lean_Parser_Tactic_replace); -l_Lean_Parser_Tactic_repeat_x27___closed__1 = _init_l_Lean_Parser_Tactic_repeat_x27___closed__1(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27___closed__1); -l_Lean_Parser_Tactic_repeat_x27___closed__2 = _init_l_Lean_Parser_Tactic_repeat_x27___closed__2(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27___closed__2); -l_Lean_Parser_Tactic_repeat_x27___closed__3 = _init_l_Lean_Parser_Tactic_repeat_x27___closed__3(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27___closed__3); -l_Lean_Parser_Tactic_repeat_x27___closed__4 = _init_l_Lean_Parser_Tactic_repeat_x27___closed__4(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27___closed__4); -l_Lean_Parser_Tactic_repeat_x27___closed__5 = _init_l_Lean_Parser_Tactic_repeat_x27___closed__5(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27___closed__5); -l_Lean_Parser_Tactic_repeat_x27___closed__6 = _init_l_Lean_Parser_Tactic_repeat_x27___closed__6(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27___closed__6); -l_Lean_Parser_Tactic_repeat_x27 = _init_l_Lean_Parser_Tactic_repeat_x27(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat_x27); -l_Lean_Parser_Tactic_repeat1_x27___closed__1 = _init_l_Lean_Parser_Tactic_repeat1_x27___closed__1(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27___closed__1); -l_Lean_Parser_Tactic_repeat1_x27___closed__2 = _init_l_Lean_Parser_Tactic_repeat1_x27___closed__2(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27___closed__2); -l_Lean_Parser_Tactic_repeat1_x27___closed__3 = _init_l_Lean_Parser_Tactic_repeat1_x27___closed__3(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27___closed__3); -l_Lean_Parser_Tactic_repeat1_x27___closed__4 = _init_l_Lean_Parser_Tactic_repeat1_x27___closed__4(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27___closed__4); -l_Lean_Parser_Tactic_repeat1_x27___closed__5 = _init_l_Lean_Parser_Tactic_repeat1_x27___closed__5(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27___closed__5); -l_Lean_Parser_Tactic_repeat1_x27___closed__6 = _init_l_Lean_Parser_Tactic_repeat1_x27___closed__6(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27___closed__6); -l_Lean_Parser_Tactic_repeat1_x27 = _init_l_Lean_Parser_Tactic_repeat1_x27(); -lean_mark_persistent(l_Lean_Parser_Tactic_repeat1_x27); l_Lean_Parser_Tactic_tacticAnd__intros___closed__1 = _init_l_Lean_Parser_Tactic_tacticAnd__intros___closed__1(); lean_mark_persistent(l_Lean_Parser_Tactic_tacticAnd__intros___closed__1); l_Lean_Parser_Tactic_tacticAnd__intros___closed__2 = _init_l_Lean_Parser_Tactic_tacticAnd__intros___closed__2(); @@ -26938,8 +27608,6 @@ l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic_ lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__2); l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__3 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__3(); lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__3); -l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__4 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__4(); -lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__showTermElab__1___closed__4); l_Lean_Parser_Tactic_by_x3f___closed__1 = _init_l_Lean_Parser_Tactic_by_x3f___closed__1(); lean_mark_persistent(l_Lean_Parser_Tactic_by_x3f___closed__1); l_Lean_Parser_Tactic_by_x3f___closed__2 = _init_l_Lean_Parser_Tactic_by_x3f___closed__2(); @@ -26956,10 +27624,6 @@ l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic_ lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__1); l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__2 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__2(); lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__2); -l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__3 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__3(); -lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__3); -l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__4 = _init_l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__4(); -lean_mark_persistent(l_Lean_Parser_Tactic___aux__Init__Tactics______macroRules__Lean__Parser__Tactic__by_x3f__1___closed__4); l_Lean_Parser_Attr_simp___closed__1 = _init_l_Lean_Parser_Attr_simp___closed__1(); lean_mark_persistent(l_Lean_Parser_Attr_simp___closed__1); l_Lean_Parser_Attr_simp___closed__2 = _init_l_Lean_Parser_Attr_simp___closed__2(); diff --git a/stage0/stdlib/Lean/Compiler/ConstFolding.c b/stage0/stdlib/Lean/Compiler/ConstFolding.c index 702d95d236e3..564141150c7b 100644 --- a/stage0/stdlib/Lean/Compiler/ConstFolding.c +++ b/stage0/stdlib/Lean/Compiler/ConstFolding.c @@ -139,7 +139,6 @@ LEAN_EXPORT lean_object* l_Lean_Compiler_isOfNat___lambda__1___boxed(lean_object LEAN_EXPORT lean_object* l_Lean_Compiler_foldNatBeq___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_foldUIntDiv___lambda__1(lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_foldNatBle(uint8_t); -LEAN_EXPORT lean_object* l_Lean_Compiler_foldToNat___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_foldStrictAnd(uint8_t); LEAN_EXPORT lean_object* l_Lean_Compiler_uintBinFoldFns; LEAN_EXPORT lean_object* l_List_foldl___at_Lean_Compiler_uintFoldToNatFns___spec__1(lean_object*, lean_object*); @@ -219,7 +218,7 @@ LEAN_EXPORT lean_object* l_Lean_Compiler_NumScalarTypeInfo_toNatFn___default(lea static lean_object* l_Lean_Compiler_mkNatLe___closed__6; LEAN_EXPORT lean_object* l_Lean_Compiler_foldNatDecLt(uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_lookup___at_Lean_Compiler_findBinFoldFn___spec__1___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Compiler_foldToNat___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Compiler_foldToNat___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_uintFoldToNatFns; LEAN_EXPORT lean_object* l_Lean_Compiler_foldNatPow___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Compiler_foldNatDecLe___closed__2; @@ -280,7 +279,6 @@ lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); lean_object* l_Lean_mkDecIsFalse(lean_object*, lean_object*); static lean_object* l_Lean_Compiler_boolFoldFns___closed__4; LEAN_EXPORT lean_object* l_Lean_Compiler_foldNatBle___rarg(lean_object*, lean_object*); -static lean_object* l_List_foldl___at_Lean_Compiler_uintFoldToNatFns___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Compiler_findUnFoldFn___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_mkNatEq(lean_object*, lean_object*); static lean_object* l_Lean_Compiler_toDecidableExpr___closed__4; @@ -362,7 +360,7 @@ static lean_object* l_Lean_Compiler_numScalarTypes___closed__14; LEAN_EXPORT lean_object* l_Lean_Compiler_foldUIntDiv___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_getBoolLit___closed__2; static lean_object* l_Lean_Compiler_toDecidableExpr___closed__7; -LEAN_EXPORT lean_object* l_Lean_Compiler_foldToNat(uint8_t); +LEAN_EXPORT lean_object* l_Lean_Compiler_foldToNat(lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_foldBinUInt___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_foldNatMul___rarg___closed__1; static lean_object* _init_l_Lean_Compiler_mkLcProof___closed__1() { @@ -4177,67 +4175,56 @@ x_4 = l_Lean_Compiler_foldCharOfNat(x_3, x_2); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Compiler_foldToNat___rarg(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Compiler_foldToNat(lean_object* x_1, uint8_t x_2, lean_object* x_3) { _start: { -lean_object* x_2; -x_2 = lean_get_num_lit(x_1); -if (lean_obj_tag(x_2) == 0) +lean_object* x_4; +x_4 = lean_get_num_lit(x_3); +if (lean_obj_tag(x_4) == 0) { -lean_object* x_3; -x_3 = lean_box(0); -return x_3; +lean_object* x_5; +x_5 = lean_box(0); +return x_5; } else { -uint8_t x_4; -x_4 = !lean_is_exclusive(x_2); -if (x_4 == 0) +uint8_t x_6; +x_6 = !lean_is_exclusive(x_4); +if (x_6 == 0) { -lean_object* x_5; lean_object* x_6; -x_5 = lean_ctor_get(x_2, 0); -x_6 = l_Lean_mkRawNatLit(x_5); -lean_ctor_set(x_2, 0, x_6); -return x_2; +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_4, 0); +x_8 = lean_nat_mod(x_7, x_1); +lean_dec(x_7); +x_9 = l_Lean_mkRawNatLit(x_8); +lean_ctor_set(x_4, 0, x_9); +return x_4; } else { -lean_object* x_7; lean_object* x_8; lean_object* x_9; -x_7 = lean_ctor_get(x_2, 0); -lean_inc(x_7); -lean_dec(x_2); -x_8 = l_Lean_mkRawNatLit(x_7); -x_9 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_9, 0, x_8); -return x_9; -} -} +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_10 = lean_ctor_get(x_4, 0); +lean_inc(x_10); +lean_dec(x_4); +x_11 = lean_nat_mod(x_10, x_1); +lean_dec(x_10); +x_12 = l_Lean_mkRawNatLit(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_Compiler_foldToNat(uint8_t x_1) { -_start: -{ -lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Lean_Compiler_foldToNat___rarg), 1, 0); -return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Compiler_foldToNat___boxed(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Compiler_foldToNat___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -uint8_t x_2; lean_object* x_3; -x_2 = lean_unbox(x_1); +uint8_t x_4; lean_object* x_5; +x_4 = lean_unbox(x_2); +lean_dec(x_2); +x_5 = l_Lean_Compiler_foldToNat(x_1, x_4, x_3); lean_dec(x_1); -x_3 = l_Lean_Compiler_foldToNat(x_2); -return x_3; -} -} -static lean_object* _init_l_List_foldl___at_Lean_Compiler_uintFoldToNatFns___spec__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Compiler_foldToNat___boxed), 1, 0); -return x_1; +return x_5; } } LEAN_EXPORT lean_object* l_List_foldl___at_Lean_Compiler_uintFoldToNatFns___spec__1(lean_object* x_1, lean_object* x_2) { @@ -4253,42 +4240,48 @@ 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; lean_object* x_7; lean_object* x_8; +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_2, 0); x_5 = lean_ctor_get(x_2, 1); x_6 = lean_ctor_get(x_4, 3); lean_inc(x_6); +x_7 = lean_ctor_get(x_4, 4); +lean_inc(x_7); lean_dec(x_4); -x_7 = l_List_foldl___at_Lean_Compiler_uintFoldToNatFns___spec__1___closed__1; -x_8 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_8, 0, x_6); -lean_ctor_set(x_8, 1, x_7); +x_8 = lean_alloc_closure((void*)(l_Lean_Compiler_foldToNat___boxed), 3, 1); +lean_closure_set(x_8, 0, x_7); +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_6); +lean_ctor_set(x_9, 1, x_8); lean_ctor_set(x_2, 1, x_1); -lean_ctor_set(x_2, 0, x_8); +lean_ctor_set(x_2, 0, x_9); x_1 = x_2; x_2 = x_5; goto _start; } 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; -x_10 = lean_ctor_get(x_2, 0); -x_11 = lean_ctor_get(x_2, 1); +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_11 = lean_ctor_get(x_2, 0); +x_12 = lean_ctor_get(x_2, 1); +lean_inc(x_12); lean_inc(x_11); -lean_inc(x_10); lean_dec(x_2); -x_12 = lean_ctor_get(x_10, 3); -lean_inc(x_12); -lean_dec(x_10); -x_13 = l_List_foldl___at_Lean_Compiler_uintFoldToNatFns___spec__1___closed__1; -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_12); -lean_ctor_set(x_14, 1, x_13); -x_15 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_15, 0, x_14); -lean_ctor_set(x_15, 1, x_1); -x_1 = x_15; -x_2 = x_11; +x_13 = lean_ctor_get(x_11, 3); +lean_inc(x_13); +x_14 = lean_ctor_get(x_11, 4); +lean_inc(x_14); +lean_dec(x_11); +x_15 = lean_alloc_closure((void*)(l_Lean_Compiler_foldToNat___boxed), 3, 1); +lean_closure_set(x_15, 0, x_14); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_13); +lean_ctor_set(x_16, 1, x_15); +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_1 = x_17; +x_2 = x_12; goto _start; } } @@ -5023,8 +5016,6 @@ l_Lean_Compiler_foldCharOfNat___closed__1 = _init_l_Lean_Compiler_foldCharOfNat_ lean_mark_persistent(l_Lean_Compiler_foldCharOfNat___closed__1); l_Lean_Compiler_foldCharOfNat___closed__2 = _init_l_Lean_Compiler_foldCharOfNat___closed__2(); lean_mark_persistent(l_Lean_Compiler_foldCharOfNat___closed__2); -l_List_foldl___at_Lean_Compiler_uintFoldToNatFns___spec__1___closed__1 = _init_l_List_foldl___at_Lean_Compiler_uintFoldToNatFns___spec__1___closed__1(); -lean_mark_persistent(l_List_foldl___at_Lean_Compiler_uintFoldToNatFns___spec__1___closed__1); l_Lean_Compiler_uintFoldToNatFns = _init_l_Lean_Compiler_uintFoldToNatFns(); lean_mark_persistent(l_Lean_Compiler_uintFoldToNatFns); l_Lean_Compiler_unFoldFns___closed__1 = _init_l_Lean_Compiler_unFoldFns___closed__1(); diff --git a/stage0/stdlib/Lean/CoreM.c b/stage0/stdlib/Lean/CoreM.c index f0c14403ff15..1e66250f69d1 100644 --- a/stage0/stdlib/Lean/CoreM.c +++ b/stage0/stdlib/Lean/CoreM.c @@ -20,6 +20,7 @@ LEAN_EXPORT lean_object* l_Lean_Core_instMonadTraceCoreM; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Core_instantiateTypeLevelParams___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_CoreM_0__Lean_supportedRecursors___closed__3; LEAN_EXPORT lean_object* l_Lean_Core_instMonadLogCoreM___lambda__1(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__6; LEAN_EXPORT lean_object* l_Lean_Core_checkMaxHeartbeats___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Core_instMonadCoreM___closed__1; static lean_object* l_Lean_Core_instMonadCoreM___closed__5; @@ -49,17 +50,17 @@ LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_compileDecl___spec size_t lean_usize_shift_right(size_t, size_t); LEAN_EXPORT lean_object* l_List_elem___at_Lean_catchInternalIds___spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Core_instMetaEvalCoreM___spec__5(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Core_checkInterrupted___closed__1; static lean_object* l_Lean_ImportM_runCoreM___rarg___closed__2; LEAN_EXPORT lean_object* l_Lean_Core_getAndEmptyMessageLog(lean_object*); LEAN_EXPORT lean_object* l_Lean_mkArrow___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__3; static lean_object* l_Lean_useDiagnosticMsg___closed__3; LEAN_EXPORT lean_object* l_Lean_Core_instMonadTraceCoreM___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Core_throwMaxHeartbeat___closed__9; static lean_object* l___private_Lean_CoreM_0__Lean_supportedRecursors___closed__4; lean_object* l_Lean_PersistentArray_toArray___rarg(lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__4; uint8_t l_Lean_Exception_isMaxRecDepth(lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_instMetaEvalCoreM(lean_object*); LEAN_EXPORT lean_object* l_Lean_catchInternalIds___rarg(lean_object*, lean_object*, lean_object*, lean_object*); @@ -103,6 +104,7 @@ lean_object* lean_array_push(lean_object*, lean_object*); static lean_object* l_Lean_Core_getMaxHeartbeats___closed__1; static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_80____closed__5; LEAN_EXPORT lean_object* l_Lean_Core_instMonadRecDepthCoreM___lambda__2___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_getMessageLog___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_checkSystem(lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_mul(size_t, size_t); @@ -121,7 +123,6 @@ static lean_object* l___private_Lean_CoreM_0__Lean_supportedRecursors___closed__ LEAN_EXPORT lean_object* l_List_foldlM___at___private_Lean_CoreM_0__Lean_checkUnsupported___spec__4___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT 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_Core_initFn____x40_Lean_CoreM___hyg_2786____closed__2; lean_object* lean_array_fget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_liftIOCore___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); @@ -170,8 +171,8 @@ uint8_t lean_string_dec_eq(lean_object*, lean_object*); static lean_object* l___private_Lean_CoreM_0__Lean_supportedRecursors___closed__2; LEAN_EXPORT lean_object* l_Lean_Core_instMonadRecDepthCoreM___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Core_instantiateTypeLevelParams___spec__3(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786____closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Core_instantiateTypeLevelParams___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Core_instantiateTypeLevelParams___spec__6___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_CoreM_0__Lean_supportedRecursors___closed__14; LEAN_EXPORT lean_object* l_Lean_Core_getAndEmptyMessageLog___rarg(lean_object*, lean_object*); @@ -195,12 +196,12 @@ LEAN_EXPORT lean_object* l_Lean_Core_State_messages___default; static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_41____closed__3; lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Core_instInhabitedCache___closed__1; -LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4312_(lean_object*); static lean_object* l_Lean_Core_instMonadEnvCoreM___closed__1; LEAN_EXPORT lean_object* l_Lean_Core_checkMaxHeartbeatsCore___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_6____closed__6; static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_41____closed__1; LEAN_EXPORT lean_object* l___private_Lean_CoreM_0__Lean_Core_withConsistentCtx___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__2; static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_41____closed__5; LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_compileDecl___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_State_traceState___default; @@ -208,7 +209,6 @@ LEAN_EXPORT lean_object* l___private_Lean_CoreM_0__Lean_checkUnsupported___at_Le size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT uint8_t l_List_elem___at_Lean_catchInternalIds___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_mapCoreM___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__1; static lean_object* l_Lean_withTraceNode___at_Lean_compileDecl___spec__2___lambda__4___closed__3; LEAN_EXPORT lean_object* l_Lean_mapCoreM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withTraceNode___at_Lean_compileDecl___spec__2___lambda__4___closed__2; @@ -225,6 +225,7 @@ LEAN_EXPORT lean_object* l_List_beq___at_Lean_Core_instantiateTypeLevelParams___ lean_object* lean_st_ref_take(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_instMonadLogCoreM___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_compileDecl___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__3; static lean_object* l_Lean_Core_instMetaEvalCoreM___rarg___closed__4; static lean_object* l_Lean_Core_instMonadQuotationCoreM___closed__3; LEAN_EXPORT uint8_t l_List_beq___at_Lean_Core_instantiateTypeLevelParams___spec__8(lean_object*, lean_object*); @@ -250,7 +251,6 @@ static lean_object* l_List_foldlM___at___private_Lean_CoreM_0__Lean_checkUnsuppo lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Declaration_foldExprM___at_Lean_compileDecl___spec__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_CoreM_0__Lean_supportedRecursors___closed__29; -LEAN_EXPORT lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786_(lean_object*); lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Core_instMonadLogCoreM___lambda__5(lean_object*); static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_130____closed__3; @@ -269,6 +269,7 @@ LEAN_EXPORT lean_object* l_Lean_Core_withIncRecDepth___rarg(lean_object*, lean_o LEAN_EXPORT lean_object* l_Lean_Core_tryCatchRuntimeEx(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Core_instantiateTypeLevelParams___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_compileDecl___spec__2___lambda__3(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*); +static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801____closed__2; lean_object* l_Lean_MessageData_ofFormat(lean_object*); lean_object* l_Lean_PersistentArray_append___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Core_State_ngen___default___closed__1; @@ -291,7 +292,6 @@ static lean_object* l_Lean_Core_instMonadQuotationCoreM___closed__1; static lean_object* l_Lean_Core_instMonadTraceCoreM___closed__2; lean_object* lean_st_mk_ref(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_instMetaEvalCoreM___rarg___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_Core_withRestoreOrSaveFull___rarg___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_catchInternalId(lean_object*, lean_object*, lean_object*); lean_object* l_ReaderT_instApplicativeOfMonad___rarg(lean_object*); static lean_object* l___private_Lean_CoreM_0__Lean_supportedRecursors___closed__21; @@ -306,16 +306,15 @@ static lean_object* l_Lean_Core_instMonadTraceCoreM___closed__1; LEAN_EXPORT lean_object* l_Lean_Core_instMonadWithOptionsCoreM___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instMonadRuntimeExceptionCoreM(lean_object*); LEAN_EXPORT lean_object* l_Lean_catchInternalIds(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__4; static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_130____closed__11; LEAN_EXPORT lean_object* l_Lean_printTraces___at_Lean_Core_instMetaEvalCoreM___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_instantiateTypeLevelParams___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__5; lean_object* l_Lean_Option_register___at_Lean_initFn____x40_Lean_Util_Profile___hyg_41____spec__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Core_instMonadNameGeneratorCoreM___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Core_instantiateTypeLevelParams___spec__6(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_instMonadWithOptionsCoreM___rarg___lambda__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_checkInterrupted(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__4; lean_object* lean_io_mono_nanos_now(lean_object*); static lean_object* l_Lean_Core_Cache_instLevelType___default___closed__3; static lean_object* l_Lean_Core_Cache_instLevelType___default___closed__1; @@ -324,7 +323,7 @@ static lean_object* l_Lean_Core_Cache_instLevelType___default___closed__2; static lean_object* l_Lean_ImportM_runCoreM___rarg___closed__1; static lean_object* l_Lean_Core_instMonadLogCoreM___closed__3; LEAN_EXPORT lean_object* l_Lean_Core_CoreM_run_x27(lean_object*); -static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__5; +LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4327_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_State_infoState___default; static lean_object* l_Lean_Core_instMonadInfoTreeCoreM___closed__2; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Core_instMetaEvalCoreM___spec__3___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -373,8 +372,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at LEAN_EXPORT lean_object* l_List_foldlM___at_Lean_compileDecl___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_instantiateValueLevelParams___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_compileDecls(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898_(lean_object*); -static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__2; LEAN_EXPORT lean_object* l_Lean_Core_SavedState_restore(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Core_withIncRecDepth___spec__1___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_Core_CoreM_toIO(lean_object*); @@ -382,6 +379,7 @@ LEAN_EXPORT lean_object* l_Lean_Core_Context_maxHeartbeats___default(lean_object LEAN_EXPORT lean_object* l_Lean_Core_instMonadRecDepthCoreM___lambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Core_instantiateValueLevelParams___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withAtLeastMaxRecDepth___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__5; LEAN_EXPORT lean_object* l_Lean_Core_instantiateValueLevelParams___lambda__1___boxed(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_Lean_withTraceNode___at_Lean_compileDecl___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*); @@ -396,6 +394,7 @@ static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_130____closed__5; LEAN_EXPORT lean_object* l_Lean_Core_instMonadLogCoreM___lambda__2___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Core_instantiateValueLevelParams___lambda__2___closed__2; lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Util_Trace_0__Lean_addTraceNode___spec__1(size_t, size_t, lean_object*); +static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__2; LEAN_EXPORT lean_object* l_Lean_Core_instMonadQuotationCoreM; LEAN_EXPORT lean_object* l_Lean_Core_instantiateTypeLevelParams___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_instMonadLogCoreM___lambda__2(lean_object*, lean_object*, lean_object*); @@ -421,6 +420,7 @@ LEAN_EXPORT lean_object* l_Lean_Core_instMonadQuotationCoreM___lambda__1(lean_ob LEAN_EXPORT lean_object* l_Lean_Core_interruptExceptionId; static lean_object* l_Lean_Core_State_infoState___default___closed__2; static lean_object* l_Lean_withTraceNode___at_Lean_compileDecl___spec__2___lambda__2___closed__2; +static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__3; static lean_object* l_Lean_withTraceNode___at_Lean_compileDecl___spec__2___lambda__3___closed__2; lean_object* l_Lean_Expr_FindImpl_findUnsafe_x3f(lean_object*, lean_object*); static lean_object* l_List_foldlM___at___private_Lean_CoreM_0__Lean_checkUnsupported___spec__2___rarg___lambda__2___closed__4; @@ -434,9 +434,9 @@ LEAN_EXPORT lean_object* l_Lean_Core_SavedState_restore___boxed(lean_object*, le LEAN_EXPORT lean_object* l_Lean_Core_instMonadLogCoreM___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_CoreM_run___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__6; static lean_object* l_Lean_Core_instMonadLogCoreM___closed__4; static lean_object* l_Lean_useDiagnosticMsg___closed__4; -static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__3; LEAN_EXPORT lean_object* l_Lean_Core_withIncRecDepth___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_instMetaEvalCoreM___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withAtLeastMaxRecDepth___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -453,6 +453,7 @@ static lean_object* l_Lean_Core_State_ngen___default___closed__3; static lean_object* l_Lean_compileDecl___closed__1; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Core_instMetaEvalCoreM___spec__6(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); +static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__5; lean_object* lean_environment_main_module(lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_instMonadQuotationCoreM___lambda__2(lean_object*, lean_object*, lean_object*); static double l_Lean_withTraceNode___at_Lean_compileDecl___spec__2___lambda__4___closed__5; @@ -473,7 +474,6 @@ lean_object* l_Lean_PersistentHashMap_mkEmptyEntries(lean_object*, lean_object*) LEAN_EXPORT lean_object* l_Lean_Core_checkMaxHeartbeats(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Core_instMonadLogCoreM___closed__5; LEAN_EXPORT lean_object* l_Lean_Core_checkMaxHeartbeatsCore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwKernelException___at_Lean_compileDecl___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_String_isPrefixOf(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_compileDecl___spec__6(lean_object*, lean_object*, lean_object*, lean_object*); @@ -535,6 +535,7 @@ static lean_object* l_Lean_Core_instMonadWithOptionsCoreM___rarg___lambda__1___c LEAN_EXPORT lean_object* l_Lean_Exception_isRuntime___boxed(lean_object*); static lean_object* l_Lean_Core_instMonadLogCoreM___closed__2; static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_130____closed__12; +static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801____closed__1; LEAN_EXPORT lean_object* l_Lean_Core_CoreM_toIO___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_ImportM_runCoreM___rarg___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_instMonadRuntimeExceptionReaderT___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -544,7 +545,7 @@ size_t lean_usize_add(size_t, size_t); static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_80____closed__3; LEAN_EXPORT lean_object* l_Lean_Core_instMonadResolveNameCoreM___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_mkArrowN___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__2; +static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__1; LEAN_EXPORT lean_object* l_Lean_Core_instMonadWithOptionsCoreM(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_CoreM_0__Lean_checkUnsupported___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instMonadRuntimeExceptionCoreM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -554,7 +555,6 @@ LEAN_EXPORT lean_object* l_Lean_Core_Context_initHeartbeats___default; LEAN_EXPORT lean_object* l_Lean_compileDecl___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_isTracingEnabledFor___at_Lean_compileDecl___spec__3___closed__1; lean_object* lean_array_uget(lean_object*, size_t); -static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__6; LEAN_EXPORT lean_object* l_Lean_Core_instMetaEvalCoreM___rarg___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_compileDecl___spec__2___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, double, double, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_instantiateValueLevelParams___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -567,9 +567,8 @@ LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Core_instMetaEvalCoreM___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_io_error_to_string(lean_object*); static double l_Lean_withTraceNode___at_Lean_compileDecl___spec__2___lambda__2___closed__1; -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___rarg___lambda__1(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_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__1; static lean_object* l_Lean_Core_instMonadLogCoreM___closed__1; LEAN_EXPORT lean_object* l_Lean_Core_instMetaEvalCoreM___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_Lean_useDiagnosticMsg; @@ -612,7 +611,6 @@ uint8_t lean_nat_dec_le(lean_object*, lean_object*); static lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_80____closed__4; uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Core_instInhabitedCache; -static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__4; static lean_object* l_Lean_Core_instMonadCoreM___closed__7; static lean_object* l_Lean_Core_instMonadQuotationCoreM___closed__2; lean_object* lean_nat_add(lean_object*, lean_object*); @@ -622,6 +620,7 @@ LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_compileDecl___spec__1(lean_ static lean_object* l___private_Lean_CoreM_0__Lean_supportedRecursors___closed__23; LEAN_EXPORT lean_object* l_Lean_Core_instMonadCoreM___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Core_instMonadQuotationCoreM___closed__4; +LEAN_EXPORT lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801_(lean_object*); LEAN_EXPORT uint8_t l_Lean_Exception_isRuntime(lean_object*); static lean_object* l_Lean_Core_instInhabitedCoreM___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_withAtLeastMaxRecDepth(lean_object*, lean_object*); @@ -652,7 +651,6 @@ LEAN_EXPORT lean_object* l_List_foldlM___at___private_Lean_CoreM_0__Lean_checkUn LEAN_EXPORT lean_object* l_Lean_Core_instMonadResolveNameCoreM___lambda__2___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_CoreM_0__Lean_supportedRecursors___closed__13; lean_object* l_Lean_MessageData_format(lean_object*, lean_object*); -static lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__6; lean_object* l_Lean_MessageLog_add(lean_object*, lean_object*); lean_object* l_ReaderT_instMonad___rarg(lean_object*); size_t lean_usize_land(size_t, size_t); @@ -6040,96 +6038,228 @@ lean_dec(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___rarg___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_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_io_get_num_heartbeats(x_5); +x_7 = !lean_is_exclusive(x_6); +if (x_7 == 0) { -lean_object* x_7; lean_object* x_8; uint8_t x_9; -x_7 = lean_ctor_get(x_5, 1); -x_8 = lean_io_get_num_heartbeats(x_7); -x_9 = !lean_is_exclusive(x_8); -if (x_9 == 0) +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = lean_ctor_get(x_6, 0); +x_9 = lean_ctor_get(x_6, 1); +lean_inc(x_4); +x_10 = lean_apply_3(x_1, x_3, x_4, x_9); +if (lean_obj_tag(x_10) == 0) { -lean_object* x_10; lean_object* x_11; -x_10 = lean_ctor_get(x_8, 0); -x_11 = lean_nat_sub(x_10, x_1); +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); -lean_ctor_set(x_5, 1, x_11); -lean_ctor_set(x_8, 0, x_5); -return x_8; +x_13 = lean_st_ref_get(x_4, x_12); +lean_dec(x_4); +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_io_get_num_heartbeats(x_15); +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); +x_19 = lean_nat_sub(x_18, x_8); +lean_dec(x_8); +lean_dec(x_18); +lean_ctor_set(x_13, 1, x_19); +lean_ctor_set(x_6, 1, x_13); +lean_ctor_set(x_6, 0, x_11); +lean_ctor_set(x_16, 0, x_6); +return x_16; } 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_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_20 = lean_ctor_get(x_16, 0); +x_21 = lean_ctor_get(x_16, 1); +lean_inc(x_21); +lean_inc(x_20); +lean_dec(x_16); +x_22 = lean_nat_sub(x_20, x_8); lean_dec(x_8); -x_14 = lean_nat_sub(x_12, x_1); -lean_dec(x_12); -lean_ctor_set(x_5, 1, x_14); -x_15 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_15, 0, x_5); -lean_ctor_set(x_15, 1, x_13); -return x_15; +lean_dec(x_20); +lean_ctor_set(x_13, 1, x_22); +lean_ctor_set(x_6, 1, x_13); +lean_ctor_set(x_6, 0, x_11); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_6); +lean_ctor_set(x_23, 1, x_21); +return x_23; } } 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; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_16 = lean_ctor_get(x_5, 0); -x_17 = lean_ctor_get(x_5, 1); -lean_inc(x_17); -lean_inc(x_16); -lean_dec(x_5); -x_18 = lean_io_get_num_heartbeats(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); -if (lean_is_exclusive(x_18)) { - lean_ctor_release(x_18, 0); - lean_ctor_release(x_18, 1); - x_21 = x_18; +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_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_13); +x_26 = lean_io_get_num_heartbeats(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); +if (lean_is_exclusive(x_26)) { + lean_ctor_release(x_26, 0); + lean_ctor_release(x_26, 1); + x_29 = x_26; } else { - lean_dec_ref(x_18); - x_21 = lean_box(0); + lean_dec_ref(x_26); + x_29 = lean_box(0); } -x_22 = lean_nat_sub(x_19, x_1); -lean_dec(x_19); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_16); -lean_ctor_set(x_23, 1, x_22); -if (lean_is_scalar(x_21)) { - x_24 = lean_alloc_ctor(0, 2, 0); +x_30 = lean_nat_sub(x_27, x_8); +lean_dec(x_8); +lean_dec(x_27); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_24); +lean_ctor_set(x_31, 1, x_30); +lean_ctor_set(x_6, 1, x_31); +lean_ctor_set(x_6, 0, x_11); +if (lean_is_scalar(x_29)) { + x_32 = lean_alloc_ctor(0, 2, 0); } else { - x_24 = x_21; + x_32 = x_29; } -lean_ctor_set(x_24, 0, x_23); -lean_ctor_set(x_24, 1, x_20); -return x_24; +lean_ctor_set(x_32, 0, x_6); +lean_ctor_set(x_32, 1, x_28); +return x_32; } } +else +{ +uint8_t x_33; +lean_free_object(x_6); +lean_dec(x_8); +lean_dec(x_4); +x_33 = !lean_is_exclusive(x_10); +if (x_33 == 0) +{ +return x_10; } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___rarg___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: +else { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_6 = lean_io_get_num_heartbeats(x_5); -x_7 = lean_ctor_get(x_6, 0); -lean_inc(x_7); -x_8 = lean_ctor_get(x_6, 1); -lean_inc(x_8); +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_10, 0); +x_35 = lean_ctor_get(x_10, 1); +lean_inc(x_35); +lean_inc(x_34); +lean_dec(x_10); +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; +x_37 = lean_ctor_get(x_6, 0); +x_38 = lean_ctor_get(x_6, 1); +lean_inc(x_38); +lean_inc(x_37); lean_dec(x_6); -x_9 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___rarg___lambda__1___boxed), 4, 1); -lean_closure_set(x_9, 0, x_7); -x_10 = lean_apply_4(x_1, x_9, x_3, x_4, x_8); -return x_10; +lean_inc(x_4); +x_39 = lean_apply_3(x_1, x_3, x_4, x_38); +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; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +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 = lean_st_ref_get(x_4, x_41); +lean_dec(x_4); +x_43 = lean_ctor_get(x_42, 0); +lean_inc(x_43); +x_44 = lean_ctor_get(x_42, 1); +lean_inc(x_44); +if (lean_is_exclusive(x_42)) { + lean_ctor_release(x_42, 0); + lean_ctor_release(x_42, 1); + x_45 = x_42; +} else { + lean_dec_ref(x_42); + x_45 = lean_box(0); +} +x_46 = lean_io_get_num_heartbeats(x_44); +x_47 = lean_ctor_get(x_46, 0); +lean_inc(x_47); +x_48 = lean_ctor_get(x_46, 1); +lean_inc(x_48); +if (lean_is_exclusive(x_46)) { + lean_ctor_release(x_46, 0); + lean_ctor_release(x_46, 1); + x_49 = x_46; +} else { + lean_dec_ref(x_46); + x_49 = lean_box(0); +} +x_50 = lean_nat_sub(x_47, x_37); +lean_dec(x_37); +lean_dec(x_47); +if (lean_is_scalar(x_45)) { + x_51 = lean_alloc_ctor(0, 2, 0); +} else { + x_51 = x_45; +} +lean_ctor_set(x_51, 0, x_43); +lean_ctor_set(x_51, 1, x_50); +x_52 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_52, 0, x_40); +lean_ctor_set(x_52, 1, x_51); +if (lean_is_scalar(x_49)) { + x_53 = lean_alloc_ctor(0, 2, 0); +} else { + x_53 = x_49; +} +lean_ctor_set(x_53, 0, x_52); +lean_ctor_set(x_53, 1, x_48); +return x_53; +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; +lean_dec(x_37); +lean_dec(x_4); +x_54 = lean_ctor_get(x_39, 0); +lean_inc(x_54); +x_55 = lean_ctor_get(x_39, 1); +lean_inc(x_55); +if (lean_is_exclusive(x_39)) { + lean_ctor_release(x_39, 0); + lean_ctor_release(x_39, 1); + x_56 = x_39; +} else { + lean_dec_ref(x_39); + 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_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { @@ -6139,22 +6269,22 @@ if (lean_obj_tag(x_1) == 0) { lean_object* x_6; lean_object* x_7; x_6 = lean_box(0); -x_7 = l_Lean_Core_withRestoreOrSaveFull___rarg___lambda__2(x_2, x_6, x_3, x_4, x_5); +x_7 = l_Lean_Core_withRestoreOrSaveFull___rarg___lambda__1(x_2, x_6, x_3, x_4, x_5); return x_7; } 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; uint64_t x_15; lean_object* x_16; uint8_t x_17; +lean_object* x_8; uint8_t x_9; lean_dec(x_3); lean_dec(x_2); x_8 = lean_ctor_get(x_1, 0); lean_inc(x_8); lean_dec(x_1); -x_9 = lean_ctor_get(x_8, 0); -lean_inc(x_9); +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; uint64_t x_15; lean_object* x_16; uint8_t x_17; x_10 = lean_ctor_get(x_8, 1); -lean_inc(x_10); -lean_dec(x_8); x_11 = lean_ctor_get(x_10, 0); lean_inc(x_11); x_12 = lean_st_ref_set(x_4, x_11, x_5); @@ -6164,7 +6294,6 @@ lean_inc(x_13); lean_dec(x_12); x_14 = lean_ctor_get(x_10, 1); lean_inc(x_14); -lean_dec(x_10); x_15 = lean_uint64_of_nat(x_14); lean_dec(x_14); x_16 = lean_io_add_heartbeats(x_15, x_13); @@ -6174,7 +6303,7 @@ if (x_17 == 0) lean_object* x_18; x_18 = lean_ctor_get(x_16, 0); lean_dec(x_18); -lean_ctor_set(x_16, 0, x_9); +lean_ctor_set(x_16, 0, x_8); return x_16; } else @@ -6184,11 +6313,54 @@ x_19 = lean_ctor_get(x_16, 1); lean_inc(x_19); lean_dec(x_16); x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_9); +lean_ctor_set(x_20, 0, x_8); lean_ctor_set(x_20, 1, x_19); return x_20; } } +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; uint64_t x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_21 = lean_ctor_get(x_8, 0); +x_22 = lean_ctor_get(x_8, 1); +lean_inc(x_22); +lean_inc(x_21); +lean_dec(x_8); +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_st_ref_set(x_4, x_23, x_5); +lean_dec(x_4); +x_25 = lean_ctor_get(x_24, 1); +lean_inc(x_25); +lean_dec(x_24); +x_26 = lean_ctor_get(x_22, 1); +lean_inc(x_26); +x_27 = lean_uint64_of_nat(x_26); +lean_dec(x_26); +x_28 = lean_io_add_heartbeats(x_27, x_25); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +if (lean_is_exclusive(x_28)) { + lean_ctor_release(x_28, 0); + lean_ctor_release(x_28, 1); + x_30 = x_28; +} else { + lean_dec_ref(x_28); + x_30 = lean_box(0); +} +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_21); +lean_ctor_set(x_31, 1, x_22); +if (lean_is_scalar(x_30)) { + x_32 = lean_alloc_ctor(0, 2, 0); +} else { + x_32 = x_30; +} +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_29); +return x_32; +} +} } } LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull(lean_object* x_1) { @@ -6199,22 +6371,11 @@ x_2 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___rarg), 5, 0 return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___rarg___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_Core_withRestoreOrSaveFull___rarg___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_Core_withRestoreOrSaveFull___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_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___rarg___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_Core_withRestoreOrSaveFull___rarg___lambda__2(x_1, x_2, x_3, x_4, x_5); +x_6 = l_Lean_Core_withRestoreOrSaveFull___rarg___lambda__1(x_1, x_2, x_3, x_4, x_5); lean_dec(x_2); return x_6; } @@ -10666,7 +10827,7 @@ lean_dec(x_3); return x_4; } } -static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786____closed__1() { +static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801____closed__1() { _start: { lean_object* x_1; @@ -10674,21 +10835,21 @@ x_1 = lean_mk_string_from_bytes("interrupt", 9); return x_1; } } -static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786____closed__2() { +static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786____closed__1; +x_2 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786____closed__2; +x_2 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801____closed__2; x_3 = l_Lean_registerInternalExceptionId(x_2, x_1); return x_3; } @@ -10802,7 +10963,7 @@ lean_dec(x_1); return x_4; } } -static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__1() { +static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__1() { _start: { lean_object* x_1; @@ -10810,7 +10971,7 @@ x_1 = lean_mk_string_from_bytes("debug", 5); return x_1; } } -static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__2() { +static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__2() { _start: { lean_object* x_1; @@ -10818,17 +10979,17 @@ x_1 = lean_mk_string_from_bytes("moduleNameAtTimeout", 19); return x_1; } } -static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__3() { +static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__1; -x_2 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__2; +x_1 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__1; +x_2 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__2; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__4() { +static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__4() { _start: { lean_object* x_1; @@ -10836,13 +10997,13 @@ x_1 = lean_mk_string_from_bytes("include module name in deterministic timeout er return x_1; } } -static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__5() { +static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__5() { _start: { uint8_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = 1; -x_2 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__1; -x_3 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__4; +x_2 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__1; +x_3 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__4; x_4 = lean_box(x_1); x_5 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_5, 0, x_4); @@ -10851,25 +11012,25 @@ lean_ctor_set(x_5, 2, x_3); return x_5; } } -static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__6() { +static lean_object* _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____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_initFn____x40_Lean_CoreM___hyg_6____closed__5; x_2 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_130____closed__4; -x_3 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__1; -x_4 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__2; +x_3 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__1; +x_4 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____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_Core_initFn____x40_Lean_CoreM___hyg_2898_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913_(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_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__3; -x_3 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__5; -x_4 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__6; +x_2 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__3; +x_3 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__5; +x_4 = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__6; x_5 = l_Lean_Option_register___at_Lean_initFn____x40_Lean_Util_Profile___hyg_6____spec__1(x_2, x_3, x_4, x_1); return x_5; } @@ -14197,7 +14358,7 @@ lean_dec(x_5); return x_6; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__1() { +static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__1() { _start: { lean_object* x_1; @@ -14205,7 +14366,7 @@ x_1 = lean_mk_string_from_bytes("compiler", 8); return x_1; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__2() { +static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__2() { _start: { lean_object* x_1; @@ -14213,17 +14374,17 @@ x_1 = lean_mk_string_from_bytes("enableNew", 9); return x_1; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__3() { +static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__1; -x_2 = l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__2; +x_1 = l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__1; +x_2 = l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__2; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__4() { +static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__4() { _start: { lean_object* x_1; @@ -14231,13 +14392,13 @@ x_1 = lean_mk_string_from_bytes("(compiler) enable the new code generator, this return x_1; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__5() { +static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__5() { _start: { uint8_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = 0; -x_2 = l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__1; -x_3 = l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__4; +x_2 = l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__1; +x_3 = l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__4; x_4 = lean_box(x_1); x_5 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_5, 0, x_4); @@ -14246,24 +14407,24 @@ lean_ctor_set(x_5, 2, x_3); return x_5; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__6() { +static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_initFn____x40_Lean_CoreM___hyg_6____closed__5; -x_2 = l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__1; -x_3 = l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__2; +x_2 = l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__1; +x_3 = l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__2; x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4312_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_CoreM___hyg_4327_(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_initFn____x40_Lean_CoreM___hyg_4312____closed__3; -x_3 = l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__5; -x_4 = l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__6; +x_2 = l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__3; +x_3 = l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__5; +x_4 = l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__6; x_5 = l_Lean_Option_register___at_Lean_initFn____x40_Lean_Util_Profile___hyg_6____spec__1(x_2, x_3, x_4, x_1); return x_5; } @@ -17437,7 +17598,7 @@ static lean_object* _init_l_Lean_compileDecl___lambda__3___closed__1() { { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__1; +x_2 = l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } @@ -19811,11 +19972,11 @@ l_Lean_throwMaxRecDepthAt___at_Lean_Core_withIncRecDepth___spec__1___rarg___clos lean_mark_persistent(l_Lean_throwMaxRecDepthAt___at_Lean_Core_withIncRecDepth___spec__1___rarg___closed__1); l_Lean_throwMaxRecDepthAt___at_Lean_Core_withIncRecDepth___spec__1___rarg___closed__2 = _init_l_Lean_throwMaxRecDepthAt___at_Lean_Core_withIncRecDepth___spec__1___rarg___closed__2(); lean_mark_persistent(l_Lean_throwMaxRecDepthAt___at_Lean_Core_withIncRecDepth___spec__1___rarg___closed__2); -l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786____closed__1 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786____closed__1(); -lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786____closed__1); -l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786____closed__2 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786____closed__2(); -lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786____closed__2); -if (builtin) {res = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2786_(lean_io_mk_world()); +l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801____closed__1 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801____closed__1(); +lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801____closed__1); +l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801____closed__2 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801____closed__2(); +lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801____closed__2); +if (builtin) {res = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2801_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Core_interruptExceptionId = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Core_interruptExceptionId); @@ -19824,19 +19985,19 @@ lean_dec_ref(res); lean_mark_persistent(l_Lean_Core_checkInterrupted___closed__1); l_Lean_Core_checkInterrupted___closed__2 = _init_l_Lean_Core_checkInterrupted___closed__2(); lean_mark_persistent(l_Lean_Core_checkInterrupted___closed__2); -l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__1 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__1(); -lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__1); -l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__2 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__2(); -lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__2); -l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__3 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__3(); -lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__3); -l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__4 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__4(); -lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__4); -l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__5 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__5(); -lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__5); -l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__6 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__6(); -lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898____closed__6); -if (builtin) {res = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2898_(lean_io_mk_world()); +l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__1 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__1(); +lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__1); +l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__2 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__2(); +lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__2); +l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__3 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__3(); +lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__3); +l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__4 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__4(); +lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__4); +l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__5 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__5(); +lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__5); +l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__6 = _init_l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__6(); +lean_mark_persistent(l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913____closed__6); +if (builtin) {res = l_Lean_Core_initFn____x40_Lean_CoreM___hyg_2913_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Core_debug_moduleNameAtTimeout = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Core_debug_moduleNameAtTimeout); @@ -19953,19 +20114,19 @@ l_List_foldlM___at___private_Lean_CoreM_0__Lean_checkUnsupported___spec__2___rar lean_mark_persistent(l_List_foldlM___at___private_Lean_CoreM_0__Lean_checkUnsupported___spec__2___rarg___lambda__2___closed__3); l_List_foldlM___at___private_Lean_CoreM_0__Lean_checkUnsupported___spec__2___rarg___lambda__2___closed__4 = _init_l_List_foldlM___at___private_Lean_CoreM_0__Lean_checkUnsupported___spec__2___rarg___lambda__2___closed__4(); lean_mark_persistent(l_List_foldlM___at___private_Lean_CoreM_0__Lean_checkUnsupported___spec__2___rarg___lambda__2___closed__4); -l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__1 = _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__1(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__1); -l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__2 = _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__2(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__2); -l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__3 = _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__3(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__3); -l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__4 = _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__4(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__4); -l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__5 = _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__5(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__5); -l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__6 = _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__6(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_CoreM___hyg_4312____closed__6); -if (builtin) {res = l_Lean_initFn____x40_Lean_CoreM___hyg_4312_(lean_io_mk_world()); +l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__1 = _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__1(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__1); +l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__2 = _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__2(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__2); +l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__3 = _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__3(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__3); +l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__4 = _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__4(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__4); +l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__5 = _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__5(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__5); +l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__6 = _init_l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__6(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_CoreM___hyg_4327____closed__6); +if (builtin) {res = l_Lean_initFn____x40_Lean_CoreM___hyg_4327_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_compiler_enableNew = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_compiler_enableNew); diff --git a/stage0/stdlib/Lean/Elab/BuiltinCommand.c b/stage0/stdlib/Lean/Elab/BuiltinCommand.c index c41ab746e124..882a3276a760 100644 --- a/stage0/stdlib/Lean/Elab/BuiltinCommand.c +++ b/stage0/stdlib/Lean/Elab/BuiltinCommand.c @@ -720,6 +720,7 @@ static lean_object* l_Lean_Elab_Command_elabEvalUnsafe___lambda__3___closed__15; static lean_object* l_Lean_Elab_Command_elabRunMeta___closed__12; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabRunCmd_unsafe__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabImport___rarg___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandInCmd___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabOpen(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_pushInfoLeaf___at_Lean_Elab_Command_elabOpen___spec__15___closed__2; LEAN_EXPORT lean_object* l_Lean_popScope___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_popScopes___spec__1(lean_object*, lean_object*, lean_object*); @@ -33210,7 +33211,6 @@ x_5 = l_Lean_Syntax_isOfKind(x_1, x_4); if (x_5 == 0) { lean_object* x_6; lean_object* x_7; -lean_dec(x_2); lean_dec(x_1); x_6 = lean_box(1); x_7 = lean_alloc_ctor(1, 2, 0); @@ -33220,47 +33220,58 @@ return x_7; } else { -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; 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_8; lean_object* x_9; 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_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; x_8 = lean_unsigned_to_nat(0u); x_9 = l_Lean_Syntax_getArg(x_1, x_8); -x_10 = lean_unsigned_to_nat(2u); +x_10 = lean_unsigned_to_nat(1u); x_11 = l_Lean_Syntax_getArg(x_1, x_10); +x_12 = lean_unsigned_to_nat(2u); +x_13 = l_Lean_Syntax_getArg(x_1, x_12); lean_dec(x_1); -x_12 = lean_ctor_get(x_2, 5); -lean_inc(x_12); -lean_dec(x_2); -x_13 = 0; -x_14 = l_Lean_SourceInfo_fromRef(x_12, x_13); -x_15 = l_Lean_Elab_Command_elabSection___closed__1; -lean_inc(x_14); -x_16 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_16, 0, x_14); -lean_ctor_set(x_16, 1, x_15); -x_17 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_replaceBinderAnnotation___spec__4___closed__3; -x_18 = l___private_Lean_Elab_Open_0__Lean_Elab_OpenDecl_resolveNameUsingNamespacesCore___at_Lean_Elab_Command_elabExport___spec__5___closed__1; -lean_inc(x_14); -x_19 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_19, 0, x_14); -lean_ctor_set(x_19, 1, x_17); -lean_ctor_set(x_19, 2, x_18); -x_20 = l_Lean_Elab_Command_elabSection___closed__2; -lean_inc(x_19); -lean_inc(x_14); -x_21 = l_Lean_Syntax_node2(x_14, x_20, x_16, x_19); -x_22 = l___regBuiltin_Lean_Elab_Command_elabEnd__1___closed__1; -lean_inc(x_14); -x_23 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_23, 0, x_14); -lean_ctor_set(x_23, 1, x_22); -x_24 = l___regBuiltin_Lean_Elab_Command_elabEnd__1___closed__2; -lean_inc(x_14); -x_25 = l_Lean_Syntax_node2(x_14, x_24, x_23, x_19); -x_26 = l_Lean_Syntax_node4(x_14, x_17, x_21, x_9, x_11, 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_3); -return x_27; +x_14 = lean_ctor_get(x_2, 5); +x_15 = l_Lean_replaceRef(x_11, x_14); +lean_dec(x_11); +x_16 = 0; +x_17 = l_Lean_SourceInfo_fromRef(x_15, x_16); +x_18 = l_Lean_Elab_Command_elabSection___closed__1; +lean_inc(x_17); +x_19 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +x_20 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_BuiltinCommand_0__Lean_Elab_Command_replaceBinderAnnotation___spec__4___closed__3; +x_21 = l___private_Lean_Elab_Open_0__Lean_Elab_OpenDecl_resolveNameUsingNamespacesCore___at_Lean_Elab_Command_elabExport___spec__5___closed__1; +lean_inc(x_17); +x_22 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_22, 0, x_17); +lean_ctor_set(x_22, 1, x_20); +lean_ctor_set(x_22, 2, x_21); +x_23 = l_Lean_Elab_Command_elabSection___closed__2; +lean_inc(x_22); +lean_inc(x_17); +x_24 = l_Lean_Syntax_node2(x_17, x_23, x_19, x_22); +x_25 = l___regBuiltin_Lean_Elab_Command_elabEnd__1___closed__1; +lean_inc(x_17); +x_26 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_26, 0, x_17); +lean_ctor_set(x_26, 1, x_25); +x_27 = l___regBuiltin_Lean_Elab_Command_elabEnd__1___closed__2; +lean_inc(x_17); +x_28 = l_Lean_Syntax_node2(x_17, x_27, x_26, x_22); +x_29 = l_Lean_Syntax_node4(x_17, x_20, x_24, x_9, x_13, 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_3); +return x_30; +} +} } +LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandInCmd___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Lean_Elab_Command_expandInCmd(x_1, x_2, x_3); +lean_dec(x_2); +return x_4; } } static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandInCmd__1___closed__1() { @@ -33295,7 +33306,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandInCmd__1___clos _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Command_expandInCmd), 3, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Command_expandInCmd___boxed), 3, 0); return x_1; } } @@ -33327,7 +33338,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandInCmd_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(465u); +x_1 = lean_unsigned_to_nat(467u); x_2 = lean_unsigned_to_nat(47u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34201,7 +34212,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabAddDeclDoc_declRa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(467u); +x_1 = lean_unsigned_to_nat(469u); x_2 = lean_unsigned_to_nat(52u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34213,7 +34224,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabAddDeclDoc_declRa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(478u); +x_1 = lean_unsigned_to_nat(480u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34241,7 +34252,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabAddDeclDoc_declRa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(467u); +x_1 = lean_unsigned_to_nat(469u); x_2 = lean_unsigned_to_nat(56u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34253,7 +34264,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabAddDeclDoc_declRa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(467u); +x_1 = lean_unsigned_to_nat(469u); x_2 = lean_unsigned_to_nat(70u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34462,7 +34473,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabExit_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(480u); +x_1 = lean_unsigned_to_nat(482u); x_2 = lean_unsigned_to_nat(44u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34474,7 +34485,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabExit_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(481u); +x_1 = lean_unsigned_to_nat(483u); x_2 = lean_unsigned_to_nat(45u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34502,7 +34513,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabExit_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(480u); +x_1 = lean_unsigned_to_nat(482u); x_2 = lean_unsigned_to_nat(48u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34514,7 +34525,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabExit_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(480u); +x_1 = lean_unsigned_to_nat(482u); x_2 = lean_unsigned_to_nat(56u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34676,7 +34687,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabImport_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(483u); +x_1 = lean_unsigned_to_nat(485u); x_2 = lean_unsigned_to_nat(46u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34688,7 +34699,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabImport_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(484u); +x_1 = lean_unsigned_to_nat(486u); x_2 = lean_unsigned_to_nat(85u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34716,7 +34727,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabImport_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(483u); +x_1 = lean_unsigned_to_nat(485u); x_2 = lean_unsigned_to_nat(50u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34728,7 +34739,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabImport_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(483u); +x_1 = lean_unsigned_to_nat(485u); x_2 = lean_unsigned_to_nat(60u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34868,7 +34879,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabEoi_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(486u); +x_1 = lean_unsigned_to_nat(488u); x_2 = lean_unsigned_to_nat(43u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34880,7 +34891,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabEoi_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(487u); +x_1 = lean_unsigned_to_nat(489u); x_2 = lean_unsigned_to_nat(8u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34908,7 +34919,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabEoi_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(486u); +x_1 = lean_unsigned_to_nat(488u); x_2 = lean_unsigned_to_nat(47u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -34920,7 +34931,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabEoi_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(486u); +x_1 = lean_unsigned_to_nat(488u); x_2 = lean_unsigned_to_nat(54u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); diff --git a/stage0/stdlib/Lean/Elab/Command.c b/stage0/stdlib/Lean/Elab/Command.c index cf7bc9536f66..8c282a6da7f6 100644 --- a/stage0/stdlib/Lean/Elab/Command.c +++ b/stage0/stdlib/Lean/Elab/Command.c @@ -13,7 +13,6 @@ #ifdef __cplusplus extern "C" { #endif -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_liftTermElabM___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_EXPORT lean_object* l_Lean_Elab_Command_Context_cmdPos___default; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Command_0__Lean_Elab_Command_runCore___spec__4(lean_object*, size_t, size_t, lean_object*); @@ -23,6 +22,8 @@ LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters_ LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadCommandElabM___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_runLinters___spec__9___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabCommand___spec__22(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__2; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_foldl___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__2___closed__3; lean_object* lean_format_pretty(lean_object*, lean_object*, lean_object*, lean_object*); @@ -54,7 +55,6 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Comma extern lean_object* l_Lean_trace_profiler_useHearbeats; LEAN_EXPORT lean_object* l_Lean_Elab_addCompletionInfo___at_Lean_withSetOptionIn___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabSetOption___at_Lean_withSetOptionIn___spec__1___closed__4; static lean_object* l_Lean_getConstInfo___at_Lean_Elab_Command_expandDeclId___spec__9___closed__2; static lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___closed__5; @@ -62,13 +62,16 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_liftTermElabM(lean_object*); static lean_object* l_Lean_Elab_Command_instMonadRecDepthCommandElabM___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_isIncrementalElab___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__4(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_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__3; static lean_object* l_Lean_Elab_Command_instMonadEnvCommandElabM___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_applyVisibility___at_Lean_Elab_Command_expandDeclId___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_isIncrementalElab___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__4___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_getBracketedBinderIds___spec__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadCommandElabM___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabCommand___spec__22___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_addDocString_x27___at_Lean_Elab_Command_expandDeclId___spec__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Command_0__Lean_Elab_Command_mkTermContext___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_Language_instInhabitedDynamicSnapshot; static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__1; static lean_object* l_Lean_Elab_Command_getBracketedBinderIds___closed__6; static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Command_expandDeclId___spec__7___lambda__1___closed__2; @@ -87,7 +90,6 @@ static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceA LEAN_EXPORT lean_object* l_Lean_profileitM___at_Lean_Elab_Command_runLinters___spec__15(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadCommandElabM___closed__3; -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__3; lean_object* l_Lean_PersistentArray_toArray___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandDeclId___spec__20(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_profileitIOUnsafe___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -97,18 +99,23 @@ LEAN_EXPORT lean_object* l_Lean_Elab_expandDeclId___at_Lean_Elab_Command_expandD static lean_object* l___auto____x40_Lean_Elab_Command___hyg_421____closed__21; static lean_object* l_Lean_Elab_Command_State_infoState___default___closed__1; static lean_object* l_Lean_Elab_Command_instMonadInfoTreeCommandElabM___closed__1; +static lean_object* l_Lean_Elab_Command_elabCommand___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadTraceCommandElabM; static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__3; extern lean_object* l_Lean_maxRecDepthErrorMessage; static lean_object* l_Lean_Elab_Command_instInhabitedCommandElabM___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_getLevelNames___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__20(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Language_DynamicSnapshot_toTyped_x3f___rarg(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_runCore___rarg___closed__1; lean_object* l_Lean_ConstantInfo_levelParams(lean_object*); lean_object* l_Lean_indentD(lean_object*); double lean_float_div(double, double); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___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_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Command_expandDeclId___spec__7(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___closed__7; lean_object* l_Lean_Elab_mkMessageCore(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*); +lean_object* lean_io_promise_new(lean_object*); uint8_t l_Lean_Exception_isInterrupt(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_getMainModule___rarg(lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_synthesizeSyntheticMVars(uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -134,7 +141,6 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Comma LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Command_0__Lean_Elab_Command_mkTermContext___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Command_liftTermElabM___spec__1(lean_object*); LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Command_liftTermElabM___spec__13___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadLiftTIOCommandElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommandTopLevel(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Command_0__Lean_Elab_Command_runCore___spec__3(lean_object*, size_t, size_t, lean_object*); @@ -143,7 +149,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_logException___at_Lean_Elab_Command_elabCom lean_object* l_Lean_Name_toString(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_addDocString___at_Lean_Elab_Command_expandDeclId___spec__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__21(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters___spec__10___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_withTraceNode___at_Lean_Elab_Command_runLinters___spec__4___lambda__3___closed__1; lean_object* l_Lean_Syntax_getId(lean_object*); @@ -182,12 +188,13 @@ LEAN_EXPORT lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Command_expandDec static lean_object* l_Lean_Elab_Command_instMonadRecDepthCommandElabM___closed__4; LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Command_runLinters___spec__8(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_mkState(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_elabCommand___lambda__4___closed__3; lean_object* l_Lean_Syntax_getArgs(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_liftIO___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_elabCommand___lambda__6___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapM___at_Lean_Elab_Command_liftTermElabM___spec__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_replaceRef(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Elab_Command_elabCommand___spec__19(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_Context_currMacroScope___default; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Command_elabCommandTopLevel___spec__4___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -208,6 +215,7 @@ LEAN_EXPORT lean_object* l_Lean_mkConstWithLevelParams___at_Lean_Elab_Command_ex LEAN_EXPORT lean_object* l_Lean_Elab_Command_getScopes___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Command_runLinters___spec__6(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at_Lean_Elab_Command_withMacroExpansion___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_elabCommand___lambda__6___closed__5; static lean_object* l_Lean_Elab_Command_instMonadQuotationCommandElabM___closed__3; static lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__6; lean_object* l_Lean_EnvExtension_modifyState___rarg(lean_object*, lean_object*, lean_object*); @@ -231,6 +239,7 @@ static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_runLinters__ LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Elab_Command_runLinters___spec__2(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_hasSyntheticSorry(lean_object*); LEAN_EXPORT lean_object* l_Lean_mkHashMap___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__1(lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_runLinters___spec__9___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_isIncrementalElab___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__4___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_getLevelNames(lean_object*); @@ -241,6 +250,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_expandDeclId___at_Lean_Elab_Command_expandD LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Elab_Command_elabCommand___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_liftTermElabM___spec__11(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_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__11(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__1; extern lean_object* l_Lean_LocalContext_empty; LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Command_liftTermElabM___spec__1___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -255,8 +265,11 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCom lean_object* l_Lean_stringToMessageData(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addMacroStack___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_io_promise_result(lean_object*); uint8_t l___private_Lean_Util_Trace_0__Lean_checkTraceOption(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__7(lean_object*, lean_object*, lean_object*); lean_object* l_EStateM_instMonad(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_zipWithAux___at_Lean_Elab_Command_elabCommand___spec__18(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withSetOptionIn(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters___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_Lean_Elab_Command_instMonadLogCommandElabM___lambda__2___boxed(lean_object*, lean_object*, lean_object*); @@ -308,6 +321,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_withoutCommandIncrementality___rarg static lean_object* l_List_foldl___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__2___closed__1; static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__8; uint8_t l_Lean_isReservedName(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_elabCommand___lambda__6___closed__3; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters___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*, lean_object*, lean_object*); lean_object* l_Lean_InternalExceptionId_getName(lean_object*, lean_object*); static lean_object* l___auto____x40_Lean_Elab_Command___hyg_421____closed__27; @@ -326,6 +340,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadInfoTreeCommandElabM___lam static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandDeclId___spec__5___closed__8; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Command_elabCommandTopLevel___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_liftAttrM(lean_object*); +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*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabCommand___spec__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1___closed__3; @@ -337,6 +352,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_addT LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_runLinters___spec__9___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters___spec__10___lambda__3(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_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Command_runLinters___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__5; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters___spec__4___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, double, double, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Command_elabCommandTopLevel___spec__3___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -349,6 +365,7 @@ static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_59 LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadEnvCommandElabM; static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Command_expandDeclId___spec__7___lambda__3___closed__2; static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__4; LEAN_EXPORT lean_object* l_Lean_getConstInfo___at_Lean_Elab_Command_expandDeclId___spec__9(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommandTopLevel___spec__6___closed__1; @@ -381,7 +398,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabComma LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Command_runLinters___spec__6___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__12___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_expandDeclId___spec__10(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_elabCommand___lambda__4___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Command_State_nextMacroScope___default; LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__17___boxed(lean_object*, lean_object*); static lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Command_runLinters___spec__5___closed__1; @@ -392,15 +408,14 @@ static lean_object* l___auto____x40_Lean_Elab_Command___hyg_421____closed__18; static lean_object* l_Lean_Elab_Command_State_ngen___default___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadOptionsCommandElabM___rarg(lean_object*, lean_object*); uint8_t l_Lean_TagAttribute_hasTag(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__2; lean_object* l_Lean_MessageData_ofSyntax(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__6___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadInfoTreeCommandElabM; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadTraceCommandElabM___lambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Command_expandDeclId___spec__7___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_elabCommand___lambda__4___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___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_Lean_Elab_Command_liftIO(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Command_0__Lean_Elab_Command_mkTermContext___spec__2(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadResolveNameCommandElabM___lambda__2(lean_object*, lean_object*, lean_object*); @@ -410,6 +425,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*); static lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___closed__8; 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_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__23(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1___closed__1; lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadLiftTIOCommandElabM(lean_object*); @@ -456,6 +472,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at___private_Lean_Elab_ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandDeclId___spec__19___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandDeclId___closed__1; static lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___closed__10; +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadEnvCommandElabM___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_runCore___rarg___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Command_liftTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); @@ -473,8 +490,6 @@ LEAN_EXPORT lean_object* l_Lean_liftCommandElabM___rarg(lean_object*, lean_objec LEAN_EXPORT lean_object* l_Lean_Elab_Command_State_scopes___default; static lean_object* l_Lean_Elab_Command_instMonadEnvCommandElabM___closed__2; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__5___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__3; lean_object* lean_st_mk_ref(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_State_ngen___default___closed__3; static lean_object* l___auto____x40_Lean_Elab_Command___hyg_421____closed__28; @@ -503,6 +518,7 @@ static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_59 LEAN_EXPORT lean_object* l_Lean_Elab_Command_State_ngen___default; static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_2581____closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Command_elabCommandTopLevel___spec__3___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__4; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters___spec__4___lambda__3(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_EXPORT lean_object* l_Lean_Elab_Command_getLevelNames___rarg___boxed(lean_object*, lean_object*); extern lean_object* l_Lean_levelZero; @@ -519,13 +535,16 @@ static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Command_e 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_Command_getCurrMacroScope(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadRefCommandElabM___closed__1; +static lean_object* l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361____closed__2; static lean_object* l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1___closed__2; +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___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_Elab_Command_getMainModule___rarg___boxed(lean_object*, lean_object*); lean_object* l_Lean_Elab_expandDeclIdCore(lean_object*); extern lean_object* l_Lean_Elab_builtinIncrementalElabs; static lean_object* l_Lean_Elab_Command_getBracketedBinderIds___closed__7; LEAN_EXPORT lean_object* l_Lean_profileitM___at_Lean_Elab_Command_runLinters___spec__15___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandDeclId___spec__5___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_zipWithAux___at_Lean_Elab_Command_elabCommand___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_AssocList_replace___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__10(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Command_expandDeclId___spec__7___lambda__2___closed__2; static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___lambda__1___closed__5; @@ -552,7 +571,9 @@ lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadExceptOfExceptionCommandElabM___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_getBracketedBinderIds___lambda__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_State_messages___default___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361_; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_expandDeclId___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__24(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___auto____x40_Lean_Elab_Command___hyg_421____closed__15; extern lean_object* l_Lean_warningAsError; @@ -576,6 +597,7 @@ static lean_object* l_Lean_Elab_Command_instMonadQuotationCommandElabM___closed_ static lean_object* l_Lean_liftCommandElabM___rarg___closed__2; static lean_object* l_Lean_Elab_Command_mkState___closed__1; uint8_t l_Lean_Syntax_matchesNull(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot(lean_object*); static lean_object* l___auto____x40_Lean_Elab_Command___hyg_421____closed__14; LEAN_EXPORT lean_object* l_Lean_Elab_Command_getMainModule___boxed(lean_object*); static lean_object* l_Lean_Elab_Command_modifyScope___closed__3; @@ -588,6 +610,7 @@ extern lean_object* l_Lean_diagnostics; static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__9; static lean_object* l_Lean_Elab_Command_elabCommandTopLevel___closed__1; static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__20___closed__1; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__3; static lean_object* l_Lean_Elab_Command_runLinters___lambda__1___closed__1; static lean_object* l_Lean_Elab_Command_instMonadResolveNameCommandElabM___closed__2; static lean_object* l_Lean_Elab_elabSetOption___at_Lean_withSetOptionIn___spec__1___closed__5; @@ -595,6 +618,8 @@ static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommandT LEAN_EXPORT lean_object* l_Lean_HashMapImp_find_x3f___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_AssocList_contains___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__5___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_getScope___rarg(lean_object*, lean_object*); +extern lean_object* l_Lean_Language_Snapshot_Diagnostics_empty; +LEAN_EXPORT lean_object* l_Lean_Elab_Command_instTypeNameMacroExpandedSnapshot; LEAN_EXPORT lean_object* l_List_forM___at_Lean_Elab_Command_elabCommand___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadExceptOfExceptionCommandElabM___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_ioErrorToMessage(lean_object*, lean_object*, lean_object*); @@ -602,6 +627,7 @@ static lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Command_expandDeclId__ LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Command_liftCoreM___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters___spec__10___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_Array_mapMUnsafe_map___at_Lean_Elab_Command_liftTermElabM___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_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadLogCommandElabM___lambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withSetOptionIn___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_withLoggingExceptions(lean_object*, lean_object*, lean_object*, lean_object*); @@ -644,6 +670,7 @@ static lean_object* l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instA static lean_object* l_Lean_Elab_Command_elabCommand___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_Scope_varDecls___default; static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__10; +static lean_object* l_Lean_Elab_Command_elabCommand___lambda__6___closed__2; static lean_object* l_Lean_Elab_Command_instMonadCommandElabM___closed__6; static lean_object* l_Lean_Elab_Command_modifyScope___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Command_expandDeclId___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -651,11 +678,11 @@ lean_object* l_Lean_Elab_Term_withAutoBoundImplicit___rarg(lean_object*, lean_ob static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3262____closed__2; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommandTopLevel___spec__5(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); double l_Float_ofScientific(lean_object*, uint8_t, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__5; LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapMAux___at___private_Lean_Elab_Command_0__Lean_Elab_Command_runCore___spec__2(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_qsort_sort___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__19___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Command_runLinters___spec__5(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_elabCommand___lambda__4___closed__5; static lean_object* l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1___closed__5; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_liftTermElabM___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_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabCommand___spec__15(lean_object*, lean_object*, lean_object*, lean_object*); @@ -663,16 +690,15 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_expandDeclId__ extern lean_object* l_Lean_Core_interruptExceptionId; static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Command_withFreshMacroScope___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__6___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static double l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters___spec__4___lambda__4___closed__4; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_runTermElabM___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_logException___at_Lean_Elab_Command_runLinters___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadTraceCommandElabM___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadEnvCommandElabM___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685_(lean_object*); static lean_object* l_Lean_Elab_Command_State_messages___default___closed__1; static lean_object* l___auto____x40_Lean_Elab_Command___hyg_421____closed__11; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabSetOption___at_Lean_withSetOptionIn___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_withoutCommandIncrementality___rarg___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_pushInfoTree___at_Lean_Elab_Command_expandDeclId___spec__12(lean_object*, lean_object*, lean_object*, lean_object*); @@ -686,11 +712,9 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_getScopes(lean_object*); LEAN_EXPORT lean_object* l_Lean_AssocList_foldlM___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__17(lean_object*, lean_object*); static lean_object* l___auto____x40_Lean_Elab_Command___hyg_421____closed__5; lean_object* l_Lean_Syntax_setArgs(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643_(lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadOptionsCommandElabM___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Command_runLinters___spec__6___rarg___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__4(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_Command_runLinters___spec__12___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_Scope_openDecls___default; LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Elab_Command_runLinters___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -710,6 +734,7 @@ static lean_object* l_Lean_Elab_elabSetOption___at_Lean_withSetOptionIn___spec__ LEAN_EXPORT lean_object* l_Lean_Elab_Command_getScope(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadLogCommandElabM___lambda__3(lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__1; lean_object* lean_environment_main_module(lean_object*); static lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___closed__4; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_withSetOptionIn___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -737,7 +762,6 @@ LEAN_EXPORT lean_object* l_List_forM___at_Lean_Elab_Command_elabCommand___spec__ static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Command_expandDeclId___spec__7___closed__1; static lean_object* l_Lean_addDocString___at_Lean_Elab_Command_expandDeclId___spec__14___closed__1; static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__2; -static lean_object* l_Lean_Elab_Command_getBracketedBinderIds___closed__8; LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__3(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Command_expandDeclId___spec__7___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadRefCommandElabM___closed__3; @@ -773,6 +797,7 @@ static lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Command_expandDeclId__ static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters___spec__4___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadEnvCommandElabM___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadEnvCommandElabM___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instAddErrorMessageContextCommandElabM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadCommandElabM___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadResolveNameCommandElabM___closed__3; @@ -785,6 +810,7 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Comm LEAN_EXPORT lean_object* l_Lean_Elab_getInfoTrees___at_Lean_Elab_Command_elabCommandTopLevel___spec__1___rarg(lean_object*, lean_object*); uint8_t l_Lean_isStructure(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_InfoTree_Main_0__Lean_Elab_withSavedPartialInfoContext___at_Lean_Elab_Command_liftTermElabM___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_Command_elabCommand___lambda__7___boxed(lean_object*, lean_object*, lean_object*); static double l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters___spec__4___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_liftCoreM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_mul(lean_object*, lean_object*); @@ -792,6 +818,7 @@ static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandDeclId LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); lean_object* l_Lean_Core_resetMessageLog(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Command_liftTermElabM___spec__1___rarg___closed__1; +lean_object* l_Lean_Syntax_getRange_x3f(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Option_get_x3f___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessages___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__6___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_logException___at_Lean_Elab_Command_runLinters___spec__1___closed__2; @@ -801,18 +828,21 @@ LEAN_EXPORT lean_object* l_Lean_Elab_throwAlreadyDeclaredUniverseLevel___at_Lean LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters___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_EXPORT lean_object* l_Lean_Elab_Command_instInhabitedCommandElabM(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_getInfoTrees___at_Lean_Elab_Command_elabCommandTopLevel___spec__1(lean_object*); +lean_object* l_List_iotaTR(lean_object*); lean_object* l_Lean_Kernel_resetDiag___lambda__1(lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandDeclId___spec__19___closed__2; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommandTopLevel___spec__7___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_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*); +lean_object* l_Lean_Syntax_structRangeEqWithTraceReuse(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_tryCatch(lean_object*); static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessages___closed__1; lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); lean_object* l_Array_ofSubarray___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_withoutCommandIncrementality___rarg___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_Elab_Command_runLinters___spec__6___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495_(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_liftAttrM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Environment_getModuleIdxFor_x3f(lean_object*, lean_object*); extern lean_object* l_Lean_protectedExt; @@ -821,6 +851,7 @@ lean_object* lean_erase_macro_scopes(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_expandDeclId___spec__18(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Elab_incrementalAttr; static lean_object* l___auto____x40_Lean_Elab_Command___hyg_421____closed__23; +LEAN_EXPORT lean_object* l_Array_forInUnsafe_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_reverse___rarg(lean_object*); static lean_object* l_Lean_Elab_Command_instMonadRecDepthCommandElabM___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadOptionsCommandElabM(lean_object*); @@ -836,6 +867,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___lambda__1(le lean_object* l_Lean_mkHashMapImp___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_runTermElabM___rarg___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_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__15; +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__24___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadRecDepthCommandElabM; static lean_object* l_Lean_Elab_Command_elabCommand___lambda__4___closed__1; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandDeclId___spec__5___closed__7; @@ -851,6 +883,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_L LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandDeclId(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__12(lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandDeclId___spec__5___closed__5; +lean_object* l_Lean_Language_SnapshotTask_map___rarg(lean_object*, lean_object*, lean_object*, uint8_t); lean_object* l_Lean_MessageLog_append(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__5; LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_ioErrorToMessage___boxed(lean_object*, lean_object*, lean_object*); @@ -858,10 +891,12 @@ LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Command_liftTermE lean_object* l_Lean_KVMap_findCore(lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); static lean_object* l___auto____x40_Lean_Elab_Command___hyg_421____closed__12; +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537_(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_runCore___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_getScope___rarg___boxed(lean_object*, lean_object*); extern lean_object* l_Lean_trace_profiler; uint8_t l_Lean_PersistentArray_isEmpty___rarg(lean_object*); +lean_object* l_Lean_Language_SnapshotTask_get___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandDeclId___spec__21___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instMonadCommandElabM___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_Context_currRecDepth___default; @@ -880,10 +915,10 @@ static lean_object* l_Lean_Elab_Command_instMonadRefCommandElabM___closed__2; lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__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_addMacroStack___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_List_redLength___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Command_runLinters___spec__4(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_withoutCommandIncrementality___rarg___closed__1; static lean_object* l_Lean_Elab_Command_instMonadRecDepthCommandElabM___closed__3; -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__5; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_liftCommandElabM___spec__1(lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_getInfoTrees___at_Lean_Elab_Command_elabCommandTopLevel___spec__1___boxed(lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); @@ -923,9 +958,11 @@ lean_object* l_Lean_MessageLog_toArray(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Command_expandDeclId___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_withMacroExpansion(lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___closed__1; static lean_object* l_Lean_Elab_Command_instMonadTraceCommandElabM___closed__2; static lean_object* l_Lean_Elab_throwAlreadyDeclaredUniverseLevel___at_Lean_Elab_Command_addUnivLevel___spec__1___closed__2; static lean_object* l_Array_qsort_sort___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__19___closed__1; +static lean_object* l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361____closed__1; static lean_object* l_Lean_Elab_Command_mkCommandElabAttributeUnsafe___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_withoutCommandIncrementality(lean_object*); static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__20___closed__5; @@ -958,12 +995,13 @@ LEAN_EXPORT lean_object* l_Lean_Elab_pushInfoLeaf___at_Lean_Elab_Command_expandD LEAN_EXPORT lean_object* l_Lean_Elab_Command_modifyScope___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwAlreadyDeclaredUniverseLevel___at_Lean_Elab_Command_addUnivLevel___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_State_infoState___default___closed__4; +static lean_object* l_Lean_Elab_Command_elabCommand___lambda__6___closed__4; static lean_object* l_Lean_Elab_Command_getBracketedBinderIds___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Command_runTermElabM___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_Elab_Command_0__Lean_Elab_Command_mkTermContext___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Command_expandDeclId___spec__7___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_qsort_sort___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__19___lambda__1___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__5(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkMetaContext___closed__1; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadResolveNameCommandElabM___lambda__1(lean_object*, lean_object*, lean_object*); @@ -987,6 +1025,7 @@ lean_object* l_ReaderT_instMonad___rarg(lean_object*); static lean_object* l_Lean_Elab_Command_State_infoState___default___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadRecDepthCommandElabM___lambda__3___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Elab_Command_0__Lean_Elab_Command_addTraceAsMessagesCore___spec__11___lambda__1___boxed(lean_object*, lean_object*); +lean_object* l_List_toArrayAux___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_liftTermElabM___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Command_runLinters___spec__11___boxed(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*); @@ -18247,6 +18286,129 @@ x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } } +static lean_object* _init_l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361____closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("MacroExpandedSnapshot", 21); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361____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___auto____x40_Lean_Elab_Command___hyg_421____closed__1; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__1; +x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__6; +x_4 = l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361____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_Command_instImpl____x40_Lean_Elab_Command___hyg_3361_() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361____closed__2; +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Command_instTypeNameMacroExpandedSnapshot() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361_; +return x_1; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___lambda__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_ctor_get(x_1, 1); +lean_inc(x_2); +return x_2; +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___lambda__1___boxed), 1, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___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; lean_object* x_9; uint8_t x_10; lean_object* x_11; size_t x_12; size_t x_13; lean_object* x_14; +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); +x_9 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___closed__1; +x_10 = 1; +x_11 = l_Lean_Language_SnapshotTask_map___rarg(x_5, x_9, x_8, x_10); +x_12 = 1; +x_13 = lean_usize_add(x_2, x_12); +x_14 = lean_array_uset(x_7, x_2, x_11); +x_2 = x_13; +x_3 = x_14; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot(lean_object* x_1) { +_start: +{ +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; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = lean_ctor_get(x_1, 4); +lean_inc(x_3); +lean_dec(x_1); +x_4 = lean_array_get_size(x_3); +x_5 = lean_usize_of_nat(x_4); +lean_dec(x_4); +x_6 = 0; +x_7 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1(x_5, x_6, x_3); +x_8 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_8, 0, x_2); +lean_ctor_set(x_8, 1, x_7); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___lambda__1___boxed(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___lambda__1(x_1); +lean_dec(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___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_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1(x_4, x_5, x_3); +return x_6; +} +} static lean_object* _init_l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1___closed__1() { _start: { @@ -20864,336 +21026,3275 @@ return x_126; } } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(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_EXPORT lean_object* l_Array_zipWithAux___at_Lean_Elab_Command_elabCommand___spec__18(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -uint8_t x_8; -x_8 = lean_usize_dec_eq(x_2, x_3); -if (x_8 == 0) -{ -lean_object* x_9; lean_object* x_10; -lean_dec(x_4); -x_9 = lean_array_uget(x_1, x_2); -lean_inc(x_6); -lean_inc(x_5); -x_10 = l_Lean_Elab_Command_elabCommand(x_9, x_5, x_6, x_7); -if (lean_obj_tag(x_10) == 0) +lean_object* x_5; uint8_t x_6; +x_5 = lean_array_get_size(x_1); +x_6 = lean_nat_dec_lt(x_3, x_5); +lean_dec(x_5); +if (x_6 == 0) { -lean_object* x_11; lean_object* x_12; size_t x_13; size_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 = 1; -x_14 = lean_usize_add(x_2, x_13); -x_2 = x_14; -x_4 = x_11; -x_7 = x_12; -goto _start; +lean_dec(x_3); +return x_4; } else { -uint8_t x_16; -lean_dec(x_6); -lean_dec(x_5); -x_16 = !lean_is_exclusive(x_10); -if (x_16 == 0) +lean_object* x_7; lean_object* x_8; uint8_t x_9; +x_7 = lean_array_fget(x_1, x_3); +x_8 = lean_array_get_size(x_2); +x_9 = lean_nat_dec_lt(x_3, x_8); +lean_dec(x_8); +if (x_9 == 0) { -return x_10; +lean_dec(x_7); +lean_dec(x_3); +return x_4; } else { -lean_object* x_17; lean_object* x_18; lean_object* x_19; -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_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_object* x_10; 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; +x_10 = lean_array_fget(x_2, x_3); +x_11 = lean_unsigned_to_nat(1u); +x_12 = lean_nat_add(x_3, x_11); +lean_dec(x_3); +x_13 = 0; +x_14 = l_Lean_Syntax_getRange_x3f(x_10, x_13); +x_15 = lean_io_promise_result(x_7); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +x_17 = lean_array_push(x_4, x_16); +x_3 = x_12; +x_4 = x_17; +goto _start; } } } -else +} +LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Elab_Command_elabCommand___spec__19(lean_object* x_1, lean_object* x_2) { +_start: { -lean_object* x_20; +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_inc(x_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); +x_4 = lean_ctor_get(x_2, 0); +lean_inc(x_4); +x_5 = lean_ctor_get(x_2, 4); +lean_inc(x_5); +lean_dec(x_2); +x_6 = lean_array_get_size(x_5); +x_7 = lean_usize_of_nat(x_6); lean_dec(x_6); -lean_dec(x_5); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_4); -lean_ctor_set(x_20, 1, x_7); -return x_20; -} +x_8 = 0; +x_9 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1(x_7, x_8, x_5); +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_4); +lean_ctor_set(x_10, 1, x_9); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_3); +lean_ctor_set(x_11, 1, x_10); +return x_11; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___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_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__20(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) { _start: { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; -x_6 = l_Lean_Elab_Command_getRef(x_3, x_4, x_5); -x_7 = lean_ctor_get(x_6, 0); -lean_inc(x_7); -x_8 = lean_ctor_get(x_6, 1); -lean_inc(x_8); -lean_dec(x_6); -x_9 = l_Lean_replaceRef(x_1, x_7); -lean_dec(x_7); -lean_dec(x_1); -x_10 = !lean_is_exclusive(x_3); -if (x_10 == 0) +uint8_t x_11; +x_11 = lean_usize_dec_lt(x_6, x_5); +if (x_11 == 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; 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_11 = lean_ctor_get(x_3, 0); -x_12 = lean_ctor_get(x_3, 1); -x_13 = lean_ctor_get(x_3, 2); -x_14 = lean_ctor_get(x_3, 3); -x_15 = lean_ctor_get(x_3, 4); -x_16 = lean_ctor_get(x_3, 5); -x_17 = lean_ctor_get(x_3, 7); -x_18 = lean_ctor_get(x_3, 8); -x_19 = lean_ctor_get(x_3, 9); -x_20 = lean_ctor_get_uint8(x_3, sizeof(void*)*10); -x_21 = lean_ctor_get(x_3, 6); -lean_dec(x_21); -lean_inc(x_19); -lean_inc(x_18); -lean_inc(x_17); -lean_inc(x_9); -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_ctor_set(x_3, 6, x_9); -x_22 = lean_st_ref_get(x_4, x_8); -x_23 = lean_ctor_get(x_22, 0); +lean_object* x_12; +lean_dec(x_9); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_7); +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_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; uint8_t x_30; +x_13 = lean_array_uget(x_4, x_6); +x_21 = lean_ctor_get(x_7, 1); +lean_inc(x_21); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_ctor_get(x_7, 0); lean_inc(x_23); -x_24 = lean_ctor_get(x_22, 1); -lean_inc(x_24); -lean_dec(x_22); -x_25 = lean_ctor_get(x_23, 4); +if (lean_is_exclusive(x_7)) { + lean_ctor_release(x_7, 0); + lean_ctor_release(x_7, 1); + x_24 = x_7; +} else { + lean_dec_ref(x_7); + x_24 = lean_box(0); +} +x_25 = lean_ctor_get(x_21, 1); lean_inc(x_25); -lean_dec(x_23); -x_26 = lean_nat_dec_eq(x_13, x_25); -lean_dec(x_25); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -lean_dec(x_3); -x_27 = lean_unsigned_to_nat(1u); -x_28 = lean_nat_add(x_13, x_27); -lean_dec(x_13); -x_29 = lean_alloc_ctor(0, 10, 1); -lean_ctor_set(x_29, 0, x_11); -lean_ctor_set(x_29, 1, x_12); -lean_ctor_set(x_29, 2, x_28); -lean_ctor_set(x_29, 3, x_14); -lean_ctor_set(x_29, 4, x_15); -lean_ctor_set(x_29, 5, x_16); -lean_ctor_set(x_29, 6, x_9); -lean_ctor_set(x_29, 7, x_17); -lean_ctor_set(x_29, 8, x_18); -lean_ctor_set(x_29, 9, x_19); -lean_ctor_set_uint8(x_29, sizeof(void*)*10, x_20); -x_30 = l_Lean_Elab_Command_withFreshMacroScope___rarg(x_2, x_29, x_4, x_24); -return x_30; +if (lean_is_exclusive(x_21)) { + lean_ctor_release(x_21, 0); + lean_ctor_release(x_21, 1); + x_26 = x_21; +} else { + lean_dec_ref(x_21); + x_26 = lean_box(0); } -else +x_27 = lean_ctor_get(x_22, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_22, 1); +lean_inc(x_28); +x_29 = lean_ctor_get(x_22, 2); +lean_inc(x_29); +x_30 = lean_nat_dec_lt(x_27, x_28); +if (x_30 == 0) { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -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_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_29); +lean_dec(x_28); +lean_dec(x_27); lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); lean_dec(x_9); -lean_dec(x_2); -x_31 = l_Lean_Elab_Command_getRef(x_3, x_4, x_24); -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_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1(x_32, x_3, x_4, x_33); -lean_dec(x_4); -lean_dec(x_3); -return x_34; +if (lean_is_scalar(x_26)) { + x_31 = lean_alloc_ctor(0, 2, 0); +} else { + x_31 = x_26; +} +lean_ctor_set(x_31, 0, x_22); +lean_ctor_set(x_31, 1, x_25); +if (lean_is_scalar(x_24)) { + x_32 = lean_alloc_ctor(0, 2, 0); +} else { + x_32 = x_24; } +lean_ctor_set(x_32, 0, x_23); +lean_ctor_set(x_32, 1, 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_10); +return x_33; } 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; uint8_t 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; -x_35 = lean_ctor_get(x_3, 0); -x_36 = lean_ctor_get(x_3, 1); -x_37 = lean_ctor_get(x_3, 2); -x_38 = lean_ctor_get(x_3, 3); -x_39 = lean_ctor_get(x_3, 4); -x_40 = lean_ctor_get(x_3, 5); -x_41 = lean_ctor_get(x_3, 7); -x_42 = lean_ctor_get(x_3, 8); -x_43 = lean_ctor_get(x_3, 9); -x_44 = lean_ctor_get_uint8(x_3, sizeof(void*)*10); -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_inc(x_36); -lean_inc(x_35); -lean_dec(x_3); -lean_inc(x_43); -lean_inc(x_42); -lean_inc(x_41); -lean_inc(x_9); -lean_inc(x_40); -lean_inc(x_39); -lean_inc(x_38); -lean_inc(x_37); -lean_inc(x_36); -lean_inc(x_35); -x_45 = lean_alloc_ctor(0, 10, 1); -lean_ctor_set(x_45, 0, x_35); -lean_ctor_set(x_45, 1, x_36); -lean_ctor_set(x_45, 2, x_37); -lean_ctor_set(x_45, 3, x_38); -lean_ctor_set(x_45, 4, x_39); -lean_ctor_set(x_45, 5, x_40); -lean_ctor_set(x_45, 6, x_9); -lean_ctor_set(x_45, 7, x_41); -lean_ctor_set(x_45, 8, x_42); -lean_ctor_set(x_45, 9, x_43); -lean_ctor_set_uint8(x_45, sizeof(void*)*10, x_44); -x_46 = lean_st_ref_get(x_4, x_8); -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, 4); -lean_inc(x_49); -lean_dec(x_47); -x_50 = lean_nat_dec_eq(x_37, x_49); -lean_dec(x_49); -if (x_50 == 0) +uint8_t x_34; +x_34 = !lean_is_exclusive(x_22); +if (x_34 == 0) { -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -lean_dec(x_45); -x_51 = lean_unsigned_to_nat(1u); -x_52 = lean_nat_add(x_37, x_51); +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; uint8_t x_42; +x_35 = lean_ctor_get(x_22, 2); +lean_dec(x_35); +x_36 = lean_ctor_get(x_22, 1); +lean_dec(x_36); +x_37 = lean_ctor_get(x_22, 0); lean_dec(x_37); -x_53 = lean_alloc_ctor(0, 10, 1); -lean_ctor_set(x_53, 0, x_35); -lean_ctor_set(x_53, 1, x_36); -lean_ctor_set(x_53, 2, x_52); -lean_ctor_set(x_53, 3, x_38); -lean_ctor_set(x_53, 4, x_39); -lean_ctor_set(x_53, 5, x_40); -lean_ctor_set(x_53, 6, x_9); -lean_ctor_set(x_53, 7, x_41); -lean_ctor_set(x_53, 8, x_42); -lean_ctor_set(x_53, 9, x_43); -lean_ctor_set_uint8(x_53, sizeof(void*)*10, x_44); -x_54 = l_Lean_Elab_Command_withFreshMacroScope___rarg(x_2, x_53, x_4, x_48); -return x_54; -} -else +x_38 = lean_nat_add(x_27, x_29); +lean_ctor_set(x_22, 0, x_38); +x_39 = lean_ctor_get(x_23, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_23, 1); +lean_inc(x_40); +x_41 = lean_ctor_get(x_23, 2); +lean_inc(x_41); +x_42 = lean_nat_dec_lt(x_40, x_41); +if (x_42 == 0) { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -lean_dec(x_43); -lean_dec(x_42); +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_dec(x_41); lean_dec(x_40); lean_dec(x_39); -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_35); +lean_dec(x_27); +lean_dec(x_13); lean_dec(x_9); -lean_dec(x_2); -x_55 = l_Lean_Elab_Command_getRef(x_45, x_4, x_48); -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_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1(x_56, x_45, x_4, x_57); -lean_dec(x_4); -lean_dec(x_45); -return x_58; +if (lean_is_scalar(x_26)) { + x_43 = lean_alloc_ctor(0, 2, 0); +} else { + x_43 = x_26; +} +lean_ctor_set(x_43, 0, x_22); +lean_ctor_set(x_43, 1, x_25); +if (lean_is_scalar(x_24)) { + x_44 = lean_alloc_ctor(0, 2, 0); +} else { + x_44 = x_24; } +lean_ctor_set(x_44, 0, x_23); +lean_ctor_set(x_44, 1, 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_10); +return x_45; } +else +{ +uint8_t x_46; +x_46 = !lean_is_exclusive(x_23); +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; +x_47 = lean_ctor_get(x_23, 2); +lean_dec(x_47); +x_48 = lean_ctor_get(x_23, 1); +lean_dec(x_48); +x_49 = lean_ctor_get(x_23, 0); +lean_dec(x_49); +x_50 = lean_array_fget(x_39, x_40); +x_51 = lean_unsigned_to_nat(1u); +x_52 = lean_nat_add(x_40, x_51); +lean_dec(x_40); +lean_ctor_set(x_23, 1, x_52); +if (lean_obj_tag(x_2) == 0) +{ +lean_object* x_180; +x_180 = lean_box(0); +x_53 = x_180; +goto block_179; } +else +{ +lean_object* x_181; lean_object* x_182; uint8_t x_183; +x_181 = lean_ctor_get(x_2, 0); +x_182 = lean_array_get_size(x_181); +x_183 = lean_nat_dec_lt(x_27, x_182); +lean_dec(x_182); +if (x_183 == 0) +{ +lean_object* x_184; +x_184 = lean_box(0); +x_53 = x_184; +goto block_179; } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: +else { -lean_object* x_6; lean_object* x_7; -x_6 = l_Lean_MessageData_ofSyntax(x_1); -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_object* x_185; lean_object* x_186; +x_185 = lean_array_fget(x_181, x_27); +x_186 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_186, 0, x_185); +x_53 = x_186; +goto block_179; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: +block_179: { -lean_object* x_6; -lean_inc(x_4); -lean_inc(x_3); -x_6 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__13(x_1, x_3, x_4, x_5); -if (lean_obj_tag(x_6) == 0) +lean_object* x_54; uint8_t x_81; +x_81 = lean_unbox(x_25); +if (x_81 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_7 = lean_ctor_get(x_6, 0); -lean_inc(x_7); -x_8 = lean_ctor_get(x_6, 1); -lean_inc(x_8); -lean_dec(x_6); -lean_inc(x_7); -x_9 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand), 4, 1); -lean_closure_set(x_9, 0, x_7); -x_10 = l_Lean_Elab_Command_withMacroExpansion___rarg(x_2, x_7, x_9, x_3, x_4, x_8); -return x_10; +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; 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_dec(x_27); +x_82 = lean_ctor_get(x_8, 0); +x_83 = lean_ctor_get(x_8, 1); +x_84 = lean_ctor_get(x_8, 2); +x_85 = lean_ctor_get(x_8, 3); +x_86 = lean_ctor_get(x_8, 4); +x_87 = lean_ctor_get(x_8, 5); +x_88 = lean_ctor_get(x_8, 6); +x_89 = lean_ctor_get(x_8, 7); +x_90 = lean_ctor_get(x_8, 9); +x_91 = lean_ctor_get_uint8(x_8, sizeof(void*)*10); +x_92 = lean_box(0); +x_93 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_93, 0, x_92); +lean_ctor_set(x_93, 1, x_50); +x_94 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_94, 0, x_93); +lean_inc(x_90); +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_inc(x_82); +x_95 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_95, 0, x_82); +lean_ctor_set(x_95, 1, x_83); +lean_ctor_set(x_95, 2, x_84); +lean_ctor_set(x_95, 3, x_85); +lean_ctor_set(x_95, 4, x_86); +lean_ctor_set(x_95, 5, x_87); +lean_ctor_set(x_95, 6, x_88); +lean_ctor_set(x_95, 7, x_89); +lean_ctor_set(x_95, 8, x_94); +lean_ctor_set(x_95, 9, x_90); +lean_ctor_set_uint8(x_95, sizeof(void*)*10, x_91); +lean_inc(x_9); +lean_inc(x_13); +x_96 = l_Lean_Elab_Command_elabCommand(x_13, x_95, x_9, x_10); +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_54 = x_97; +goto block_80; } else { -uint8_t x_11; -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_11 = !lean_is_exclusive(x_6); -if (x_11 == 0) +uint8_t x_98; +lean_dec(x_53); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_98 = !lean_is_exclusive(x_96); +if (x_98 == 0) { -return x_6; +return x_96; } else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = lean_ctor_get(x_6, 0); -x_13 = lean_ctor_get(x_6, 1); -lean_inc(x_13); -lean_inc(x_12); -lean_dec(x_6); -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; -} +lean_object* x_99; lean_object* x_100; lean_object* x_101; +x_99 = lean_ctor_get(x_96, 0); +x_100 = lean_ctor_get(x_96, 1); +lean_inc(x_100); +lean_inc(x_99); +lean_dec(x_96); +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; } } } -static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__1() { +else +{ +if (lean_obj_tag(x_1) == 0) +{ +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; uint8_t x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; +lean_dec(x_27); +x_102 = lean_ctor_get(x_8, 0); +x_103 = lean_ctor_get(x_8, 1); +x_104 = lean_ctor_get(x_8, 2); +x_105 = lean_ctor_get(x_8, 3); +x_106 = lean_ctor_get(x_8, 4); +x_107 = lean_ctor_get(x_8, 5); +x_108 = lean_ctor_get(x_8, 6); +x_109 = lean_ctor_get(x_8, 7); +x_110 = lean_ctor_get(x_8, 9); +x_111 = lean_ctor_get_uint8(x_8, sizeof(void*)*10); +x_112 = lean_box(0); +x_113 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_113, 0, x_112); +lean_ctor_set(x_113, 1, x_50); +x_114 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_114, 0, x_113); +lean_inc(x_110); +lean_inc(x_109); +lean_inc(x_108); +lean_inc(x_107); +lean_inc(x_106); +lean_inc(x_105); +lean_inc(x_104); +lean_inc(x_103); +lean_inc(x_102); +x_115 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_115, 0, x_102); +lean_ctor_set(x_115, 1, x_103); +lean_ctor_set(x_115, 2, x_104); +lean_ctor_set(x_115, 3, x_105); +lean_ctor_set(x_115, 4, x_106); +lean_ctor_set(x_115, 5, x_107); +lean_ctor_set(x_115, 6, x_108); +lean_ctor_set(x_115, 7, x_109); +lean_ctor_set(x_115, 8, x_114); +lean_ctor_set(x_115, 9, x_110); +lean_ctor_set_uint8(x_115, sizeof(void*)*10, x_111); +lean_inc(x_9); +lean_inc(x_13); +x_116 = l_Lean_Elab_Command_elabCommand(x_13, x_115, x_9, x_10); +if (lean_obj_tag(x_116) == 0) +{ +lean_object* x_117; +x_117 = lean_ctor_get(x_116, 1); +lean_inc(x_117); +lean_dec(x_116); +x_54 = x_117; +goto block_80; +} +else +{ +uint8_t x_118; +lean_dec(x_53); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_118 = !lean_is_exclusive(x_116); +if (x_118 == 0) +{ +return x_116; +} +else +{ +lean_object* x_119; lean_object* x_120; lean_object* x_121; +x_119 = lean_ctor_get(x_116, 0); +x_120 = lean_ctor_get(x_116, 1); +lean_inc(x_120); +lean_inc(x_119); +lean_dec(x_116); +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 +{ +if (lean_obj_tag(x_53) == 0) +{ +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; uint8_t x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; +lean_dec(x_27); +x_122 = lean_ctor_get(x_8, 0); +x_123 = lean_ctor_get(x_8, 1); +x_124 = lean_ctor_get(x_8, 2); +x_125 = lean_ctor_get(x_8, 3); +x_126 = lean_ctor_get(x_8, 4); +x_127 = lean_ctor_get(x_8, 5); +x_128 = lean_ctor_get(x_8, 6); +x_129 = lean_ctor_get(x_8, 7); +x_130 = lean_ctor_get(x_8, 9); +x_131 = lean_ctor_get_uint8(x_8, sizeof(void*)*10); +x_132 = lean_box(0); +x_133 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_133, 0, x_132); +lean_ctor_set(x_133, 1, x_50); +x_134 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_134, 0, x_133); +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); +x_135 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_135, 0, x_122); +lean_ctor_set(x_135, 1, x_123); +lean_ctor_set(x_135, 2, x_124); +lean_ctor_set(x_135, 3, x_125); +lean_ctor_set(x_135, 4, x_126); +lean_ctor_set(x_135, 5, x_127); +lean_ctor_set(x_135, 6, x_128); +lean_ctor_set(x_135, 7, x_129); +lean_ctor_set(x_135, 8, x_134); +lean_ctor_set(x_135, 9, x_130); +lean_ctor_set_uint8(x_135, sizeof(void*)*10, x_131); +lean_inc(x_9); +lean_inc(x_13); +x_136 = l_Lean_Elab_Command_elabCommand(x_13, x_135, x_9, x_10); +if (lean_obj_tag(x_136) == 0) +{ +lean_object* x_137; +x_137 = lean_ctor_get(x_136, 1); +lean_inc(x_137); +lean_dec(x_136); +x_54 = x_137; +goto block_80; +} +else +{ +uint8_t x_138; +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_138 = !lean_is_exclusive(x_136); +if (x_138 == 0) +{ +return x_136; +} +else +{ +lean_object* x_139; lean_object* x_140; lean_object* x_141; +x_139 = lean_ctor_get(x_136, 0); +x_140 = lean_ctor_get(x_136, 1); +lean_inc(x_140); +lean_inc(x_139); +lean_dec(x_136); +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; +} +} +} +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; lean_object* x_148; lean_object* x_149; lean_object* x_150; uint8_t x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; uint8_t x_156; +x_142 = lean_ctor_get(x_8, 0); +x_143 = lean_ctor_get(x_8, 1); +x_144 = lean_ctor_get(x_8, 2); +x_145 = lean_ctor_get(x_8, 3); +x_146 = lean_ctor_get(x_8, 4); +x_147 = lean_ctor_get(x_8, 5); +x_148 = lean_ctor_get(x_8, 6); +x_149 = lean_ctor_get(x_8, 7); +x_150 = lean_ctor_get(x_8, 9); +x_151 = lean_ctor_get_uint8(x_8, sizeof(void*)*10); +x_152 = lean_ctor_get(x_1, 0); +x_153 = lean_ctor_get(x_53, 0); +lean_inc(x_153); +x_154 = lean_ctor_get(x_152, 4); +x_155 = lean_array_get_size(x_154); +x_156 = lean_nat_dec_lt(x_27, x_155); +lean_dec(x_155); +if (x_156 == 0) +{ +lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; +lean_dec(x_153); +lean_dec(x_27); +x_157 = lean_box(0); +x_158 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_158, 0, x_157); +lean_ctor_set(x_158, 1, x_50); +x_159 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_159, 0, x_158); +lean_inc(x_150); +lean_inc(x_149); +lean_inc(x_148); +lean_inc(x_147); +lean_inc(x_146); +lean_inc(x_145); +lean_inc(x_144); +lean_inc(x_143); +lean_inc(x_142); +x_160 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_160, 0, x_142); +lean_ctor_set(x_160, 1, x_143); +lean_ctor_set(x_160, 2, x_144); +lean_ctor_set(x_160, 3, x_145); +lean_ctor_set(x_160, 4, x_146); +lean_ctor_set(x_160, 5, x_147); +lean_ctor_set(x_160, 6, x_148); +lean_ctor_set(x_160, 7, x_149); +lean_ctor_set(x_160, 8, x_159); +lean_ctor_set(x_160, 9, x_150); +lean_ctor_set_uint8(x_160, sizeof(void*)*10, x_151); +lean_inc(x_9); +lean_inc(x_13); +x_161 = l_Lean_Elab_Command_elabCommand(x_13, x_160, x_9, x_10); +if (lean_obj_tag(x_161) == 0) +{ +lean_object* x_162; +x_162 = lean_ctor_get(x_161, 1); +lean_inc(x_162); +lean_dec(x_161); +x_54 = x_162; +goto block_80; +} +else +{ +uint8_t x_163; +lean_dec(x_53); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_163 = !lean_is_exclusive(x_161); +if (x_163 == 0) +{ +return x_161; +} +else +{ +lean_object* x_164; lean_object* x_165; lean_object* x_166; +x_164 = lean_ctor_get(x_161, 0); +x_165 = lean_ctor_get(x_161, 1); +lean_inc(x_165); +lean_inc(x_164); +lean_dec(x_161); +x_166 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_166, 0, x_164); +lean_ctor_set(x_166, 1, x_165); +return x_166; +} +} +} +else +{ +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; +x_167 = lean_array_fget(x_154, x_27); +lean_dec(x_27); +x_168 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_168, 0, x_153); +lean_ctor_set(x_168, 1, x_167); +x_169 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_169, 0, x_168); +x_170 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_170, 0, x_169); +lean_ctor_set(x_170, 1, x_50); +x_171 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_171, 0, x_170); +lean_inc(x_150); +lean_inc(x_149); +lean_inc(x_148); +lean_inc(x_147); +lean_inc(x_146); +lean_inc(x_145); +lean_inc(x_144); +lean_inc(x_143); +lean_inc(x_142); +x_172 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_172, 0, x_142); +lean_ctor_set(x_172, 1, x_143); +lean_ctor_set(x_172, 2, x_144); +lean_ctor_set(x_172, 3, x_145); +lean_ctor_set(x_172, 4, x_146); +lean_ctor_set(x_172, 5, x_147); +lean_ctor_set(x_172, 6, x_148); +lean_ctor_set(x_172, 7, x_149); +lean_ctor_set(x_172, 8, x_171); +lean_ctor_set(x_172, 9, x_150); +lean_ctor_set_uint8(x_172, sizeof(void*)*10, x_151); +lean_inc(x_9); +lean_inc(x_13); +x_173 = l_Lean_Elab_Command_elabCommand(x_13, x_172, x_9, x_10); +if (lean_obj_tag(x_173) == 0) +{ +lean_object* x_174; +x_174 = lean_ctor_get(x_173, 1); +lean_inc(x_174); +lean_dec(x_173); +x_54 = x_174; +goto block_80; +} +else +{ +uint8_t x_175; +lean_dec(x_53); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_175 = !lean_is_exclusive(x_173); +if (x_175 == 0) +{ +return x_173; +} +else +{ +lean_object* x_176; lean_object* x_177; lean_object* x_178; +x_176 = lean_ctor_get(x_173, 0); +x_177 = lean_ctor_get(x_173, 1); +lean_inc(x_177); +lean_inc(x_176); +lean_dec(x_173); +x_178 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_178, 0, x_176); +lean_ctor_set(x_178, 1, x_177); +return x_178; +} +} +} +} +} +} +block_80: +{ +uint8_t x_55; +x_55 = lean_unbox(x_25); +lean_dec(x_25); +if (x_55 == 0) +{ +uint8_t x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_dec(x_53); +lean_dec(x_13); +x_56 = 0; +x_57 = lean_box(x_56); +if (lean_is_scalar(x_26)) { + x_58 = lean_alloc_ctor(0, 2, 0); +} else { + x_58 = x_26; +} +lean_ctor_set(x_58, 0, x_22); +lean_ctor_set(x_58, 1, x_57); +if (lean_is_scalar(x_24)) { + x_59 = lean_alloc_ctor(0, 2, 0); +} else { + x_59 = x_24; +} +lean_ctor_set(x_59, 0, x_23); +lean_ctor_set(x_59, 1, x_58); +x_60 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_60, 0, x_59); +x_14 = x_60; +x_15 = x_54; +goto block_20; +} +else +{ +if (lean_obj_tag(x_53) == 0) +{ +uint8_t x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; +lean_dec(x_13); +x_61 = 0; +x_62 = lean_box(x_61); +if (lean_is_scalar(x_26)) { + x_63 = lean_alloc_ctor(0, 2, 0); +} else { + x_63 = x_26; +} +lean_ctor_set(x_63, 0, x_22); +lean_ctor_set(x_63, 1, x_62); +if (lean_is_scalar(x_24)) { + x_64 = lean_alloc_ctor(0, 2, 0); +} else { + x_64 = x_24; +} +lean_ctor_set(x_64, 0, x_23); +lean_ctor_set(x_64, 1, x_63); +x_65 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_65, 0, x_64); +x_14 = x_65; +x_15 = x_54; +goto block_20; +} +else +{ +uint8_t x_66; +x_66 = !lean_is_exclusive(x_53); +if (x_66 == 0) +{ +lean_object* x_67; lean_object* x_68; uint8_t x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_67 = lean_ctor_get(x_53, 0); +x_68 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_3, x_67, x_13); +x_69 = lean_unbox(x_68); +lean_dec(x_68); +x_70 = lean_box(x_69); +if (lean_is_scalar(x_26)) { + x_71 = lean_alloc_ctor(0, 2, 0); +} else { + x_71 = x_26; +} +lean_ctor_set(x_71, 0, x_22); +lean_ctor_set(x_71, 1, x_70); +if (lean_is_scalar(x_24)) { + x_72 = lean_alloc_ctor(0, 2, 0); +} else { + x_72 = x_24; +} +lean_ctor_set(x_72, 0, x_23); +lean_ctor_set(x_72, 1, x_71); +lean_ctor_set(x_53, 0, x_72); +x_14 = x_53; +x_15 = x_54; +goto block_20; +} +else +{ +lean_object* x_73; lean_object* x_74; uint8_t x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; +x_73 = lean_ctor_get(x_53, 0); +lean_inc(x_73); +lean_dec(x_53); +x_74 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_3, x_73, x_13); +x_75 = lean_unbox(x_74); +lean_dec(x_74); +x_76 = lean_box(x_75); +if (lean_is_scalar(x_26)) { + x_77 = lean_alloc_ctor(0, 2, 0); +} else { + x_77 = x_26; +} +lean_ctor_set(x_77, 0, x_22); +lean_ctor_set(x_77, 1, x_76); +if (lean_is_scalar(x_24)) { + x_78 = lean_alloc_ctor(0, 2, 0); +} else { + x_78 = x_24; +} +lean_ctor_set(x_78, 0, x_23); +lean_ctor_set(x_78, 1, x_77); +x_79 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_79, 0, x_78); +x_14 = x_79; +x_15 = x_54; +goto block_20; +} +} +} +} +} +} +else +{ +lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; +lean_dec(x_23); +x_187 = lean_array_fget(x_39, x_40); +x_188 = lean_unsigned_to_nat(1u); +x_189 = lean_nat_add(x_40, x_188); +lean_dec(x_40); +x_190 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_190, 0, x_39); +lean_ctor_set(x_190, 1, x_189); +lean_ctor_set(x_190, 2, x_41); +if (lean_obj_tag(x_2) == 0) +{ +lean_object* x_312; +x_312 = lean_box(0); +x_191 = x_312; +goto block_311; +} +else +{ +lean_object* x_313; lean_object* x_314; uint8_t x_315; +x_313 = lean_ctor_get(x_2, 0); +x_314 = lean_array_get_size(x_313); +x_315 = lean_nat_dec_lt(x_27, x_314); +lean_dec(x_314); +if (x_315 == 0) +{ +lean_object* x_316; +x_316 = lean_box(0); +x_191 = x_316; +goto block_311; +} +else +{ +lean_object* x_317; lean_object* x_318; +x_317 = lean_array_fget(x_313, x_27); +x_318 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_318, 0, x_317); +x_191 = x_318; +goto block_311; +} +} +block_311: +{ +lean_object* x_192; uint8_t x_213; +x_213 = lean_unbox(x_25); +if (x_213 == 0) +{ +lean_object* x_214; 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; 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_dec(x_27); +x_214 = lean_ctor_get(x_8, 0); +x_215 = lean_ctor_get(x_8, 1); +x_216 = lean_ctor_get(x_8, 2); +x_217 = lean_ctor_get(x_8, 3); +x_218 = lean_ctor_get(x_8, 4); +x_219 = lean_ctor_get(x_8, 5); +x_220 = lean_ctor_get(x_8, 6); +x_221 = lean_ctor_get(x_8, 7); +x_222 = lean_ctor_get(x_8, 9); +x_223 = lean_ctor_get_uint8(x_8, sizeof(void*)*10); +x_224 = lean_box(0); +x_225 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_225, 0, x_224); +lean_ctor_set(x_225, 1, x_187); +x_226 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_226, 0, x_225); +lean_inc(x_222); +lean_inc(x_221); +lean_inc(x_220); +lean_inc(x_219); +lean_inc(x_218); +lean_inc(x_217); +lean_inc(x_216); +lean_inc(x_215); +lean_inc(x_214); +x_227 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_227, 0, x_214); +lean_ctor_set(x_227, 1, x_215); +lean_ctor_set(x_227, 2, x_216); +lean_ctor_set(x_227, 3, x_217); +lean_ctor_set(x_227, 4, x_218); +lean_ctor_set(x_227, 5, x_219); +lean_ctor_set(x_227, 6, x_220); +lean_ctor_set(x_227, 7, x_221); +lean_ctor_set(x_227, 8, x_226); +lean_ctor_set(x_227, 9, x_222); +lean_ctor_set_uint8(x_227, sizeof(void*)*10, x_223); +lean_inc(x_9); +lean_inc(x_13); +x_228 = l_Lean_Elab_Command_elabCommand(x_13, x_227, x_9, x_10); +if (lean_obj_tag(x_228) == 0) +{ +lean_object* x_229; +x_229 = lean_ctor_get(x_228, 1); +lean_inc(x_229); +lean_dec(x_228); +x_192 = x_229; +goto block_212; +} +else +{ +lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; +lean_dec(x_191); +lean_dec(x_190); +lean_dec(x_22); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_230 = lean_ctor_get(x_228, 0); +lean_inc(x_230); +x_231 = lean_ctor_get(x_228, 1); +lean_inc(x_231); +if (lean_is_exclusive(x_228)) { + lean_ctor_release(x_228, 0); + lean_ctor_release(x_228, 1); + x_232 = x_228; +} else { + lean_dec_ref(x_228); + x_232 = lean_box(0); +} +if (lean_is_scalar(x_232)) { + x_233 = lean_alloc_ctor(1, 2, 0); +} else { + x_233 = x_232; +} +lean_ctor_set(x_233, 0, x_230); +lean_ctor_set(x_233, 1, x_231); +return x_233; +} +} +else +{ +if (lean_obj_tag(x_1) == 0) +{ +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; uint8_t x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; +lean_dec(x_27); +x_234 = lean_ctor_get(x_8, 0); +x_235 = lean_ctor_get(x_8, 1); +x_236 = lean_ctor_get(x_8, 2); +x_237 = lean_ctor_get(x_8, 3); +x_238 = lean_ctor_get(x_8, 4); +x_239 = lean_ctor_get(x_8, 5); +x_240 = lean_ctor_get(x_8, 6); +x_241 = lean_ctor_get(x_8, 7); +x_242 = lean_ctor_get(x_8, 9); +x_243 = lean_ctor_get_uint8(x_8, sizeof(void*)*10); +x_244 = lean_box(0); +x_245 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_245, 0, x_244); +lean_ctor_set(x_245, 1, x_187); +x_246 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_246, 0, x_245); +lean_inc(x_242); +lean_inc(x_241); +lean_inc(x_240); +lean_inc(x_239); +lean_inc(x_238); +lean_inc(x_237); +lean_inc(x_236); +lean_inc(x_235); +lean_inc(x_234); +x_247 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_247, 0, x_234); +lean_ctor_set(x_247, 1, x_235); +lean_ctor_set(x_247, 2, x_236); +lean_ctor_set(x_247, 3, x_237); +lean_ctor_set(x_247, 4, x_238); +lean_ctor_set(x_247, 5, x_239); +lean_ctor_set(x_247, 6, x_240); +lean_ctor_set(x_247, 7, x_241); +lean_ctor_set(x_247, 8, x_246); +lean_ctor_set(x_247, 9, x_242); +lean_ctor_set_uint8(x_247, sizeof(void*)*10, x_243); +lean_inc(x_9); +lean_inc(x_13); +x_248 = l_Lean_Elab_Command_elabCommand(x_13, x_247, x_9, x_10); +if (lean_obj_tag(x_248) == 0) +{ +lean_object* x_249; +x_249 = lean_ctor_get(x_248, 1); +lean_inc(x_249); +lean_dec(x_248); +x_192 = x_249; +goto block_212; +} +else +{ +lean_object* x_250; lean_object* x_251; lean_object* x_252; lean_object* x_253; +lean_dec(x_191); +lean_dec(x_190); +lean_dec(x_22); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_250 = lean_ctor_get(x_248, 0); +lean_inc(x_250); +x_251 = lean_ctor_get(x_248, 1); +lean_inc(x_251); +if (lean_is_exclusive(x_248)) { + lean_ctor_release(x_248, 0); + lean_ctor_release(x_248, 1); + x_252 = x_248; +} else { + lean_dec_ref(x_248); + x_252 = lean_box(0); +} +if (lean_is_scalar(x_252)) { + x_253 = lean_alloc_ctor(1, 2, 0); +} else { + x_253 = x_252; +} +lean_ctor_set(x_253, 0, x_250); +lean_ctor_set(x_253, 1, x_251); +return x_253; +} +} +else +{ +if (lean_obj_tag(x_191) == 0) +{ +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; uint8_t x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; lean_object* x_267; lean_object* x_268; +lean_dec(x_27); +x_254 = lean_ctor_get(x_8, 0); +x_255 = lean_ctor_get(x_8, 1); +x_256 = lean_ctor_get(x_8, 2); +x_257 = lean_ctor_get(x_8, 3); +x_258 = lean_ctor_get(x_8, 4); +x_259 = lean_ctor_get(x_8, 5); +x_260 = lean_ctor_get(x_8, 6); +x_261 = lean_ctor_get(x_8, 7); +x_262 = lean_ctor_get(x_8, 9); +x_263 = lean_ctor_get_uint8(x_8, sizeof(void*)*10); +x_264 = lean_box(0); +x_265 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_265, 0, x_264); +lean_ctor_set(x_265, 1, x_187); +x_266 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_266, 0, x_265); +lean_inc(x_262); +lean_inc(x_261); +lean_inc(x_260); +lean_inc(x_259); +lean_inc(x_258); +lean_inc(x_257); +lean_inc(x_256); +lean_inc(x_255); +lean_inc(x_254); +x_267 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_267, 0, x_254); +lean_ctor_set(x_267, 1, x_255); +lean_ctor_set(x_267, 2, x_256); +lean_ctor_set(x_267, 3, x_257); +lean_ctor_set(x_267, 4, x_258); +lean_ctor_set(x_267, 5, x_259); +lean_ctor_set(x_267, 6, x_260); +lean_ctor_set(x_267, 7, x_261); +lean_ctor_set(x_267, 8, x_266); +lean_ctor_set(x_267, 9, x_262); +lean_ctor_set_uint8(x_267, sizeof(void*)*10, x_263); +lean_inc(x_9); +lean_inc(x_13); +x_268 = l_Lean_Elab_Command_elabCommand(x_13, x_267, x_9, x_10); +if (lean_obj_tag(x_268) == 0) +{ +lean_object* x_269; +x_269 = lean_ctor_get(x_268, 1); +lean_inc(x_269); +lean_dec(x_268); +x_192 = x_269; +goto block_212; +} +else +{ +lean_object* x_270; lean_object* x_271; lean_object* x_272; lean_object* x_273; +lean_dec(x_190); +lean_dec(x_22); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_270 = lean_ctor_get(x_268, 0); +lean_inc(x_270); +x_271 = lean_ctor_get(x_268, 1); +lean_inc(x_271); +if (lean_is_exclusive(x_268)) { + lean_ctor_release(x_268, 0); + lean_ctor_release(x_268, 1); + x_272 = x_268; +} else { + lean_dec_ref(x_268); + x_272 = lean_box(0); +} +if (lean_is_scalar(x_272)) { + x_273 = lean_alloc_ctor(1, 2, 0); +} else { + x_273 = x_272; +} +lean_ctor_set(x_273, 0, x_270); +lean_ctor_set(x_273, 1, x_271); +return x_273; +} +} +else +{ +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; uint8_t x_283; lean_object* x_284; lean_object* x_285; lean_object* x_286; lean_object* x_287; uint8_t x_288; +x_274 = lean_ctor_get(x_8, 0); +x_275 = lean_ctor_get(x_8, 1); +x_276 = lean_ctor_get(x_8, 2); +x_277 = lean_ctor_get(x_8, 3); +x_278 = lean_ctor_get(x_8, 4); +x_279 = lean_ctor_get(x_8, 5); +x_280 = lean_ctor_get(x_8, 6); +x_281 = lean_ctor_get(x_8, 7); +x_282 = lean_ctor_get(x_8, 9); +x_283 = lean_ctor_get_uint8(x_8, sizeof(void*)*10); +x_284 = lean_ctor_get(x_1, 0); +x_285 = lean_ctor_get(x_191, 0); +lean_inc(x_285); +x_286 = lean_ctor_get(x_284, 4); +x_287 = lean_array_get_size(x_286); +x_288 = lean_nat_dec_lt(x_27, x_287); +lean_dec(x_287); +if (x_288 == 0) +{ +lean_object* x_289; lean_object* x_290; lean_object* x_291; lean_object* x_292; lean_object* x_293; +lean_dec(x_285); +lean_dec(x_27); +x_289 = lean_box(0); +x_290 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_290, 0, x_289); +lean_ctor_set(x_290, 1, x_187); +x_291 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_291, 0, x_290); +lean_inc(x_282); +lean_inc(x_281); +lean_inc(x_280); +lean_inc(x_279); +lean_inc(x_278); +lean_inc(x_277); +lean_inc(x_276); +lean_inc(x_275); +lean_inc(x_274); +x_292 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_292, 0, x_274); +lean_ctor_set(x_292, 1, x_275); +lean_ctor_set(x_292, 2, x_276); +lean_ctor_set(x_292, 3, x_277); +lean_ctor_set(x_292, 4, x_278); +lean_ctor_set(x_292, 5, x_279); +lean_ctor_set(x_292, 6, x_280); +lean_ctor_set(x_292, 7, x_281); +lean_ctor_set(x_292, 8, x_291); +lean_ctor_set(x_292, 9, x_282); +lean_ctor_set_uint8(x_292, sizeof(void*)*10, x_283); +lean_inc(x_9); +lean_inc(x_13); +x_293 = l_Lean_Elab_Command_elabCommand(x_13, x_292, x_9, x_10); +if (lean_obj_tag(x_293) == 0) +{ +lean_object* x_294; +x_294 = lean_ctor_get(x_293, 1); +lean_inc(x_294); +lean_dec(x_293); +x_192 = x_294; +goto block_212; +} +else +{ +lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; +lean_dec(x_191); +lean_dec(x_190); +lean_dec(x_22); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_295 = lean_ctor_get(x_293, 0); +lean_inc(x_295); +x_296 = lean_ctor_get(x_293, 1); +lean_inc(x_296); +if (lean_is_exclusive(x_293)) { + lean_ctor_release(x_293, 0); + lean_ctor_release(x_293, 1); + x_297 = x_293; +} else { + lean_dec_ref(x_293); + 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_object* x_303; lean_object* x_304; lean_object* x_305; +x_299 = lean_array_fget(x_286, x_27); +lean_dec(x_27); +x_300 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_300, 0, x_285); +lean_ctor_set(x_300, 1, x_299); +x_301 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_301, 0, x_300); +x_302 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_302, 0, x_301); +lean_ctor_set(x_302, 1, x_187); +x_303 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_303, 0, x_302); +lean_inc(x_282); +lean_inc(x_281); +lean_inc(x_280); +lean_inc(x_279); +lean_inc(x_278); +lean_inc(x_277); +lean_inc(x_276); +lean_inc(x_275); +lean_inc(x_274); +x_304 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_304, 0, x_274); +lean_ctor_set(x_304, 1, x_275); +lean_ctor_set(x_304, 2, x_276); +lean_ctor_set(x_304, 3, x_277); +lean_ctor_set(x_304, 4, x_278); +lean_ctor_set(x_304, 5, x_279); +lean_ctor_set(x_304, 6, x_280); +lean_ctor_set(x_304, 7, x_281); +lean_ctor_set(x_304, 8, x_303); +lean_ctor_set(x_304, 9, x_282); +lean_ctor_set_uint8(x_304, sizeof(void*)*10, x_283); +lean_inc(x_9); +lean_inc(x_13); +x_305 = l_Lean_Elab_Command_elabCommand(x_13, x_304, x_9, x_10); +if (lean_obj_tag(x_305) == 0) +{ +lean_object* x_306; +x_306 = lean_ctor_get(x_305, 1); +lean_inc(x_306); +lean_dec(x_305); +x_192 = x_306; +goto block_212; +} +else +{ +lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; +lean_dec(x_191); +lean_dec(x_190); +lean_dec(x_22); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_307 = lean_ctor_get(x_305, 0); +lean_inc(x_307); +x_308 = lean_ctor_get(x_305, 1); +lean_inc(x_308); +if (lean_is_exclusive(x_305)) { + lean_ctor_release(x_305, 0); + lean_ctor_release(x_305, 1); + x_309 = x_305; +} else { + lean_dec_ref(x_305); + 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; +} +} +} +} +} +block_212: +{ +uint8_t x_193; +x_193 = lean_unbox(x_25); +lean_dec(x_25); +if (x_193 == 0) +{ +uint8_t x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; +lean_dec(x_191); +lean_dec(x_13); +x_194 = 0; +x_195 = lean_box(x_194); +if (lean_is_scalar(x_26)) { + x_196 = lean_alloc_ctor(0, 2, 0); +} else { + x_196 = x_26; +} +lean_ctor_set(x_196, 0, x_22); +lean_ctor_set(x_196, 1, x_195); +if (lean_is_scalar(x_24)) { + x_197 = lean_alloc_ctor(0, 2, 0); +} else { + x_197 = x_24; +} +lean_ctor_set(x_197, 0, x_190); +lean_ctor_set(x_197, 1, x_196); +x_198 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_198, 0, x_197); +x_14 = x_198; +x_15 = x_192; +goto block_20; +} +else +{ +if (lean_obj_tag(x_191) == 0) +{ +uint8_t x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; +lean_dec(x_13); +x_199 = 0; +x_200 = lean_box(x_199); +if (lean_is_scalar(x_26)) { + x_201 = lean_alloc_ctor(0, 2, 0); +} else { + x_201 = x_26; +} +lean_ctor_set(x_201, 0, x_22); +lean_ctor_set(x_201, 1, x_200); +if (lean_is_scalar(x_24)) { + x_202 = lean_alloc_ctor(0, 2, 0); +} else { + x_202 = x_24; +} +lean_ctor_set(x_202, 0, x_190); +lean_ctor_set(x_202, 1, x_201); +x_203 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_203, 0, x_202); +x_14 = x_203; +x_15 = x_192; +goto block_20; +} +else +{ +lean_object* x_204; lean_object* x_205; lean_object* x_206; uint8_t x_207; lean_object* x_208; lean_object* x_209; lean_object* x_210; lean_object* x_211; +x_204 = lean_ctor_get(x_191, 0); +lean_inc(x_204); +if (lean_is_exclusive(x_191)) { + lean_ctor_release(x_191, 0); + x_205 = x_191; +} else { + lean_dec_ref(x_191); + x_205 = lean_box(0); +} +x_206 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_3, x_204, x_13); +x_207 = lean_unbox(x_206); +lean_dec(x_206); +x_208 = lean_box(x_207); +if (lean_is_scalar(x_26)) { + x_209 = lean_alloc_ctor(0, 2, 0); +} else { + x_209 = x_26; +} +lean_ctor_set(x_209, 0, x_22); +lean_ctor_set(x_209, 1, x_208); +if (lean_is_scalar(x_24)) { + x_210 = lean_alloc_ctor(0, 2, 0); +} else { + x_210 = x_24; +} +lean_ctor_set(x_210, 0, x_190); +lean_ctor_set(x_210, 1, x_209); +if (lean_is_scalar(x_205)) { + x_211 = lean_alloc_ctor(1, 1, 0); +} else { + x_211 = x_205; +} +lean_ctor_set(x_211, 0, x_210); +x_14 = x_211; +x_15 = x_192; +goto block_20; +} +} +} +} +} +} +} +else +{ +lean_object* x_319; lean_object* x_320; lean_object* x_321; lean_object* x_322; lean_object* x_323; uint8_t x_324; +lean_dec(x_22); +x_319 = lean_nat_add(x_27, x_29); +x_320 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_320, 0, x_319); +lean_ctor_set(x_320, 1, x_28); +lean_ctor_set(x_320, 2, x_29); +x_321 = lean_ctor_get(x_23, 0); +lean_inc(x_321); +x_322 = lean_ctor_get(x_23, 1); +lean_inc(x_322); +x_323 = lean_ctor_get(x_23, 2); +lean_inc(x_323); +x_324 = lean_nat_dec_lt(x_322, x_323); +if (x_324 == 0) +{ +lean_object* x_325; lean_object* x_326; lean_object* x_327; +lean_dec(x_323); +lean_dec(x_322); +lean_dec(x_321); +lean_dec(x_27); +lean_dec(x_13); +lean_dec(x_9); +if (lean_is_scalar(x_26)) { + x_325 = lean_alloc_ctor(0, 2, 0); +} else { + x_325 = x_26; +} +lean_ctor_set(x_325, 0, x_320); +lean_ctor_set(x_325, 1, x_25); +if (lean_is_scalar(x_24)) { + x_326 = lean_alloc_ctor(0, 2, 0); +} else { + x_326 = x_24; +} +lean_ctor_set(x_326, 0, x_23); +lean_ctor_set(x_326, 1, x_325); +x_327 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_327, 0, x_326); +lean_ctor_set(x_327, 1, x_10); +return x_327; +} +else +{ +lean_object* x_328; lean_object* x_329; lean_object* x_330; lean_object* x_331; lean_object* x_332; lean_object* x_333; +if (lean_is_exclusive(x_23)) { + lean_ctor_release(x_23, 0); + lean_ctor_release(x_23, 1); + lean_ctor_release(x_23, 2); + x_328 = x_23; +} else { + lean_dec_ref(x_23); + x_328 = lean_box(0); +} +x_329 = lean_array_fget(x_321, x_322); +x_330 = lean_unsigned_to_nat(1u); +x_331 = lean_nat_add(x_322, x_330); +lean_dec(x_322); +if (lean_is_scalar(x_328)) { + x_332 = lean_alloc_ctor(0, 3, 0); +} else { + x_332 = x_328; +} +lean_ctor_set(x_332, 0, x_321); +lean_ctor_set(x_332, 1, x_331); +lean_ctor_set(x_332, 2, x_323); +if (lean_obj_tag(x_2) == 0) +{ +lean_object* x_454; +x_454 = lean_box(0); +x_333 = x_454; +goto block_453; +} +else +{ +lean_object* x_455; lean_object* x_456; uint8_t x_457; +x_455 = lean_ctor_get(x_2, 0); +x_456 = lean_array_get_size(x_455); +x_457 = lean_nat_dec_lt(x_27, x_456); +lean_dec(x_456); +if (x_457 == 0) +{ +lean_object* x_458; +x_458 = lean_box(0); +x_333 = x_458; +goto block_453; +} +else +{ +lean_object* x_459; lean_object* x_460; +x_459 = lean_array_fget(x_455, x_27); +x_460 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_460, 0, x_459); +x_333 = x_460; +goto block_453; +} +} +block_453: +{ +lean_object* x_334; uint8_t x_355; +x_355 = lean_unbox(x_25); +if (x_355 == 0) +{ +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; uint8_t x_365; lean_object* x_366; lean_object* x_367; lean_object* x_368; lean_object* x_369; lean_object* x_370; +lean_dec(x_27); +x_356 = lean_ctor_get(x_8, 0); +x_357 = lean_ctor_get(x_8, 1); +x_358 = lean_ctor_get(x_8, 2); +x_359 = lean_ctor_get(x_8, 3); +x_360 = lean_ctor_get(x_8, 4); +x_361 = lean_ctor_get(x_8, 5); +x_362 = lean_ctor_get(x_8, 6); +x_363 = lean_ctor_get(x_8, 7); +x_364 = lean_ctor_get(x_8, 9); +x_365 = lean_ctor_get_uint8(x_8, sizeof(void*)*10); +x_366 = lean_box(0); +x_367 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_367, 0, x_366); +lean_ctor_set(x_367, 1, x_329); +x_368 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_368, 0, x_367); +lean_inc(x_364); +lean_inc(x_363); +lean_inc(x_362); +lean_inc(x_361); +lean_inc(x_360); +lean_inc(x_359); +lean_inc(x_358); +lean_inc(x_357); +lean_inc(x_356); +x_369 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_369, 0, x_356); +lean_ctor_set(x_369, 1, x_357); +lean_ctor_set(x_369, 2, x_358); +lean_ctor_set(x_369, 3, x_359); +lean_ctor_set(x_369, 4, x_360); +lean_ctor_set(x_369, 5, x_361); +lean_ctor_set(x_369, 6, x_362); +lean_ctor_set(x_369, 7, x_363); +lean_ctor_set(x_369, 8, x_368); +lean_ctor_set(x_369, 9, x_364); +lean_ctor_set_uint8(x_369, sizeof(void*)*10, x_365); +lean_inc(x_9); +lean_inc(x_13); +x_370 = l_Lean_Elab_Command_elabCommand(x_13, x_369, x_9, x_10); +if (lean_obj_tag(x_370) == 0) +{ +lean_object* x_371; +x_371 = lean_ctor_get(x_370, 1); +lean_inc(x_371); +lean_dec(x_370); +x_334 = x_371; +goto block_354; +} +else +{ +lean_object* x_372; lean_object* x_373; lean_object* x_374; lean_object* x_375; +lean_dec(x_333); +lean_dec(x_332); +lean_dec(x_320); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_372 = lean_ctor_get(x_370, 0); +lean_inc(x_372); +x_373 = lean_ctor_get(x_370, 1); +lean_inc(x_373); +if (lean_is_exclusive(x_370)) { + lean_ctor_release(x_370, 0); + lean_ctor_release(x_370, 1); + x_374 = x_370; +} else { + lean_dec_ref(x_370); + x_374 = lean_box(0); +} +if (lean_is_scalar(x_374)) { + x_375 = lean_alloc_ctor(1, 2, 0); +} else { + x_375 = x_374; +} +lean_ctor_set(x_375, 0, x_372); +lean_ctor_set(x_375, 1, x_373); +return x_375; +} +} +else +{ +if (lean_obj_tag(x_1) == 0) +{ +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; uint8_t x_385; lean_object* x_386; lean_object* x_387; lean_object* x_388; lean_object* x_389; lean_object* x_390; +lean_dec(x_27); +x_376 = lean_ctor_get(x_8, 0); +x_377 = lean_ctor_get(x_8, 1); +x_378 = lean_ctor_get(x_8, 2); +x_379 = lean_ctor_get(x_8, 3); +x_380 = lean_ctor_get(x_8, 4); +x_381 = lean_ctor_get(x_8, 5); +x_382 = lean_ctor_get(x_8, 6); +x_383 = lean_ctor_get(x_8, 7); +x_384 = lean_ctor_get(x_8, 9); +x_385 = lean_ctor_get_uint8(x_8, sizeof(void*)*10); +x_386 = lean_box(0); +x_387 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_387, 0, x_386); +lean_ctor_set(x_387, 1, x_329); +x_388 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_388, 0, x_387); +lean_inc(x_384); +lean_inc(x_383); +lean_inc(x_382); +lean_inc(x_381); +lean_inc(x_380); +lean_inc(x_379); +lean_inc(x_378); +lean_inc(x_377); +lean_inc(x_376); +x_389 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_389, 0, x_376); +lean_ctor_set(x_389, 1, x_377); +lean_ctor_set(x_389, 2, x_378); +lean_ctor_set(x_389, 3, x_379); +lean_ctor_set(x_389, 4, x_380); +lean_ctor_set(x_389, 5, x_381); +lean_ctor_set(x_389, 6, x_382); +lean_ctor_set(x_389, 7, x_383); +lean_ctor_set(x_389, 8, x_388); +lean_ctor_set(x_389, 9, x_384); +lean_ctor_set_uint8(x_389, sizeof(void*)*10, x_385); +lean_inc(x_9); +lean_inc(x_13); +x_390 = l_Lean_Elab_Command_elabCommand(x_13, x_389, x_9, x_10); +if (lean_obj_tag(x_390) == 0) +{ +lean_object* x_391; +x_391 = lean_ctor_get(x_390, 1); +lean_inc(x_391); +lean_dec(x_390); +x_334 = x_391; +goto block_354; +} +else +{ +lean_object* x_392; lean_object* x_393; lean_object* x_394; lean_object* x_395; +lean_dec(x_333); +lean_dec(x_332); +lean_dec(x_320); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_392 = lean_ctor_get(x_390, 0); +lean_inc(x_392); +x_393 = lean_ctor_get(x_390, 1); +lean_inc(x_393); +if (lean_is_exclusive(x_390)) { + lean_ctor_release(x_390, 0); + lean_ctor_release(x_390, 1); + x_394 = x_390; +} else { + lean_dec_ref(x_390); + x_394 = lean_box(0); +} +if (lean_is_scalar(x_394)) { + x_395 = lean_alloc_ctor(1, 2, 0); +} else { + x_395 = x_394; +} +lean_ctor_set(x_395, 0, x_392); +lean_ctor_set(x_395, 1, x_393); +return x_395; +} +} +else +{ +if (lean_obj_tag(x_333) == 0) +{ +lean_object* x_396; lean_object* x_397; 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; uint8_t x_405; lean_object* x_406; lean_object* x_407; lean_object* x_408; lean_object* x_409; lean_object* x_410; +lean_dec(x_27); +x_396 = lean_ctor_get(x_8, 0); +x_397 = lean_ctor_get(x_8, 1); +x_398 = lean_ctor_get(x_8, 2); +x_399 = lean_ctor_get(x_8, 3); +x_400 = lean_ctor_get(x_8, 4); +x_401 = lean_ctor_get(x_8, 5); +x_402 = lean_ctor_get(x_8, 6); +x_403 = lean_ctor_get(x_8, 7); +x_404 = lean_ctor_get(x_8, 9); +x_405 = lean_ctor_get_uint8(x_8, sizeof(void*)*10); +x_406 = lean_box(0); +x_407 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_407, 0, x_406); +lean_ctor_set(x_407, 1, x_329); +x_408 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_408, 0, x_407); +lean_inc(x_404); +lean_inc(x_403); +lean_inc(x_402); +lean_inc(x_401); +lean_inc(x_400); +lean_inc(x_399); +lean_inc(x_398); +lean_inc(x_397); +lean_inc(x_396); +x_409 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_409, 0, x_396); +lean_ctor_set(x_409, 1, x_397); +lean_ctor_set(x_409, 2, x_398); +lean_ctor_set(x_409, 3, x_399); +lean_ctor_set(x_409, 4, x_400); +lean_ctor_set(x_409, 5, x_401); +lean_ctor_set(x_409, 6, x_402); +lean_ctor_set(x_409, 7, x_403); +lean_ctor_set(x_409, 8, x_408); +lean_ctor_set(x_409, 9, x_404); +lean_ctor_set_uint8(x_409, sizeof(void*)*10, x_405); +lean_inc(x_9); +lean_inc(x_13); +x_410 = l_Lean_Elab_Command_elabCommand(x_13, x_409, x_9, x_10); +if (lean_obj_tag(x_410) == 0) +{ +lean_object* x_411; +x_411 = lean_ctor_get(x_410, 1); +lean_inc(x_411); +lean_dec(x_410); +x_334 = x_411; +goto block_354; +} +else +{ +lean_object* x_412; lean_object* x_413; lean_object* x_414; lean_object* x_415; +lean_dec(x_332); +lean_dec(x_320); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_412 = lean_ctor_get(x_410, 0); +lean_inc(x_412); +x_413 = lean_ctor_get(x_410, 1); +lean_inc(x_413); +if (lean_is_exclusive(x_410)) { + lean_ctor_release(x_410, 0); + lean_ctor_release(x_410, 1); + x_414 = x_410; +} else { + lean_dec_ref(x_410); + x_414 = lean_box(0); +} +if (lean_is_scalar(x_414)) { + x_415 = lean_alloc_ctor(1, 2, 0); +} else { + x_415 = x_414; +} +lean_ctor_set(x_415, 0, x_412); +lean_ctor_set(x_415, 1, x_413); +return x_415; +} +} +else +{ +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_object* x_422; lean_object* x_423; lean_object* x_424; uint8_t x_425; lean_object* x_426; lean_object* x_427; lean_object* x_428; lean_object* x_429; uint8_t x_430; +x_416 = lean_ctor_get(x_8, 0); +x_417 = lean_ctor_get(x_8, 1); +x_418 = lean_ctor_get(x_8, 2); +x_419 = lean_ctor_get(x_8, 3); +x_420 = lean_ctor_get(x_8, 4); +x_421 = lean_ctor_get(x_8, 5); +x_422 = lean_ctor_get(x_8, 6); +x_423 = lean_ctor_get(x_8, 7); +x_424 = lean_ctor_get(x_8, 9); +x_425 = lean_ctor_get_uint8(x_8, sizeof(void*)*10); +x_426 = lean_ctor_get(x_1, 0); +x_427 = lean_ctor_get(x_333, 0); +lean_inc(x_427); +x_428 = lean_ctor_get(x_426, 4); +x_429 = lean_array_get_size(x_428); +x_430 = lean_nat_dec_lt(x_27, x_429); +lean_dec(x_429); +if (x_430 == 0) +{ +lean_object* x_431; lean_object* x_432; lean_object* x_433; lean_object* x_434; lean_object* x_435; +lean_dec(x_427); +lean_dec(x_27); +x_431 = lean_box(0); +x_432 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_432, 0, x_431); +lean_ctor_set(x_432, 1, x_329); +x_433 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_433, 0, x_432); +lean_inc(x_424); +lean_inc(x_423); +lean_inc(x_422); +lean_inc(x_421); +lean_inc(x_420); +lean_inc(x_419); +lean_inc(x_418); +lean_inc(x_417); +lean_inc(x_416); +x_434 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_434, 0, x_416); +lean_ctor_set(x_434, 1, x_417); +lean_ctor_set(x_434, 2, x_418); +lean_ctor_set(x_434, 3, x_419); +lean_ctor_set(x_434, 4, x_420); +lean_ctor_set(x_434, 5, x_421); +lean_ctor_set(x_434, 6, x_422); +lean_ctor_set(x_434, 7, x_423); +lean_ctor_set(x_434, 8, x_433); +lean_ctor_set(x_434, 9, x_424); +lean_ctor_set_uint8(x_434, sizeof(void*)*10, x_425); +lean_inc(x_9); +lean_inc(x_13); +x_435 = l_Lean_Elab_Command_elabCommand(x_13, x_434, x_9, x_10); +if (lean_obj_tag(x_435) == 0) +{ +lean_object* x_436; +x_436 = lean_ctor_get(x_435, 1); +lean_inc(x_436); +lean_dec(x_435); +x_334 = x_436; +goto block_354; +} +else +{ +lean_object* x_437; lean_object* x_438; lean_object* x_439; lean_object* x_440; +lean_dec(x_333); +lean_dec(x_332); +lean_dec(x_320); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_437 = lean_ctor_get(x_435, 0); +lean_inc(x_437); +x_438 = lean_ctor_get(x_435, 1); +lean_inc(x_438); +if (lean_is_exclusive(x_435)) { + lean_ctor_release(x_435, 0); + lean_ctor_release(x_435, 1); + x_439 = x_435; +} else { + lean_dec_ref(x_435); + x_439 = lean_box(0); +} +if (lean_is_scalar(x_439)) { + x_440 = lean_alloc_ctor(1, 2, 0); +} else { + x_440 = x_439; +} +lean_ctor_set(x_440, 0, x_437); +lean_ctor_set(x_440, 1, x_438); +return x_440; +} +} +else +{ +lean_object* x_441; lean_object* x_442; lean_object* x_443; lean_object* x_444; lean_object* x_445; lean_object* x_446; lean_object* x_447; +x_441 = lean_array_fget(x_428, x_27); +lean_dec(x_27); +x_442 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_442, 0, x_427); +lean_ctor_set(x_442, 1, x_441); +x_443 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_443, 0, x_442); +x_444 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_444, 0, x_443); +lean_ctor_set(x_444, 1, x_329); +x_445 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_445, 0, x_444); +lean_inc(x_424); +lean_inc(x_423); +lean_inc(x_422); +lean_inc(x_421); +lean_inc(x_420); +lean_inc(x_419); +lean_inc(x_418); +lean_inc(x_417); +lean_inc(x_416); +x_446 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_446, 0, x_416); +lean_ctor_set(x_446, 1, x_417); +lean_ctor_set(x_446, 2, x_418); +lean_ctor_set(x_446, 3, x_419); +lean_ctor_set(x_446, 4, x_420); +lean_ctor_set(x_446, 5, x_421); +lean_ctor_set(x_446, 6, x_422); +lean_ctor_set(x_446, 7, x_423); +lean_ctor_set(x_446, 8, x_445); +lean_ctor_set(x_446, 9, x_424); +lean_ctor_set_uint8(x_446, sizeof(void*)*10, x_425); +lean_inc(x_9); +lean_inc(x_13); +x_447 = l_Lean_Elab_Command_elabCommand(x_13, x_446, x_9, x_10); +if (lean_obj_tag(x_447) == 0) +{ +lean_object* x_448; +x_448 = lean_ctor_get(x_447, 1); +lean_inc(x_448); +lean_dec(x_447); +x_334 = x_448; +goto block_354; +} +else +{ +lean_object* x_449; lean_object* x_450; lean_object* x_451; lean_object* x_452; +lean_dec(x_333); +lean_dec(x_332); +lean_dec(x_320); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_13); +lean_dec(x_9); +x_449 = lean_ctor_get(x_447, 0); +lean_inc(x_449); +x_450 = lean_ctor_get(x_447, 1); +lean_inc(x_450); +if (lean_is_exclusive(x_447)) { + lean_ctor_release(x_447, 0); + lean_ctor_release(x_447, 1); + x_451 = x_447; +} else { + lean_dec_ref(x_447); + x_451 = lean_box(0); +} +if (lean_is_scalar(x_451)) { + x_452 = lean_alloc_ctor(1, 2, 0); +} else { + x_452 = x_451; +} +lean_ctor_set(x_452, 0, x_449); +lean_ctor_set(x_452, 1, x_450); +return x_452; +} +} +} +} +} +block_354: +{ +uint8_t x_335; +x_335 = lean_unbox(x_25); +lean_dec(x_25); +if (x_335 == 0) +{ +uint8_t x_336; lean_object* x_337; lean_object* x_338; lean_object* x_339; lean_object* x_340; +lean_dec(x_333); +lean_dec(x_13); +x_336 = 0; +x_337 = lean_box(x_336); +if (lean_is_scalar(x_26)) { + x_338 = lean_alloc_ctor(0, 2, 0); +} else { + x_338 = x_26; +} +lean_ctor_set(x_338, 0, x_320); +lean_ctor_set(x_338, 1, x_337); +if (lean_is_scalar(x_24)) { + x_339 = lean_alloc_ctor(0, 2, 0); +} else { + x_339 = x_24; +} +lean_ctor_set(x_339, 0, x_332); +lean_ctor_set(x_339, 1, x_338); +x_340 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_340, 0, x_339); +x_14 = x_340; +x_15 = x_334; +goto block_20; +} +else +{ +if (lean_obj_tag(x_333) == 0) +{ +uint8_t x_341; lean_object* x_342; lean_object* x_343; lean_object* x_344; lean_object* x_345; +lean_dec(x_13); +x_341 = 0; +x_342 = lean_box(x_341); +if (lean_is_scalar(x_26)) { + x_343 = lean_alloc_ctor(0, 2, 0); +} else { + x_343 = x_26; +} +lean_ctor_set(x_343, 0, x_320); +lean_ctor_set(x_343, 1, x_342); +if (lean_is_scalar(x_24)) { + x_344 = lean_alloc_ctor(0, 2, 0); +} else { + x_344 = x_24; +} +lean_ctor_set(x_344, 0, x_332); +lean_ctor_set(x_344, 1, x_343); +x_345 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_345, 0, x_344); +x_14 = x_345; +x_15 = x_334; +goto block_20; +} +else +{ +lean_object* x_346; lean_object* x_347; lean_object* x_348; uint8_t x_349; lean_object* x_350; lean_object* x_351; lean_object* x_352; lean_object* x_353; +x_346 = lean_ctor_get(x_333, 0); +lean_inc(x_346); +if (lean_is_exclusive(x_333)) { + lean_ctor_release(x_333, 0); + x_347 = x_333; +} else { + lean_dec_ref(x_333); + x_347 = lean_box(0); +} +x_348 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_3, x_346, x_13); +x_349 = lean_unbox(x_348); +lean_dec(x_348); +x_350 = lean_box(x_349); +if (lean_is_scalar(x_26)) { + x_351 = lean_alloc_ctor(0, 2, 0); +} else { + x_351 = x_26; +} +lean_ctor_set(x_351, 0, x_320); +lean_ctor_set(x_351, 1, x_350); +if (lean_is_scalar(x_24)) { + x_352 = lean_alloc_ctor(0, 2, 0); +} else { + x_352 = x_24; +} +lean_ctor_set(x_352, 0, x_332); +lean_ctor_set(x_352, 1, x_351); +if (lean_is_scalar(x_347)) { + x_353 = lean_alloc_ctor(1, 1, 0); +} else { + x_353 = x_347; +} +lean_ctor_set(x_353, 0, x_352); +x_14 = x_353; +x_15 = x_334; +goto block_20; +} +} +} +} +} +} +} +block_20: +{ +lean_object* x_16; size_t x_17; size_t x_18; +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +lean_dec(x_14); +x_17 = 1; +x_18 = lean_usize_add(x_6, x_17); +x_6 = x_18; +x_7 = x_16; +x_10 = x_15; +goto _start; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabCommand___spec__22(size_t x_1, size_t 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 = lean_usize_dec_lt(x_2, x_1); +if (x_7 == 0) +{ +lean_object* x_8; +x_8 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_8, 0, x_3); +lean_ctor_set(x_8, 1, x_6); +return x_8; +} +else +{ +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; +x_9 = lean_unsigned_to_nat(0u); +x_10 = lean_array_uset(x_3, x_2, x_9); +x_11 = lean_io_promise_new(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 = 1; +x_15 = lean_usize_add(x_2, x_14); +x_16 = lean_array_uset(x_10, x_2, x_12); +x_2 = x_15; +x_3 = x_16; +x_6 = x_13; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__23(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) { +_start: +{ +uint8_t x_9; +x_9 = lean_usize_dec_lt(x_4, x_3); +if (x_9 == 0) +{ +lean_object* x_10; +lean_dec(x_1); +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_5); +lean_ctor_set(x_10, 1, x_8); +return x_10; +} +else +{ +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_dec(x_5); +x_11 = lean_array_uget(x_2, x_4); +lean_inc(x_1); +x_12 = lean_io_promise_resolve(x_1, x_11, x_8); +lean_dec(x_11); +x_13 = lean_ctor_get(x_12, 1); +lean_inc(x_13); +lean_dec(x_12); +x_14 = 1; +x_15 = lean_usize_add(x_4, x_14); +x_16 = lean_box(0); +x_4 = x_15; +x_5 = x_16; +x_8 = x_13; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__24(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) { +_start: +{ +uint8_t x_9; +x_9 = lean_usize_dec_lt(x_4, x_3); +if (x_9 == 0) +{ +lean_object* x_10; +lean_dec(x_1); +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_5); +lean_ctor_set(x_10, 1, x_8); +return x_10; +} +else +{ +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_dec(x_5); +x_11 = lean_array_uget(x_2, x_4); +lean_inc(x_1); +x_12 = lean_io_promise_resolve(x_1, x_11, x_8); +lean_dec(x_11); +x_13 = lean_ctor_get(x_12, 1); +lean_inc(x_13); +lean_dec(x_12); +x_14 = 1; +x_15 = lean_usize_add(x_4, x_14); +x_16 = lean_box(0); +x_4 = x_15; +x_5 = x_16; +x_8 = x_13; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__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) { +_start: +{ +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; size_t x_18; lean_object* x_19; +x_7 = l_List_iotaTR(x_2); +x_8 = l_List_redLength___rarg(x_7); +x_9 = lean_mk_empty_array_with_capacity(x_8); +lean_dec(x_8); +x_10 = l_List_toArrayAux___rarg(x_7, x_9); +x_11 = lean_array_get_size(x_10); +x_12 = lean_usize_of_nat(x_11); +lean_dec(x_11); +x_13 = 0; +x_14 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabCommand___spec__22(x_12, x_13, x_10, x_4, x_5, x_6); +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_15); +x_18 = lean_usize_of_nat(x_17); +lean_dec(x_17); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_15); +x_19 = lean_apply_4(x_3, x_15, x_4, x_5, x_16); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t 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 = lean_box(0); +x_23 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__23(x_1, x_15, x_18, x_13, x_22, x_4, x_5, x_21); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_15); +x_24 = !lean_is_exclusive(x_23); +if (x_24 == 0) +{ +lean_object* x_25; +x_25 = lean_ctor_get(x_23, 0); +lean_dec(x_25); +lean_ctor_set(x_23, 0, x_20); +return x_23; +} +else +{ +lean_object* x_26; lean_object* x_27; +x_26 = lean_ctor_get(x_23, 1); +lean_inc(x_26); +lean_dec(x_23); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_20); +lean_ctor_set(x_27, 1, x_26); +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_19, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_19, 1); +lean_inc(x_29); +lean_dec(x_19); +x_30 = lean_box(0); +x_31 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__24(x_1, x_15, x_18, x_13, x_30, x_4, x_5, x_29); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_15); +x_32 = !lean_is_exclusive(x_31); +if (x_32 == 0) +{ +lean_object* x_33; +x_33 = lean_ctor_get(x_31, 0); +lean_dec(x_33); +lean_ctor_set_tag(x_31, 1); +lean_ctor_set(x_31, 0, x_28); +return x_31; +} +else +{ +lean_object* x_34; lean_object* x_35; +x_34 = lean_ctor_get(x_31, 1); +lean_inc(x_34); +lean_dec(x_31); +x_35 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_35, 0, x_28); +lean_ctor_set(x_35, 1, x_34); +return x_35; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(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) { +_start: +{ +uint8_t x_8; +x_8 = lean_usize_dec_eq(x_2, x_3); +if (x_8 == 0) +{ +lean_object* x_9; lean_object* x_10; +lean_dec(x_4); +x_9 = lean_array_uget(x_1, x_2); +lean_inc(x_6); +lean_inc(x_5); +x_10 = l_Lean_Elab_Command_elabCommand(x_9, x_5, x_6, x_7); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; size_t x_13; size_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 = 1; +x_14 = lean_usize_add(x_2, x_13); +x_2 = x_14; +x_4 = x_11; +x_7 = x_12; +goto _start; +} +else +{ +uint8_t x_16; +lean_dec(x_6); +lean_dec(x_5); +x_16 = !lean_is_exclusive(x_10); +if (x_16 == 0) +{ +return x_10; +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +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_alloc_ctor(1, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +return x_19; +} +} +} +else +{ +lean_object* x_20; +lean_dec(x_6); +lean_dec(x_5); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_4); +lean_ctor_set(x_20, 1, x_7); +return x_20; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___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; uint8_t x_10; +x_6 = l_Lean_Elab_Command_getRef(x_3, x_4, x_5); +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +x_8 = lean_ctor_get(x_6, 1); +lean_inc(x_8); +lean_dec(x_6); +x_9 = l_Lean_replaceRef(x_1, x_7); +lean_dec(x_7); +lean_dec(x_1); +x_10 = !lean_is_exclusive(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; lean_object* x_17; lean_object* x_18; lean_object* 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; uint8_t x_26; +x_11 = lean_ctor_get(x_3, 0); +x_12 = lean_ctor_get(x_3, 1); +x_13 = lean_ctor_get(x_3, 2); +x_14 = lean_ctor_get(x_3, 3); +x_15 = lean_ctor_get(x_3, 4); +x_16 = lean_ctor_get(x_3, 5); +x_17 = lean_ctor_get(x_3, 7); +x_18 = lean_ctor_get(x_3, 8); +x_19 = lean_ctor_get(x_3, 9); +x_20 = lean_ctor_get_uint8(x_3, sizeof(void*)*10); +x_21 = lean_ctor_get(x_3, 6); +lean_dec(x_21); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_9); +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_ctor_set(x_3, 6, x_9); +x_22 = lean_st_ref_get(x_4, x_8); +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_ctor_get(x_23, 4); +lean_inc(x_25); +lean_dec(x_23); +x_26 = lean_nat_dec_eq(x_13, x_25); +lean_dec(x_25); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_3); +x_27 = lean_unsigned_to_nat(1u); +x_28 = lean_nat_add(x_13, x_27); +lean_dec(x_13); +x_29 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_29, 0, x_11); +lean_ctor_set(x_29, 1, x_12); +lean_ctor_set(x_29, 2, x_28); +lean_ctor_set(x_29, 3, x_14); +lean_ctor_set(x_29, 4, x_15); +lean_ctor_set(x_29, 5, x_16); +lean_ctor_set(x_29, 6, x_9); +lean_ctor_set(x_29, 7, x_17); +lean_ctor_set(x_29, 8, x_18); +lean_ctor_set(x_29, 9, x_19); +lean_ctor_set_uint8(x_29, sizeof(void*)*10, x_20); +x_30 = l_Lean_Elab_Command_withFreshMacroScope___rarg(x_2, x_29, x_4, x_24); +return x_30; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +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_9); +lean_dec(x_2); +x_31 = l_Lean_Elab_Command_getRef(x_3, x_4, x_24); +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_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1(x_32, x_3, x_4, x_33); +lean_dec(x_4); +lean_dec(x_3); +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; uint8_t 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; +x_35 = lean_ctor_get(x_3, 0); +x_36 = lean_ctor_get(x_3, 1); +x_37 = lean_ctor_get(x_3, 2); +x_38 = lean_ctor_get(x_3, 3); +x_39 = lean_ctor_get(x_3, 4); +x_40 = lean_ctor_get(x_3, 5); +x_41 = lean_ctor_get(x_3, 7); +x_42 = lean_ctor_get(x_3, 8); +x_43 = lean_ctor_get(x_3, 9); +x_44 = lean_ctor_get_uint8(x_3, sizeof(void*)*10); +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_inc(x_36); +lean_inc(x_35); +lean_dec(x_3); +lean_inc(x_43); +lean_inc(x_42); +lean_inc(x_41); +lean_inc(x_9); +lean_inc(x_40); +lean_inc(x_39); +lean_inc(x_38); +lean_inc(x_37); +lean_inc(x_36); +lean_inc(x_35); +x_45 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_45, 0, x_35); +lean_ctor_set(x_45, 1, x_36); +lean_ctor_set(x_45, 2, x_37); +lean_ctor_set(x_45, 3, x_38); +lean_ctor_set(x_45, 4, x_39); +lean_ctor_set(x_45, 5, x_40); +lean_ctor_set(x_45, 6, x_9); +lean_ctor_set(x_45, 7, x_41); +lean_ctor_set(x_45, 8, x_42); +lean_ctor_set(x_45, 9, x_43); +lean_ctor_set_uint8(x_45, sizeof(void*)*10, x_44); +x_46 = lean_st_ref_get(x_4, x_8); +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, 4); +lean_inc(x_49); +lean_dec(x_47); +x_50 = lean_nat_dec_eq(x_37, x_49); +lean_dec(x_49); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_45); +x_51 = lean_unsigned_to_nat(1u); +x_52 = lean_nat_add(x_37, x_51); +lean_dec(x_37); +x_53 = lean_alloc_ctor(0, 10, 1); +lean_ctor_set(x_53, 0, x_35); +lean_ctor_set(x_53, 1, x_36); +lean_ctor_set(x_53, 2, x_52); +lean_ctor_set(x_53, 3, x_38); +lean_ctor_set(x_53, 4, x_39); +lean_ctor_set(x_53, 5, x_40); +lean_ctor_set(x_53, 6, x_9); +lean_ctor_set(x_53, 7, x_41); +lean_ctor_set(x_53, 8, x_42); +lean_ctor_set(x_53, 9, x_43); +lean_ctor_set_uint8(x_53, sizeof(void*)*10, x_44); +x_54 = l_Lean_Elab_Command_withFreshMacroScope___rarg(x_2, x_53, x_4, x_48); +return x_54; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +lean_dec(x_43); +lean_dec(x_42); +lean_dec(x_41); +lean_dec(x_40); +lean_dec(x_39); +lean_dec(x_38); +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_35); +lean_dec(x_9); +lean_dec(x_2); +x_55 = l_Lean_Elab_Command_getRef(x_45, x_4, x_48); +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_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1(x_56, x_45, x_4, x_57); +lean_dec(x_4); +lean_dec(x_45); +return x_58; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___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; +x_6 = l_Lean_MessageData_ofSyntax(x_1); +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; +} +} +static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; uint8_t x_3; lean_object* x_4; +x_1 = lean_box(0); +x_2 = l_Lean_Language_Snapshot_Diagnostics_empty; +x_3 = 0; +x_4 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_4, 0, x_2); +lean_ctor_set(x_4, 1, x_1); +lean_ctor_set_uint8(x_4, sizeof(void*)*2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___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; 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_1, 2); +x_15 = lean_unsigned_to_nat(0u); +x_16 = lean_nat_dec_lt(x_15, x_14); +x_17 = l_Lean_Elab_Command_Scope_varDecls___default___closed__1; +x_18 = l_Array_zipWithAux___at_Lean_Elab_Command_elabCommand___spec__18(x_10, x_2, x_15, x_17); +x_19 = l_Lean_Elab_Command_elabCommand___lambda__3___closed__1; +x_20 = lean_alloc_ctor(0, 5, 1); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_3); +lean_ctor_set(x_20, 2, x_4); +lean_ctor_set(x_20, 3, x_5); +lean_ctor_set(x_20, 4, x_18); +lean_ctor_set_uint8(x_20, sizeof(void*)*5, x_16); +x_21 = l_Lean_Elab_Command_instTypeNameMacroExpandedSnapshot; +x_22 = l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Elab_Command_elabCommand___spec__19(x_21, x_20); +x_23 = lean_ctor_get(x_6, 1); +x_24 = lean_io_promise_resolve(x_22, x_23, x_13); +x_25 = !lean_is_exclusive(x_24); +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_24, 1); +x_27 = lean_ctor_get(x_24, 0); +lean_dec(x_27); +x_28 = lean_st_ref_get(x_12, x_26); +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; 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; size_t x_42; size_t x_43; lean_object* x_44; +x_30 = lean_ctor_get(x_28, 0); +x_31 = lean_ctor_get(x_28, 1); +x_32 = lean_ctor_get(x_30, 2); +lean_inc(x_32); +lean_dec(x_30); +x_33 = l_Lean_Elab_Command_instInhabitedScope; +x_34 = l_List_head_x21___rarg(x_33, x_32); +lean_dec(x_32); +x_35 = lean_ctor_get(x_34, 1); +lean_inc(x_35); +lean_dec(x_34); +x_36 = lean_array_get_size(x_10); +x_37 = l_Array_toSubarray___rarg(x_10, x_15, x_36); +x_38 = lean_unsigned_to_nat(1u); +lean_inc(x_7); +x_39 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_39, 0, x_15); +lean_ctor_set(x_39, 1, x_7); +lean_ctor_set(x_39, 2, x_38); +x_40 = 1; +x_41 = lean_box(x_40); +lean_ctor_set(x_28, 1, x_41); +lean_ctor_set(x_28, 0, x_39); +lean_ctor_set(x_24, 1, x_28); +lean_ctor_set(x_24, 0, x_37); +x_42 = lean_usize_of_nat(x_7); +lean_dec(x_7); +x_43 = 0; +x_44 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__20(x_8, x_9, x_35, x_2, x_42, x_43, x_24, x_11, x_12, x_31); +lean_dec(x_35); +if (lean_obj_tag(x_44) == 0) +{ +uint8_t x_45; +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; +x_51 = !lean_is_exclusive(x_44); +if (x_51 == 0) +{ +return x_44; +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_52 = lean_ctor_get(x_44, 0); +x_53 = lean_ctor_get(x_44, 1); +lean_inc(x_53); +lean_inc(x_52); +lean_dec(x_44); +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; 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; lean_object* x_67; size_t x_68; size_t x_69; lean_object* x_70; +x_55 = lean_ctor_get(x_28, 0); +x_56 = lean_ctor_get(x_28, 1); +lean_inc(x_56); +lean_inc(x_55); +lean_dec(x_28); +x_57 = lean_ctor_get(x_55, 2); +lean_inc(x_57); +lean_dec(x_55); +x_58 = l_Lean_Elab_Command_instInhabitedScope; +x_59 = l_List_head_x21___rarg(x_58, x_57); +lean_dec(x_57); +x_60 = lean_ctor_get(x_59, 1); +lean_inc(x_60); +lean_dec(x_59); +x_61 = lean_array_get_size(x_10); +x_62 = l_Array_toSubarray___rarg(x_10, x_15, x_61); +x_63 = lean_unsigned_to_nat(1u); +lean_inc(x_7); +x_64 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_64, 0, x_15); +lean_ctor_set(x_64, 1, x_7); +lean_ctor_set(x_64, 2, x_63); +x_65 = 1; +x_66 = lean_box(x_65); +x_67 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_67, 0, x_64); +lean_ctor_set(x_67, 1, x_66); +lean_ctor_set(x_24, 1, x_67); +lean_ctor_set(x_24, 0, x_62); +x_68 = lean_usize_of_nat(x_7); +lean_dec(x_7); +x_69 = 0; +x_70 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__20(x_8, x_9, x_60, x_2, x_68, x_69, x_24, x_11, x_12, x_56); +lean_dec(x_60); +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); +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; +} +else +{ +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); +x_76 = lean_ctor_get(x_70, 1); +lean_inc(x_76); +if (lean_is_exclusive(x_70)) { + lean_ctor_release(x_70, 0); + lean_ctor_release(x_70, 1); + x_77 = x_70; +} else { + lean_dec_ref(x_70); + 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 +{ +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; uint8_t x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; size_t x_96; size_t x_97; lean_object* x_98; +x_79 = lean_ctor_get(x_24, 1); +lean_inc(x_79); +lean_dec(x_24); +x_80 = lean_st_ref_get(x_12, 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_84 = lean_ctor_get(x_81, 2); +lean_inc(x_84); +lean_dec(x_81); +x_85 = l_Lean_Elab_Command_instInhabitedScope; +x_86 = l_List_head_x21___rarg(x_85, x_84); +lean_dec(x_84); +x_87 = lean_ctor_get(x_86, 1); +lean_inc(x_87); +lean_dec(x_86); +x_88 = lean_array_get_size(x_10); +x_89 = l_Array_toSubarray___rarg(x_10, x_15, x_88); +x_90 = lean_unsigned_to_nat(1u); +lean_inc(x_7); +x_91 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_91, 0, x_15); +lean_ctor_set(x_91, 1, x_7); +lean_ctor_set(x_91, 2, x_90); +x_92 = 1; +x_93 = lean_box(x_92); +if (lean_is_scalar(x_83)) { + x_94 = lean_alloc_ctor(0, 2, 0); +} else { + x_94 = x_83; +} +lean_ctor_set(x_94, 0, x_91); +lean_ctor_set(x_94, 1, x_93); +x_95 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_95, 0, x_89); +lean_ctor_set(x_95, 1, x_94); +x_96 = lean_usize_of_nat(x_7); +lean_dec(x_7); +x_97 = 0; +x_98 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__20(x_8, x_9, x_87, x_2, x_96, x_97, x_95, x_11, x_12, x_82); +lean_dec(x_87); +if (lean_obj_tag(x_98) == 0) +{ +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; +x_99 = lean_ctor_get(x_98, 1); +lean_inc(x_99); +if (lean_is_exclusive(x_98)) { + lean_ctor_release(x_98, 0); + lean_ctor_release(x_98, 1); + x_100 = x_98; +} else { + lean_dec_ref(x_98); + x_100 = lean_box(0); +} +x_101 = lean_box(0); +if (lean_is_scalar(x_100)) { + x_102 = lean_alloc_ctor(0, 2, 0); +} else { + x_102 = x_100; +} +lean_ctor_set(x_102, 0, x_101); +lean_ctor_set(x_102, 1, x_99); +return x_102; +} +else +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; +x_103 = lean_ctor_get(x_98, 0); +lean_inc(x_103); +x_104 = lean_ctor_get(x_98, 1); +lean_inc(x_104); +if (lean_is_exclusive(x_98)) { + lean_ctor_release(x_98, 0); + lean_ctor_release(x_98, 1); + x_105 = x_98; +} else { + lean_dec_ref(x_98); + x_105 = lean_box(0); +} +if (lean_is_scalar(x_105)) { + x_106 = lean_alloc_ctor(1, 2, 0); +} else { + x_106 = x_105; +} +lean_ctor_set(x_106, 0, x_103); +lean_ctor_set(x_106, 1, x_104); +return x_106; +} +} +} +} +static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(1u); +x_2 = lean_mk_empty_array_with_capacity(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___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; +x_7 = lean_ctor_get(x_4, 8); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; +lean_dec(x_3); +lean_dec(x_2); +x_8 = l_Lean_Elab_Command_elabCommand(x_1, x_4, x_5, x_6); +return x_8; +} +else +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_78; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +if (lean_is_exclusive(x_7)) { + lean_ctor_release(x_7, 0); + x_10 = x_7; +} else { + lean_dec_ref(x_7); + x_10 = lean_box(0); +} +lean_inc(x_1); +x_78 = l_Lean_Syntax_isOfKind(x_1, x_3); +if (x_78 == 0) +{ +lean_object* x_79; lean_object* x_80; +x_79 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__1; +lean_inc(x_1); +x_80 = lean_array_push(x_79, x_1); +x_11 = x_80; +goto block_77; +} +else +{ +lean_object* x_81; +x_81 = l_Lean_Syntax_getArgs(x_1); +x_11 = x_81; +goto block_77; +} +block_77: +{ +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_st_ref_get(x_5, x_6); +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, 3); +lean_inc(x_15); +lean_dec(x_13); +x_16 = lean_st_ref_get(x_5, x_14); +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, 7); +lean_inc(x_19); +lean_dec(x_17); +x_20 = lean_ctor_get(x_9, 0); +lean_inc(x_20); +x_21 = lean_array_get_size(x_11); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_42; +x_42 = lean_box(0); +x_22 = x_42; +goto block_41; +} +else +{ +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_20, 0); +lean_inc(x_43); +lean_dec(x_20); +x_44 = lean_ctor_get(x_43, 1); +lean_inc(x_44); +lean_dec(x_43); +x_45 = l_Lean_Language_SnapshotTask_get___rarg(x_44); +x_46 = l_Lean_Elab_Command_instTypeNameMacroExpandedSnapshot; +x_47 = l_Lean_Language_DynamicSnapshot_toTyped_x3f___rarg(x_46, x_45); +lean_dec(x_45); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; +x_48 = lean_box(0); +x_22 = x_48; +goto block_41; +} +else +{ +uint8_t x_49; +x_49 = !lean_is_exclusive(x_47); +if (x_49 == 0) +{ +lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_50 = lean_ctor_get(x_47, 0); +x_51 = lean_ctor_get(x_50, 1); +lean_inc(x_51); +x_52 = lean_name_eq(x_51, x_2); +lean_dec(x_51); +if (x_52 == 0) +{ +lean_object* x_53; +lean_free_object(x_47); +lean_dec(x_50); +x_53 = lean_box(0); +x_22 = x_53; +goto block_41; +} +else +{ +lean_object* x_54; uint8_t x_55; +x_54 = lean_ctor_get(x_50, 3); +lean_inc(x_54); +x_55 = lean_nat_dec_eq(x_54, x_15); +lean_dec(x_54); +if (x_55 == 0) +{ +lean_object* x_56; +lean_free_object(x_47); +lean_dec(x_50); +x_56 = lean_box(0); +x_22 = x_56; +goto block_41; +} +else +{ +uint8_t x_57; +x_57 = lean_ctor_get_uint8(x_50, sizeof(void*)*5); +if (x_57 == 0) +{ +lean_object* x_58; lean_object* x_59; uint8_t x_60; +x_58 = lean_ctor_get(x_19, 2); +lean_inc(x_58); +x_59 = lean_unsigned_to_nat(0u); +x_60 = lean_nat_dec_lt(x_59, x_58); +lean_dec(x_58); +if (x_60 == 0) +{ +x_22 = x_47; +goto block_41; +} +else +{ +lean_object* x_61; +lean_free_object(x_47); +lean_dec(x_50); +x_61 = lean_box(0); +x_22 = x_61; +goto block_41; +} +} +else +{ +lean_object* x_62; +lean_free_object(x_47); +lean_dec(x_50); +x_62 = lean_box(0); +x_22 = x_62; +goto block_41; +} +} +} +} +else +{ +lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_63 = lean_ctor_get(x_47, 0); +lean_inc(x_63); +lean_dec(x_47); +x_64 = lean_ctor_get(x_63, 1); +lean_inc(x_64); +x_65 = lean_name_eq(x_64, x_2); +lean_dec(x_64); +if (x_65 == 0) +{ +lean_object* x_66; +lean_dec(x_63); +x_66 = lean_box(0); +x_22 = x_66; +goto block_41; +} +else +{ +lean_object* x_67; uint8_t x_68; +x_67 = lean_ctor_get(x_63, 3); +lean_inc(x_67); +x_68 = lean_nat_dec_eq(x_67, x_15); +lean_dec(x_67); +if (x_68 == 0) +{ +lean_object* x_69; +lean_dec(x_63); +x_69 = lean_box(0); +x_22 = x_69; +goto block_41; +} +else +{ +uint8_t x_70; +x_70 = lean_ctor_get_uint8(x_63, sizeof(void*)*5); +if (x_70 == 0) +{ +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_19, 2); +lean_inc(x_71); +x_72 = lean_unsigned_to_nat(0u); +x_73 = lean_nat_dec_lt(x_72, x_71); +lean_dec(x_71); +if (x_73 == 0) +{ +lean_object* x_74; +x_74 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_74, 0, x_63); +x_22 = x_74; +goto block_41; +} +else +{ +lean_object* x_75; +lean_dec(x_63); +x_75 = lean_box(0); +x_22 = x_75; +goto block_41; +} +} +else +{ +lean_object* x_76; +lean_dec(x_63); +x_76 = lean_box(0); +x_22 = x_76; +goto block_41; +} +} +} +} +} +} +block_41: +{ +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_10); +lean_dec(x_3); +x_23 = lean_box(0); +lean_inc(x_21); +x_24 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__3___boxed), 13, 9); +lean_closure_set(x_24, 0, x_19); +lean_closure_set(x_24, 1, x_11); +lean_closure_set(x_24, 2, x_2); +lean_closure_set(x_24, 3, x_1); +lean_closure_set(x_24, 4, x_15); +lean_closure_set(x_24, 5, x_9); +lean_closure_set(x_24, 6, x_21); +lean_closure_set(x_24, 7, x_22); +lean_closure_set(x_24, 8, x_23); +x_25 = l_Lean_Language_instInhabitedDynamicSnapshot; +x_26 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__21(x_25, x_21, x_24, x_4, x_5, x_18); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_22, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_27, 2); +lean_inc(x_28); +lean_dec(x_27); +lean_inc(x_28); +x_29 = l_Lean_Syntax_isOfKind(x_28, x_3); +lean_dec(x_3); +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; +x_30 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__1; +x_31 = lean_array_push(x_30, x_28); +if (lean_is_scalar(x_10)) { + x_32 = lean_alloc_ctor(1, 1, 0); +} else { + x_32 = x_10; +} +lean_ctor_set(x_32, 0, x_31); +lean_inc(x_21); +x_33 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__3___boxed), 13, 9); +lean_closure_set(x_33, 0, x_19); +lean_closure_set(x_33, 1, x_11); +lean_closure_set(x_33, 2, x_2); +lean_closure_set(x_33, 3, x_1); +lean_closure_set(x_33, 4, x_15); +lean_closure_set(x_33, 5, x_9); +lean_closure_set(x_33, 6, x_21); +lean_closure_set(x_33, 7, x_22); +lean_closure_set(x_33, 8, x_32); +x_34 = l_Lean_Language_instInhabitedDynamicSnapshot; +x_35 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__21(x_34, x_21, x_33, x_4, x_5, x_18); +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_Syntax_getArgs(x_28); +lean_dec(x_28); +if (lean_is_scalar(x_10)) { + x_37 = lean_alloc_ctor(1, 1, 0); +} else { + x_37 = x_10; +} +lean_ctor_set(x_37, 0, x_36); +lean_inc(x_21); +x_38 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__3___boxed), 13, 9); +lean_closure_set(x_38, 0, x_19); +lean_closure_set(x_38, 1, x_11); +lean_closure_set(x_38, 2, x_2); +lean_closure_set(x_38, 3, x_1); +lean_closure_set(x_38, 4, x_15); +lean_closure_set(x_38, 5, x_9); +lean_closure_set(x_38, 6, x_21); +lean_closure_set(x_38, 7, x_22); +lean_closure_set(x_38, 8, x_37); +x_39 = l_Lean_Language_instInhabitedDynamicSnapshot; +x_40 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__21(x_39, x_21, x_38, x_4, x_5, x_18); +return x_40; +} +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___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) { +_start: +{ +lean_object* x_8; +lean_inc(x_6); +lean_inc(x_5); +x_8 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__13(x_1, 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; lean_object* 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 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__4), 6, 3); +lean_closure_set(x_11, 0, x_9); +lean_closure_set(x_11, 1, x_2); +lean_closure_set(x_11, 2, x_3); +x_12 = l_Lean_Elab_Command_withMacroExpansion___rarg(x_4, x_9, x_11, x_5, x_6, x_10); +return x_12; +} +else +{ +uint8_t x_13; +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_8); +if (x_13 == 0) +{ +return x_8; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_8, 0); +x_15 = lean_ctor_get(x_8, 1); +lean_inc(x_15); +lean_inc(x_14); +lean_dec(x_8); +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_Command_elabCommand___lambda__6___closed__1() { _start: { lean_object* x_1; @@ -21201,7 +24302,7 @@ x_1 = l_Lean_Elab_Command_commandElabAttribute; return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__2() { +static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__6___closed__2() { _start: { lean_object* x_1; @@ -21209,16 +24310,16 @@ x_1 = lean_mk_string_from_bytes("elaboration function for '", 26); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__3() { +static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__6___closed__3() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__2; +x_1 = l_Lean_Elab_Command_elabCommand___lambda__6___closed__2; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__4() { +static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__6___closed__4() { _start: { lean_object* x_1; @@ -21226,268 +24327,278 @@ x_1 = lean_mk_string_from_bytes("' has not been implemented", 26); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__5() { +static lean_object* _init_l_Lean_Elab_Command_elabCommand___lambda__6___closed__5() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__4; +x_1 = l_Lean_Elab_Command_elabCommand___lambda__6___closed__4; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__4(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_Command_elabCommand___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_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; 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_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* 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_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +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_inc(x_1); -lean_inc(x_10); -x_11 = lean_alloc_closure((void*)(l_Lean_Elab_expandMacroImpl_x3f___boxed), 4, 2); -lean_closure_set(x_11, 0, x_10); -lean_closure_set(x_11, 1, x_1); +lean_inc(x_11); +x_12 = lean_alloc_closure((void*)(l_Lean_Elab_expandMacroImpl_x3f___boxed), 4, 2); +lean_closure_set(x_12, 0, x_11); +lean_closure_set(x_12, 1, x_1); +lean_inc(x_5); lean_inc(x_4); -lean_inc(x_3); -x_12 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__6(x_11, x_3, x_4, x_9); -if (lean_obj_tag(x_12) == 0) -{ -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); +x_13 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__6(x_12, x_4, x_5, x_10); 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_12, 1); +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 0); lean_inc(x_14); -lean_dec(x_12); -x_15 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__1; +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +lean_dec(x_3); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = l_Lean_Elab_Command_elabCommand___lambda__6___closed__1; lean_inc(x_2); -x_16 = l_Lean_KeyedDeclsAttribute_getEntries___rarg(x_15, x_10, x_2); -if (lean_obj_tag(x_16) == 0) +x_17 = l_Lean_KeyedDeclsAttribute_getEntries___rarg(x_16, x_11, x_2); +if (lean_obj_tag(x_17) == 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_dec(x_8); -x_17 = l_Lean_MessageData_ofName(x_2); -x_18 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__3; -lean_ctor_set_tag(x_6, 7); -lean_ctor_set(x_6, 1, x_17); -lean_ctor_set(x_6, 0, x_18); -x_19 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__5; -x_20 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_20, 0, x_6); -lean_ctor_set(x_20, 1, x_19); -x_21 = lean_alloc_closure((void*)(l_Lean_throwError___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__1___boxed), 4, 1); -lean_closure_set(x_21, 0, x_20); -x_22 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__4; -x_23 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); -lean_closure_set(x_23, 0, x_22); -lean_closure_set(x_23, 1, x_1); -x_24 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_21, x_23, x_3, x_4, x_14); -return x_24; +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_dec(x_9); +x_18 = l_Lean_MessageData_ofName(x_2); +x_19 = l_Lean_Elab_Command_elabCommand___lambda__6___closed__3; +lean_ctor_set_tag(x_7, 7); +lean_ctor_set(x_7, 1, x_18); +lean_ctor_set(x_7, 0, x_19); +x_20 = l_Lean_Elab_Command_elabCommand___lambda__6___closed__5; +x_21 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_21, 0, x_7); +lean_ctor_set(x_21, 1, x_20); +x_22 = lean_alloc_closure((void*)(l_Lean_throwError___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__1___boxed), 4, 1); +lean_closure_set(x_22, 0, x_21); +x_23 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__4; +x_24 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); +lean_closure_set(x_24, 0, x_23); +lean_closure_set(x_24, 1, x_1); +x_25 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_22, x_24, x_4, x_5, x_15); +return x_25; } else { -lean_object* x_25; -lean_free_object(x_6); +lean_object* x_26; +lean_free_object(x_7); lean_dec(x_2); -x_25 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing(x_8, x_1, x_16, x_3, x_4, x_14); -return x_25; +x_26 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing(x_9, x_1, x_17, x_4, x_5, x_15); +return x_26; } } 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; lean_object* x_32; lean_object* x_33; -lean_dec(x_10); -lean_free_object(x_6); -lean_dec(x_8); +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_dec(x_11); +lean_free_object(x_7); +lean_dec(x_9); lean_dec(x_2); -x_26 = lean_ctor_get(x_13, 0); -lean_inc(x_26); -lean_dec(x_13); -x_27 = lean_ctor_get(x_12, 1); +x_27 = lean_ctor_get(x_14, 0); lean_inc(x_27); -lean_dec(x_12); -x_28 = lean_ctor_get(x_26, 0); +lean_dec(x_14); +x_28 = lean_ctor_get(x_13, 1); lean_inc(x_28); -x_29 = lean_ctor_get(x_26, 1); +lean_dec(x_13); +x_29 = lean_ctor_get(x_27, 0); lean_inc(x_29); -lean_dec(x_26); -x_30 = lean_alloc_closure((void*)(l_liftExcept___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__8___boxed), 3, 1); -lean_closure_set(x_30, 0, x_29); -lean_inc(x_1); -x_31 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__3), 5, 2); +x_30 = lean_ctor_get(x_27, 1); +lean_inc(x_30); +lean_dec(x_27); +x_31 = lean_alloc_closure((void*)(l_liftExcept___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__8___boxed), 3, 1); lean_closure_set(x_31, 0, x_30); -lean_closure_set(x_31, 1, x_1); -x_32 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); -lean_closure_set(x_32, 0, x_28); -lean_closure_set(x_32, 1, x_1); -x_33 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_31, x_32, x_3, x_4, x_27); -return x_33; +lean_inc(x_1); +lean_inc(x_29); +x_32 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__5), 7, 4); +lean_closure_set(x_32, 0, x_31); +lean_closure_set(x_32, 1, x_29); +lean_closure_set(x_32, 2, x_3); +lean_closure_set(x_32, 3, x_1); +x_33 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); +lean_closure_set(x_33, 0, x_29); +lean_closure_set(x_33, 1, x_1); +x_34 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_32, x_33, x_4, x_5, x_28); +return x_34; } } else { -uint8_t x_34; -lean_dec(x_10); -lean_free_object(x_6); -lean_dec(x_8); +uint8_t x_35; +lean_dec(x_11); +lean_free_object(x_7); +lean_dec(x_9); +lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_34 = !lean_is_exclusive(x_12); -if (x_34 == 0) +x_35 = !lean_is_exclusive(x_13); +if (x_35 == 0) { -return x_12; +return x_13; } 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_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_13, 0); +x_37 = lean_ctor_get(x_13, 1); +lean_inc(x_37); 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; +lean_dec(x_13); +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_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* 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_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_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_inc(x_1); -lean_inc(x_40); -x_41 = lean_alloc_closure((void*)(l_Lean_Elab_expandMacroImpl_x3f___boxed), 4, 2); -lean_closure_set(x_41, 0, x_40); -lean_closure_set(x_41, 1, x_1); +lean_inc(x_41); +x_42 = lean_alloc_closure((void*)(l_Lean_Elab_expandMacroImpl_x3f___boxed), 4, 2); +lean_closure_set(x_42, 0, x_41); +lean_closure_set(x_42, 1, x_1); +lean_inc(x_5); lean_inc(x_4); -lean_inc(x_3); -x_42 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__6(x_41, x_3, x_4, x_39); -if (lean_obj_tag(x_42) == 0) -{ -lean_object* x_43; -x_43 = lean_ctor_get(x_42, 0); -lean_inc(x_43); +x_43 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__6(x_42, x_4, x_5, x_40); if (lean_obj_tag(x_43) == 0) { -lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_44 = lean_ctor_get(x_42, 1); +lean_object* x_44; +x_44 = lean_ctor_get(x_43, 0); lean_inc(x_44); -lean_dec(x_42); -x_45 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__1; +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +lean_dec(x_3); +x_45 = lean_ctor_get(x_43, 1); +lean_inc(x_45); +lean_dec(x_43); +x_46 = l_Lean_Elab_Command_elabCommand___lambda__6___closed__1; lean_inc(x_2); -x_46 = l_Lean_KeyedDeclsAttribute_getEntries___rarg(x_45, x_40, x_2); -if (lean_obj_tag(x_46) == 0) +x_47 = l_Lean_KeyedDeclsAttribute_getEntries___rarg(x_46, x_41, x_2); +if (lean_obj_tag(x_47) == 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_dec(x_38); -x_47 = l_Lean_MessageData_ofName(x_2); -x_48 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__3; -x_49 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_49, 0, x_48); -lean_ctor_set(x_49, 1, x_47); -x_50 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__5; -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 = lean_alloc_closure((void*)(l_Lean_throwError___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__1___boxed), 4, 1); -lean_closure_set(x_52, 0, x_51); -x_53 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__4; -x_54 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); -lean_closure_set(x_54, 0, x_53); -lean_closure_set(x_54, 1, x_1); -x_55 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_52, x_54, x_3, x_4, x_44); -return x_55; +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_dec(x_39); +x_48 = l_Lean_MessageData_ofName(x_2); +x_49 = l_Lean_Elab_Command_elabCommand___lambda__6___closed__3; +x_50 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_50, 0, x_49); +lean_ctor_set(x_50, 1, x_48); +x_51 = l_Lean_Elab_Command_elabCommand___lambda__6___closed__5; +x_52 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_52, 0, x_50); +lean_ctor_set(x_52, 1, x_51); +x_53 = lean_alloc_closure((void*)(l_Lean_throwError___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__1___boxed), 4, 1); +lean_closure_set(x_53, 0, x_52); +x_54 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___closed__4; +x_55 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); +lean_closure_set(x_55, 0, x_54); +lean_closure_set(x_55, 1, x_1); +x_56 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_53, x_55, x_4, x_5, x_45); +return x_56; } else { -lean_object* x_56; +lean_object* x_57; lean_dec(x_2); -x_56 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing(x_38, x_1, x_46, x_3, x_4, x_44); -return x_56; +x_57 = l___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing(x_39, x_1, x_47, x_4, x_5, x_45); +return x_57; } } 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_dec(x_40); -lean_dec(x_38); +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_dec(x_41); +lean_dec(x_39); lean_dec(x_2); -x_57 = lean_ctor_get(x_43, 0); -lean_inc(x_57); -lean_dec(x_43); -x_58 = lean_ctor_get(x_42, 1); +x_58 = lean_ctor_get(x_44, 0); lean_inc(x_58); -lean_dec(x_42); -x_59 = lean_ctor_get(x_57, 0); +lean_dec(x_44); +x_59 = lean_ctor_get(x_43, 1); lean_inc(x_59); -x_60 = lean_ctor_get(x_57, 1); +lean_dec(x_43); +x_60 = lean_ctor_get(x_58, 0); lean_inc(x_60); -lean_dec(x_57); -x_61 = lean_alloc_closure((void*)(l_liftExcept___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__8___boxed), 3, 1); -lean_closure_set(x_61, 0, x_60); -lean_inc(x_1); -x_62 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__3), 5, 2); +x_61 = lean_ctor_get(x_58, 1); +lean_inc(x_61); +lean_dec(x_58); +x_62 = lean_alloc_closure((void*)(l_liftExcept___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__8___boxed), 3, 1); lean_closure_set(x_62, 0, x_61); -lean_closure_set(x_62, 1, x_1); -x_63 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); -lean_closure_set(x_63, 0, x_59); -lean_closure_set(x_63, 1, x_1); -x_64 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_62, x_63, x_3, x_4, x_58); -return x_64; +lean_inc(x_1); +lean_inc(x_60); +x_63 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__5), 7, 4); +lean_closure_set(x_63, 0, x_62); +lean_closure_set(x_63, 1, x_60); +lean_closure_set(x_63, 2, x_3); +lean_closure_set(x_63, 3, x_1); +x_64 = lean_alloc_closure((void*)(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkInfoTree___boxed), 6, 2); +lean_closure_set(x_64, 0, x_60); +lean_closure_set(x_64, 1, x_1); +x_65 = l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__2(x_63, x_64, x_4, x_5, x_59); +return x_65; } } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; -lean_dec(x_40); -lean_dec(x_38); +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +lean_dec(x_41); +lean_dec(x_39); +lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_65 = lean_ctor_get(x_42, 0); -lean_inc(x_65); -x_66 = lean_ctor_get(x_42, 1); +x_66 = lean_ctor_get(x_43, 0); lean_inc(x_66); -if (lean_is_exclusive(x_42)) { - lean_ctor_release(x_42, 0); - lean_ctor_release(x_42, 1); - x_67 = x_42; +x_67 = lean_ctor_get(x_43, 1); +lean_inc(x_67); +if (lean_is_exclusive(x_43)) { + lean_ctor_release(x_43, 0); + lean_ctor_release(x_43, 1); + x_68 = x_43; } else { - lean_dec_ref(x_42); - x_67 = lean_box(0); + lean_dec_ref(x_43); + x_68 = lean_box(0); } -if (lean_is_scalar(x_67)) { - x_68 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_68)) { + x_69 = lean_alloc_ctor(1, 2, 0); } else { - x_68 = x_67; + x_69 = x_68; } -lean_ctor_set(x_68, 0, x_65); -lean_ctor_set(x_68, 1, x_66); -return x_68; +lean_ctor_set(x_69, 0, x_66); +lean_ctor_set(x_69, 1, x_67); +return x_69; } } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; lean_object* x_5; @@ -21549,7 +24660,7 @@ static lean_object* _init_l_Lean_Elab_Command_elabCommand___closed__6() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__5___boxed), 3, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__7___boxed), 3, 0); return x_1; } } @@ -21595,9 +24706,10 @@ lean_inc(x_1); x_9 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__2___boxed), 5, 1); lean_closure_set(x_9, 0, x_1); lean_inc(x_1); -x_10 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__4), 5, 2); +x_10 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand___lambda__6), 6, 3); lean_closure_set(x_10, 0, x_1); lean_closure_set(x_10, 1, x_5); +lean_closure_set(x_10, 2, x_7); x_11 = l_Lean_Elab_Command_elabCommand___closed__5; lean_inc(x_1); x_12 = l_Lean_Syntax_isOfKind(x_1, x_11); @@ -21688,7 +24800,7 @@ lean_dec(x_31); x_42 = lean_box(0); x_43 = l_Lean_Elab_Command_elabCommand___boxed__const__1; x_44 = lean_box_usize(x_41); -x_45 = lean_alloc_closure((void*)(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18___boxed), 7, 4); +x_45 = lean_alloc_closure((void*)(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25___boxed), 7, 4); lean_closure_set(x_45, 0, x_6); lean_closure_set(x_45, 1, x_43); lean_closure_set(x_45, 2, x_44); @@ -21873,7 +24985,78 @@ lean_dec(x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___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, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Array_zipWithAux___at_Lean_Elab_Command_elabCommand___spec__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_Array_zipWithAux___at_Lean_Elab_Command_elabCommand___spec__18(x_1, x_2, x_3, x_4); +lean_dec(x_2); +lean_dec(x_1); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___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_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_5); +lean_dec(x_5); +x_12 = lean_unbox_usize(x_6); +lean_dec(x_6); +x_13 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__20(x_1, x_2, x_3, x_4, x_11, x_12, x_7, x_8, x_9, x_10); +lean_dec(x_8); +lean_dec(x_4); +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_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) { +_start: +{ +size_t x_7; size_t x_8; lean_object* x_9; +x_7 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_8 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_9 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabCommand___spec__22(x_7, x_8, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___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; +x_9 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_10 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_11 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__23(x_1, x_2, x_9, x_10, x_5, x_6, x_7, x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_2); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___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) { +_start: +{ +size_t x_9; size_t x_10; lean_object* x_11; +x_9 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_10 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_11 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabCommand___spec__24(x_1, x_2, x_9, x_10, x_5, x_6, x_7, x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_2); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__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) { _start: { size_t x_8; size_t x_9; lean_object* x_10; @@ -21881,7 +25064,7 @@ x_8 = lean_unbox_usize(x_2); lean_dec(x_2); x_9 = lean_unbox_usize(x_3); lean_dec(x_3); -x_10 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_1, x_8, x_9, x_4, x_5, x_6, x_7); +x_10 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_1, x_8, x_9, x_4, x_5, x_6, x_7); lean_dec(x_1); return x_10; } @@ -21897,17 +25080,31 @@ lean_dec(x_2); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___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_Lean_Elab_Command_elabCommand___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_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_6); +lean_dec(x_2); +lean_dec(x_1); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabCommand___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l_Lean_Elab_Command_elabCommand___lambda__5(x_1, x_2, x_3); +x_4 = l_Lean_Elab_Command_elabCommand___lambda__7(x_1, x_2, x_3); lean_dec(x_2); lean_dec(x_1); return x_4; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__1() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__1() { _start: { lean_object* x_1; @@ -21915,38 +25112,38 @@ x_1 = lean_mk_string_from_bytes("input", 5); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__2() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__1; -x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__1; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__3() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__16; -x_2 = lean_unsigned_to_nat(3643u); +x_2 = lean_unsigned_to_nat(4495u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495_(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_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__2; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__2; x_3 = 0; -x_4 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__3; +x_4 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__3; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__1() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__1() { _start: { lean_object* x_1; @@ -21954,17 +25151,17 @@ x_1 = lean_mk_string_from_bytes("showPartialSyntaxErrors", 23); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__2() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____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_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__1; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__3() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__3() { _start: { lean_object* x_1; @@ -21972,13 +25169,13 @@ x_1 = lean_mk_string_from_bytes("show elaboration errors from partial syntax tre return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__4() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__4() { _start: { uint8_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = 0; x_2 = l_Lean_Elab_Command_instInhabitedScope___closed__1; -x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__3; +x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__3; x_4 = lean_box(x_1); x_5 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_5, 0, x_4); @@ -21987,25 +25184,25 @@ lean_ctor_set(x_5, 2, x_3); return x_5; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__5() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____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_Lean_Elab_Command___hyg_421____closed__1; x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__1; x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_592____closed__6; -x_4 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__1; +x_4 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____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_Command_initFn____x40_Lean_Elab_Command___hyg_3685_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537_(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_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__2; -x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__4; -x_4 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__5; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__2; +x_3 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__4; +x_4 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__5; x_5 = l_Lean_Option_register___at_Lean_Elab_initFn____x40_Lean_Elab_AutoBound___hyg_7____spec__1(x_2, x_3, x_4, x_1); return x_5; } @@ -24887,17 +28084,8 @@ return x_5; static lean_object* _init_l_Lean_Elab_Command_getBracketedBinderIds___closed__7() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(1u); -x_2 = lean_mk_empty_array_with_capacity(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_Command_getBracketedBinderIds___closed__8() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_getBracketedBinderIds___closed__7; +x_1 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__1; x_2 = lean_box(0); x_3 = lean_array_push(x_1, x_2); return x_3; @@ -24952,7 +28140,7 @@ return x_15; else { lean_object* x_16; -x_16 = l_Lean_Elab_Command_getBracketedBinderIds___closed__8; +x_16 = l_Lean_Elab_Command_getBracketedBinderIds___closed__7; return x_16; } } @@ -24964,7 +28152,7 @@ x_18 = l_Lean_Syntax_getArg(x_10, x_17); lean_dec(x_10); x_19 = l_Lean_Syntax_getId(x_18); lean_dec(x_18); -x_20 = l_Lean_Elab_Command_getBracketedBinderIds___closed__7; +x_20 = l_Lean_Elab_Command_elabCommand___lambda__4___closed__1; x_21 = lean_array_push(x_20, x_19); return x_21; } @@ -28759,7 +31947,7 @@ static lean_object* _init_l_Lean_Elab_Command_modifyScope___closed__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; x_1 = l_Lean_Elab_Command_modifyScope___closed__1; x_2 = l_Lean_Elab_Command_modifyScope___closed__2; -x_3 = lean_unsigned_to_nat(541u); +x_3 = lean_unsigned_to_nat(605u); x_4 = lean_unsigned_to_nat(16u); x_5 = l_Lean_Elab_Command_modifyScope___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -37408,22 +40596,36 @@ lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3 if (builtin) {res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3262_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1___closed__1 = _init_l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1___closed__1(); +}l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361____closed__1 = _init_l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361____closed__1(); +lean_mark_persistent(l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361____closed__1); +l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361____closed__2 = _init_l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361____closed__2(); +lean_mark_persistent(l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361____closed__2); +l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361_ = _init_l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361_(); +lean_mark_persistent(l_Lean_Elab_Command_instImpl____x40_Lean_Elab_Command___hyg_3361_); +l_Lean_Elab_Command_instTypeNameMacroExpandedSnapshot = _init_l_Lean_Elab_Command_instTypeNameMacroExpandedSnapshot(); +lean_mark_persistent(l_Lean_Elab_Command_instTypeNameMacroExpandedSnapshot); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_instToSnapshotTreeMacroExpandedSnapshot___spec__1___closed__1); +l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1___closed__1 = _init_l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1___closed__1(); lean_mark_persistent(l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1___closed__1); l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1___closed__2 = _init_l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1___closed__2(); lean_mark_persistent(l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1___closed__2); l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__12___rarg___closed__1 = _init_l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__12___rarg___closed__1(); lean_mark_persistent(l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__12___rarg___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__4___closed__1 = _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__1(); lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__4___closed__1); -l_Lean_Elab_Command_elabCommand___lambda__4___closed__2 = _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__2(); -lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__4___closed__2); -l_Lean_Elab_Command_elabCommand___lambda__4___closed__3 = _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__3(); -lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__4___closed__3); -l_Lean_Elab_Command_elabCommand___lambda__4___closed__4 = _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__4(); -lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__4___closed__4); -l_Lean_Elab_Command_elabCommand___lambda__4___closed__5 = _init_l_Lean_Elab_Command_elabCommand___lambda__4___closed__5(); -lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__4___closed__5); +l_Lean_Elab_Command_elabCommand___lambda__6___closed__1 = _init_l_Lean_Elab_Command_elabCommand___lambda__6___closed__1(); +lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__6___closed__1); +l_Lean_Elab_Command_elabCommand___lambda__6___closed__2 = _init_l_Lean_Elab_Command_elabCommand___lambda__6___closed__2(); +lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__6___closed__2); +l_Lean_Elab_Command_elabCommand___lambda__6___closed__3 = _init_l_Lean_Elab_Command_elabCommand___lambda__6___closed__3(); +lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__6___closed__3); +l_Lean_Elab_Command_elabCommand___lambda__6___closed__4 = _init_l_Lean_Elab_Command_elabCommand___lambda__6___closed__4(); +lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__6___closed__4); +l_Lean_Elab_Command_elabCommand___lambda__6___closed__5 = _init_l_Lean_Elab_Command_elabCommand___lambda__6___closed__5(); +lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__6___closed__5); l_Lean_Elab_Command_elabCommand___closed__1 = _init_l_Lean_Elab_Command_elabCommand___closed__1(); lean_mark_persistent(l_Lean_Elab_Command_elabCommand___closed__1); l_Lean_Elab_Command_elabCommand___closed__2 = _init_l_Lean_Elab_Command_elabCommand___closed__2(); @@ -37440,26 +40642,26 @@ l_Lean_Elab_Command_elabCommand___closed__7 = _init_l_Lean_Elab_Command_elabComm lean_mark_persistent(l_Lean_Elab_Command_elabCommand___closed__7); l_Lean_Elab_Command_elabCommand___boxed__const__1 = _init_l_Lean_Elab_Command_elabCommand___boxed__const__1(); lean_mark_persistent(l_Lean_Elab_Command_elabCommand___boxed__const__1); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__1 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__1(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__1); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__2 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__2(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__2); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__3 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__3(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643____closed__3); -if (builtin) {res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3643_(lean_io_mk_world()); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__1 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__1(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__1); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__2 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__2(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__2); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__3 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__3(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495____closed__3); +if (builtin) {res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4495_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__1 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__1(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__1); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__2 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__2(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__2); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__3 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__3(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__3); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__4 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__4(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__4); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__5 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__5(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685____closed__5); -if (builtin) {res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_3685_(lean_io_mk_world()); +}l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__1 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__1(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__1); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__2 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__2(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__2); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__3 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__3(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__3); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__4 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__4(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__4); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__5 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__5(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537____closed__5); +if (builtin) {res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_4537_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Elab_Command_showPartialSyntaxErrors = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Elab_Command_showPartialSyntaxErrors); @@ -37498,8 +40700,6 @@ l_Lean_Elab_Command_getBracketedBinderIds___closed__6 = _init_l_Lean_Elab_Comman lean_mark_persistent(l_Lean_Elab_Command_getBracketedBinderIds___closed__6); l_Lean_Elab_Command_getBracketedBinderIds___closed__7 = _init_l_Lean_Elab_Command_getBracketedBinderIds___closed__7(); lean_mark_persistent(l_Lean_Elab_Command_getBracketedBinderIds___closed__7); -l_Lean_Elab_Command_getBracketedBinderIds___closed__8 = _init_l_Lean_Elab_Command_getBracketedBinderIds___closed__8(); -lean_mark_persistent(l_Lean_Elab_Command_getBracketedBinderIds___closed__8); l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkTermContext___closed__1 = _init_l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkTermContext___closed__1(); lean_mark_persistent(l___private_Lean_Elab_Command_0__Lean_Elab_Command_mkTermContext___closed__1); l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Command_liftTermElabM___spec__1___rarg___closed__1 = _init_l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Command_liftTermElabM___spec__1___rarg___closed__1(); diff --git a/stage0/stdlib/Lean/Elab/DeclUtil.c b/stage0/stdlib/Lean/Elab/DeclUtil.c index cb47b6191387..023626b2e44d 100644 --- a/stage0/stdlib/Lean/Elab/DeclUtil.c +++ b/stage0/stdlib/Lean/Elab/DeclUtil.c @@ -15,11 +15,11 @@ extern "C" { #endif LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__22___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__19(lean_object*); +static lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__5; static lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__16___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__20(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__12___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__5; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__17(lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Meta_forallTelescopeCompatibleAux___spec__15___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -31,7 +31,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompati lean_object* lean_whnf(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___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_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_sortDeclLevelParams___spec__3(lean_object*, lean_object*, size_t, size_t, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3(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_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__18___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__5; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__19___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -74,6 +74,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompati LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__22(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__4___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux(lean_object*); +lean_object* l_Lean_MessageData_ofSyntax(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_sortDeclLevelParams___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__9(lean_object*); @@ -93,6 +94,7 @@ LEAN_EXPORT lean_object* l_List_foldl___at_Lean_Elab_sortDeclLevelParams___spec_ LEAN_EXPORT lean_object* l_Lean_Elab_expandDeclSig(lean_object*); static lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__4; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__6___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_BinderInfo_isInstImplicit(uint8_t); uint8_t lean_name_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__17___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -101,9 +103,9 @@ LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg(lean_ob lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___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_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__21(lean_object*); +lean_object* lean_mk_syntax_ident(lean_object*); LEAN_EXPORT uint8_t l_Lean_Elab_sortDeclLevelParams___lambda__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__2; -static lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__6; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__20___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_sortDeclLevelParams___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Meta_forallTelescopeCompatibleAux___spec__15___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -119,6 +121,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompati LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__16(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__8___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__22___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Name_hasMacroScopes(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__5(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatible(lean_object*, lean_object*); static lean_object* l_Lean_Elab_sortDeclLevelParams___closed__3; @@ -149,14 +152,14 @@ lean_object* lean_array_uget(lean_object*, size_t); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__11(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__9___rarg___boxed(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_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__6; lean_object* lean_array_get_size(lean_object*); LEAN_EXPORT lean_object* l_List_foldl___at_Lean_Elab_sortDeclLevelParams___spec__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_forallTelescopeCompatible___rarg___lambda__2___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4(lean_object*, lean_object*, 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_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___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*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__7(lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); -lean_object* l_Lean_MessageData_ofName(lean_object*); lean_object* lean_expr_instantiate1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__13(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__18(lean_object*); @@ -1267,7 +1270,7 @@ static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lamb _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("binder annotation mismatch at parameter '", 41); +x_1 = lean_mk_string_from_bytes("parameter '", 11); return x_1; } } @@ -1284,7 +1287,7 @@ static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lamb _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("'", 1); +x_1 = lean_mk_string_from_bytes("' ", 2); return x_1; } } @@ -1297,98 +1300,7 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___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, uint8_t 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, lean_object* x_15) { -_start: -{ -uint8_t x_16; -lean_dec(x_10); -x_16 = l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_399_(x_7, x_9); -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; uint8_t x_23; -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_17 = l_Lean_MessageData_ofName(x_6); -x_18 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___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_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___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___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(x_21, x_11, x_12, x_13, x_14, x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -x_23 = !lean_is_exclusive(x_22); -if (x_23 == 0) -{ -return x_22; -} -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_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; -} -} -else -{ -lean_object* x_27; lean_object* x_28; -x_27 = lean_box(0); -x_28 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_27, x_11, x_12, x_13, x_14, x_15); -return x_28; -} -} -} -static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("parameter '", 11); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("' ", 2); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__3; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__5() { +static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__5() { _start: { lean_object* x_1; @@ -1396,79 +1308,80 @@ x_1 = lean_mk_string_from_bytes("", 0); return x_1; } } -static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__6() { +static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__6() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__5; +x_1 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__5; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___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, lean_object* x_8, uint8_t x_9, uint8_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_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___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, 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) { _start: { -lean_object* x_17; -lean_dec(x_11); -lean_inc(x_15); +lean_object* x_16; +lean_dec(x_10); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); +lean_inc(x_11); lean_inc(x_2); lean_inc(x_1); -x_17 = l_Lean_Meta_isExprDefEq(x_1, x_2, x_12, x_13, x_14, x_15, x_16); -if (lean_obj_tag(x_17) == 0) +x_16 = l_Lean_Meta_isExprDefEq(x_1, x_2, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_16) == 0) { -lean_object* x_18; uint8_t x_19; -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; uint8_t x_18; +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_unbox(x_17); +lean_dec(x_17); +if (x_18 == 0) { -lean_object* x_20; lean_object* x_21; +lean_object* x_19; lean_object* 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_ctor_get(x_17, 1); -lean_inc(x_20); -lean_dec(x_17); -lean_inc(x_15); +x_19 = lean_ctor_get(x_16, 1); +lean_inc(x_19); +lean_dec(x_16); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); -x_21 = l_Lean_Meta_mkHasTypeButIsExpectedMsg(x_1, x_2, x_12, x_13, x_14, x_15, x_20); -if (lean_obj_tag(x_21) == 0) +lean_inc(x_11); +x_20 = l_Lean_Meta_mkHasTypeButIsExpectedMsg(x_1, x_2, x_11, x_12, x_13, x_14, x_19); +if (lean_obj_tag(x_20) == 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; lean_object* x_32; uint8_t x_33; -x_22 = lean_ctor_get(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; 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_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 1); 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_ofName(x_8); -x_25 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__2; +lean_dec(x_20); +x_23 = lean_mk_syntax_ident(x_8); +x_24 = l_Lean_MessageData_ofSyntax(x_23); +x_25 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__2; 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_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__4; +x_27 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___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 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_29, 0, x_28); -lean_ctor_set(x_29, 1, x_22); -x_30 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__6; +lean_ctor_set(x_29, 1, x_21); +x_30 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___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_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(x_31, x_12, x_13, x_14, x_15, x_23); -lean_dec(x_15); +x_32 = l_Lean_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(x_31, x_11, x_12, x_13, x_14, x_22); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); +lean_dec(x_11); x_33 = !lean_is_exclusive(x_32); if (x_33 == 0) { @@ -1491,24 +1404,24 @@ return x_36; else { uint8_t x_37; -lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); +lean_dec(x_11); lean_dec(x_8); -x_37 = !lean_is_exclusive(x_21); +x_37 = !lean_is_exclusive(x_20); if (x_37 == 0) { -return x_21; +return x_20; } 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); +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_21); +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); @@ -1520,21 +1433,21 @@ else { lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_dec(x_2); -x_41 = lean_ctor_get(x_17, 1); +x_41 = lean_ctor_get(x_16, 1); lean_inc(x_41); -lean_dec(x_17); +lean_dec(x_16); x_42 = lean_box(0); -x_43 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3(x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_1, x_10, x_42, x_12, x_13, x_14, x_15, x_41); +x_43 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__2(x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_1, x_42, x_11, x_12, x_13, x_14, x_41); 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_8); lean_dec(x_7); lean_dec(x_6); @@ -1543,19 +1456,19 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_44 = !lean_is_exclusive(x_17); +x_44 = !lean_is_exclusive(x_16); if (x_44 == 0) { -return x_17; +return x_16; } 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); +x_45 = lean_ctor_get(x_16, 0); +x_46 = lean_ctor_get(x_16, 1); lean_inc(x_46); lean_inc(x_45); -lean_dec(x_17); +lean_dec(x_16); x_47 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_47, 0, x_45); lean_ctor_set(x_47, 1, x_46); @@ -1564,53 +1477,215 @@ return x_47; } } } -static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__1() { +static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("unexpected number of parameters", 31); +x_1 = lean_mk_string_from_bytes("parameter name mismatch '", 25); return x_1; } } -static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__2() { +static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__1; +x_1 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__3() { +static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__3() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("parameter name mismatch '", 25); +x_1 = lean_mk_string_from_bytes("', expected '", 13); return x_1; } } -static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__4() { +static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__3; +x_1 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__5() { +static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__5() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("', expected '", 13); +x_1 = lean_mk_string_from_bytes("'", 1); return x_1; } } -static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__6() { +static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__6() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__5; +x_1 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___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, 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) { +_start: +{ +lean_object* x_17; uint8_t x_35; +lean_dec(x_11); +x_35 = lean_name_eq(x_8, x_10); +if (x_35 == 0) +{ +uint8_t x_36; +x_36 = l_Lean_BinderInfo_isInstImplicit(x_9); +if (x_36 == 0) +{ +lean_object* 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_box(0); +x_17 = x_37; +goto block_34; +} +else +{ +uint8_t x_38; +x_38 = l_Lean_Name_hasMacroScopes(x_8); +if (x_38 == 0) +{ +lean_object* 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_2); +lean_dec(x_1); +x_39 = lean_box(0); +x_17 = x_39; +goto block_34; +} +else +{ +uint8_t x_40; +x_40 = l_Lean_Name_hasMacroScopes(x_10); +if (x_40 == 0) +{ +lean_object* 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_box(0); +x_17 = x_41; +goto block_34; +} +else +{ +lean_object* x_42; lean_object* x_43; +lean_dec(x_10); +x_42 = lean_box(0); +x_43 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_42, x_12, x_13, x_14, x_15, x_16); +return x_43; +} +} +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_10); +x_44 = lean_box(0); +x_45 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_44, x_12, x_13, x_14, x_15, x_16); +return x_45; +} +block_34: +{ +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; uint8_t x_30; +lean_dec(x_17); +x_18 = lean_mk_syntax_ident(x_8); +x_19 = l_Lean_MessageData_ofSyntax(x_18); +x_20 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___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_forallTelescopeCompatibleAux___rarg___lambda__4___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_mk_syntax_ident(x_10); +x_25 = l_Lean_MessageData_ofSyntax(x_24); +x_26 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_26, 0, x_23); +lean_ctor_set(x_26, 1, x_25); +x_27 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__6; +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_Lean_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(x_28, 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); +x_30 = !lean_is_exclusive(x_29); +if (x_30 == 0) +{ +return x_29; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_29, 0); +x_32 = lean_ctor_get(x_29, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_29); +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_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("unexpected number of parameters", 31); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("binder annotation mismatch at parameter '", 41); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } @@ -1935,69 +2010,81 @@ x_69 = lean_ctor_get(x_40, 2); lean_inc(x_69); x_70 = lean_ctor_get_uint8(x_40, sizeof(void*)*3 + 8); lean_dec(x_40); -x_71 = lean_name_eq(x_63, x_67); +x_71 = l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_399_(x_66, x_70); if (x_71 == 0) { -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; uint8_t x_82; +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; uint8_t x_79; lean_dec(x_69); lean_dec(x_68); +lean_dec(x_67); lean_dec(x_65); lean_dec(x_64); lean_dec(x_14); lean_dec(x_5); lean_dec(x_1); -x_72 = l_Lean_MessageData_ofName(x_63); -x_73 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__4; -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_Meta_forallTelescopeCompatibleAux___rarg___closed__6; -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_MessageData_ofName(x_67); -x_78 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_78, 0, x_76); -lean_ctor_set(x_78, 1, x_77); -x_79 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__4; -x_80 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_80, 0, x_78); -lean_ctor_set(x_80, 1, x_79); -x_81 = l_Lean_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(x_80, x_6, x_7, x_8, x_9, x_62); +x_72 = lean_mk_syntax_ident(x_63); +x_73 = l_Lean_MessageData_ofSyntax(x_72); +x_74 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__4; +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_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__6; +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_Lean_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(x_77, x_6, x_7, x_8, x_9, x_62); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -x_82 = !lean_is_exclusive(x_81); -if (x_82 == 0) +x_79 = !lean_is_exclusive(x_78); +if (x_79 == 0) { -return x_81; +return x_78; } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; -x_83 = lean_ctor_get(x_81, 0); -x_84 = lean_ctor_get(x_81, 1); -lean_inc(x_84); -lean_inc(x_83); -lean_dec(x_81); -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; +lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_80 = lean_ctor_get(x_78, 0); +x_81 = lean_ctor_get(x_78, 1); +lean_inc(x_81); +lean_inc(x_80); +lean_dec(x_78); +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_86; lean_object* x_87; -lean_dec(x_67); -x_86 = lean_box(0); -x_87 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4(x_64, x_68, x_65, x_69, x_5, x_1, x_14, x_63, x_66, x_70, x_86, x_6, x_7, x_8, x_9, x_62); -return x_87; +lean_object* x_83; lean_object* x_84; +x_83 = lean_box(0); +x_84 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4(x_64, x_68, x_65, x_69, x_5, x_1, x_14, x_63, x_66, x_67, x_83, x_6, x_7, x_8, x_9, x_62); +return x_84; } } case 8: { +lean_object* x_85; lean_object* x_86; lean_object* x_87; +lean_dec(x_40); +lean_dec(x_16); +lean_dec(x_14); +lean_dec(x_5); +lean_dec(x_1); +x_85 = lean_ctor_get(x_18, 1); +lean_inc(x_85); +lean_dec(x_18); +x_86 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__2; +x_87 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__16___rarg(x_86, x_6, x_7, x_8, x_9, x_85); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +return x_87; +} +case 9: +{ lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_dec(x_40); lean_dec(x_16); @@ -2008,14 +2095,14 @@ x_88 = lean_ctor_get(x_18, 1); lean_inc(x_88); lean_dec(x_18); x_89 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__2; -x_90 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__16___rarg(x_89, x_6, x_7, x_8, x_9, x_88); +x_90 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__17___rarg(x_89, x_6, x_7, x_8, x_9, x_88); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); return x_90; } -case 9: +case 10: { lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_dec(x_40); @@ -2027,14 +2114,14 @@ x_91 = lean_ctor_get(x_18, 1); lean_inc(x_91); lean_dec(x_18); x_92 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__2; -x_93 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__17___rarg(x_92, x_6, x_7, x_8, x_9, x_91); +x_93 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__18___rarg(x_92, x_6, x_7, x_8, x_9, x_91); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); return x_93; } -case 10: +default: { lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_dec(x_40); @@ -2046,17 +2133,18 @@ x_94 = lean_ctor_get(x_18, 1); lean_inc(x_94); lean_dec(x_18); x_95 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__2; -x_96 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__18___rarg(x_95, x_6, x_7, x_8, x_9, x_94); +x_96 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__19___rarg(x_95, 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_96; } -default: +} +} +case 8: { lean_object* x_97; lean_object* x_98; lean_object* x_99; -lean_dec(x_40); lean_dec(x_16); lean_dec(x_14); lean_dec(x_5); @@ -2065,16 +2153,14 @@ x_97 = lean_ctor_get(x_18, 1); lean_inc(x_97); lean_dec(x_18); x_98 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__2; -x_99 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__19___rarg(x_98, x_6, x_7, x_8, x_9, x_97); +x_99 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__20___rarg(x_98, x_6, x_7, x_8, x_9, x_97); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); return x_99; } -} -} -case 8: +case 9: { lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_dec(x_16); @@ -2085,14 +2171,14 @@ x_100 = lean_ctor_get(x_18, 1); lean_inc(x_100); lean_dec(x_18); x_101 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__2; -x_102 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__20___rarg(x_101, x_6, x_7, x_8, x_9, x_100); +x_102 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__21___rarg(x_101, x_6, x_7, x_8, x_9, x_100); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); return x_102; } -case 9: +case 10: { lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_dec(x_16); @@ -2103,14 +2189,14 @@ x_103 = lean_ctor_get(x_18, 1); lean_inc(x_103); lean_dec(x_18); x_104 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__2; -x_105 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__21___rarg(x_104, x_6, x_7, x_8, x_9, x_103); +x_105 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__22___rarg(x_104, x_6, x_7, x_8, x_9, x_103); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); return x_105; } -case 10: +default: { lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_dec(x_16); @@ -2121,36 +2207,18 @@ x_106 = lean_ctor_get(x_18, 1); lean_inc(x_106); lean_dec(x_18); x_107 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__2; -x_108 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__22___rarg(x_107, x_6, x_7, x_8, x_9, x_106); +x_108 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__23___rarg(x_107, x_6, x_7, x_8, x_9, x_106); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); return x_108; } -default: -{ -lean_object* x_109; lean_object* x_110; lean_object* x_111; -lean_dec(x_16); -lean_dec(x_14); -lean_dec(x_5); -lean_dec(x_1); -x_109 = lean_ctor_get(x_18, 1); -lean_inc(x_109); -lean_dec(x_18); -x_110 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__2; -x_111 = l_Lean_throwError___at_Lean_Meta_forallTelescopeCompatibleAux___spec__23___rarg(x_110, x_6, x_7, x_8, x_9, x_109); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -return x_111; -} } } else { -uint8_t x_112; +uint8_t x_109; lean_dec(x_16); lean_dec(x_14); lean_dec(x_9); @@ -2159,29 +2227,29 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); -x_112 = !lean_is_exclusive(x_18); -if (x_112 == 0) +x_109 = !lean_is_exclusive(x_18); +if (x_109 == 0) { return x_18; } else { -lean_object* x_113; lean_object* x_114; lean_object* x_115; -x_113 = lean_ctor_get(x_18, 0); -x_114 = lean_ctor_get(x_18, 1); -lean_inc(x_114); -lean_inc(x_113); +lean_object* x_110; lean_object* x_111; lean_object* x_112; +x_110 = lean_ctor_get(x_18, 0); +x_111 = lean_ctor_get(x_18, 1); +lean_inc(x_111); +lean_inc(x_110); lean_dec(x_18); -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; +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 { -uint8_t x_116; +uint8_t x_113; lean_dec(x_14); lean_dec(x_9); lean_dec(x_8); @@ -2190,32 +2258,32 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_1); -x_116 = !lean_is_exclusive(x_15); -if (x_116 == 0) +x_113 = !lean_is_exclusive(x_15); +if (x_113 == 0) { return x_15; } else { -lean_object* x_117; lean_object* x_118; lean_object* x_119; -x_117 = lean_ctor_get(x_15, 0); -x_118 = lean_ctor_get(x_15, 1); -lean_inc(x_118); -lean_inc(x_117); +lean_object* x_114; lean_object* x_115; lean_object* x_116; +x_114 = lean_ctor_get(x_15, 0); +x_115 = lean_ctor_get(x_15, 1); +lean_inc(x_115); +lean_inc(x_114); lean_dec(x_15); -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; +x_116 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_116, 0, x_114); +lean_ctor_set(x_116, 1, x_115); +return x_116; } } } else { -lean_object* x_120; +lean_object* x_117; lean_dec(x_2); -x_120 = lean_apply_8(x_1, x_5, x_3, x_4, x_6, x_7, x_8, x_9, x_10); -return x_120; +x_117 = lean_apply_8(x_1, x_5, x_3, x_4, x_6, x_7, x_8, x_9, x_10); +return x_117; } } } @@ -2516,25 +2584,21 @@ return x_16; LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___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, 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; uint8_t x_17; lean_object* x_18; -x_16 = lean_unbox(x_7); -lean_dec(x_7); -x_17 = lean_unbox(x_9); +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); lean_dec(x_9); -x_18 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_16, x_8, x_17, x_10, x_11, x_12, x_13, x_14, x_15); -return x_18; +x_17 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatibleAux___rarg___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: { -uint8_t x_17; uint8_t x_18; lean_object* x_19; +uint8_t x_17; lean_object* x_18; x_17 = lean_unbox(x_9); lean_dec(x_9); -x_18 = lean_unbox(x_10); -lean_dec(x_10); -x_19 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4(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); -return x_19; +x_18 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_17, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +return x_18; } } LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeCompatible___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) { @@ -2960,7 +3024,7 @@ x_38 = l_Lean_Name_toString(x_36, x_37); x_39 = l_Lean_Elab_sortDeclLevelParams___closed__3; x_40 = lean_string_append(x_39, x_38); lean_dec(x_38); -x_41 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__3; +x_41 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__5; x_42 = lean_string_append(x_40, x_41); lean_ctor_set_tag(x_5, 0); lean_ctor_set(x_5, 0, x_42); @@ -2977,7 +3041,7 @@ x_45 = l_Lean_Name_toString(x_43, x_44); x_46 = l_Lean_Elab_sortDeclLevelParams___closed__3; x_47 = lean_string_append(x_46, x_45); lean_dec(x_45); -x_48 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__3; +x_48 = l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__5; x_49 = lean_string_append(x_47, x_48); x_50 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_50, 0, x_49); @@ -3051,6 +3115,10 @@ l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__3 = _init_ lean_mark_persistent(l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__3); l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__4 = _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__4(); lean_mark_persistent(l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__4); +l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__5 = _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__5(); +lean_mark_persistent(l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__5); +l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__6 = _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__6(); +lean_mark_persistent(l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__3___closed__6); l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__1 = _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__1(); lean_mark_persistent(l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__1); l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__2 = _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___lambda__4___closed__2(); @@ -3071,10 +3139,6 @@ l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__3 = _init_l_Lean_Meta_ lean_mark_persistent(l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__3); l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__4 = _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__4(); lean_mark_persistent(l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__4); -l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__5 = _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__5(); -lean_mark_persistent(l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__5); -l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__6 = _init_l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__6(); -lean_mark_persistent(l_Lean_Meta_forallTelescopeCompatibleAux___rarg___closed__6); l_Lean_Meta_forallTelescopeCompatible___rarg___lambda__2___closed__1 = _init_l_Lean_Meta_forallTelescopeCompatible___rarg___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Meta_forallTelescopeCompatible___rarg___lambda__2___closed__1); l_Array_qsort_sort___at_Lean_Elab_sortDeclLevelParams___spec__2___closed__1 = _init_l_Array_qsort_sort___at_Lean_Elab_sortDeclLevelParams___spec__2___closed__1(); diff --git a/stage0/stdlib/Lean/Elab/Declaration.c b/stage0/stdlib/Lean/Elab/Declaration.c index 59606075d163..cdd73f5d7870 100644 --- a/stage0/stdlib/Lean/Elab/Declaration.c +++ b/stage0/stdlib/Lean/Elab/Declaration.c @@ -13,7 +13,7 @@ #ifdef __cplusplus extern "C" { #endif -static lean_object* l_Lean_Elab_Command_elabDeclaration___closed__9; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__6; lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandInitialize(lean_object*, lean_object*, lean_object*); 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*); @@ -25,6 +25,7 @@ static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__2 static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__14; LEAN_EXPORT lean_object* l_Lean_Elab_Command_checkValidCtorModifier___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_setDefName___closed__3; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__12; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabAttr(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualElement__1___closed__2; lean_object* l_Lean_MapDeclarationExtension_insert___rarg(lean_object*, lean_object*, lean_object*, lean_object*); @@ -35,19 +36,18 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabAtt LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1(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_EXPORT uint8_t l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isInstanceDef(lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__10; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__5___closed__4; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_setDeclIdName___closed__2; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__15; +lean_object* l_Lean_addBuiltinDocString(lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabDeclaration_declRange__1___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902_(lean_object*); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_ensureValidNamespace___closed__3; lean_object* l_Lean_addDocString_x27___at_Lean_Elab_Command_expandDeclId___spec__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabDeclaration___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__45; LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_expandDeclNamespace_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_elabAttr_declRange__1(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__5; +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualElement___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_checkValidCtorModifier___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__4; lean_object* l_Lean_logAt___at_Lean_Elab_Command_elabCommand___spec__4(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); @@ -68,27 +68,25 @@ static lean_object* l_Lean_Elab_Command_elabAxiom___lambda__5___closed__2; static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__2; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_ensureValidNamespace___closed__4; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__44; -extern lean_object* l_Lean_maxRecDepthErrorMessage; lean_object* l_Lean_Elab_Command_getLevelNames___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabAxiom(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandMutualPreamble(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getHeadInfo(lean_object*); uint8_t l_Lean_Exception_isInterrupt(lean_object*); -lean_object* l_Lean_Elab_Command_getMainModule___rarg(lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_synthesizeSyntheticMVars(uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___closed__1; lean_object* l_Lean_Syntax_formatStxAux(lean_object*, uint8_t, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandMutualElement___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Command_elabAttr_declRange__1___closed__1; -static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__6; lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__3___lambda__2___closed__1; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__46; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__7; 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 uint8_t l_Lean_Elab_Command_elabAxiom___lambda__1(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__3___boxed(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_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualElement___spec__1___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_toString(lean_object*, uint8_t); 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*); lean_object* l_Lean_Syntax_getId(lean_object*); @@ -108,8 +106,8 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabAtt LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualInductive___boxed(lean_object*); lean_object* l_Lean_mkHashSetImp___rarg(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabAttr__1___closed__2; +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1(lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__2___closed__6; -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabInductive(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_checkValidCtorModifier___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__1___lambda__1___closed__1; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isInstanceDef___closed__1; @@ -120,14 +118,15 @@ extern lean_object* l_Lean_Elab_Term_instMonadTermElabM; lean_object* l_Lean_Syntax_getArgs(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabAxiom___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*, lean_object*); lean_object* l_Lean_compileDecl(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__11; lean_object* l_Lean_replaceRef(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_instInhabitedReaderT___rarg___boxed(lean_object*, lean_object*); +static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__6; 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_object* l_Lean_Syntax_getPos_x3f(lean_object*, uint8_t); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__47; -lean_object* l_Lean_Elab_Command_elabCommand(lean_object*, lean_object*, lean_object*, lean_object*); 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_Lean_Elab_Command_expandInitialize___lambda__1___closed__30; static lean_object* l_Lean_Elab_Command_expandInitialize___closed__4; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__27; @@ -138,6 +137,7 @@ static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__1 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_expandInitialize___lambda__1___closed__12; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__8; static lean_object* l_Lean_Elab_Command_elabAxiom___lambda__5___closed__7; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__3___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_declRange__1___closed__1; @@ -155,11 +155,11 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandInitialize___lambda__4(lean_o LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualElement_declRange__1(lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabAttr_declRange__1___closed__5; -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__1; lean_object* l_Lean_Syntax_node5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabAttr__1___closed__1; uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabAttr___spec__1___closed__3; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__13; lean_object* l_Lean_stringToMessageData(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; @@ -167,9 +167,9 @@ lean_object* l_EStateM_instMonad(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__3; lean_object* l_Lean_Elab_applyVisibility___at_Lean_Elab_Command_expandDeclId___spec__6(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_string_dec_eq(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__1; static lean_object* l___regBuiltin_Lean_Elab_Command_elabMutual_declRange__1___closed__4; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__20; -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualPreamble__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_addAuxDeclarationRanges___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Name_isPrefixOf(lean_object*, lean_object*); @@ -177,54 +177,50 @@ static lean_object* l___regBuiltin_Lean_Elab_Command_elabMutual_declRange__1___c static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_Command_checkValidCtorModifier___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabAttr_declRange__1___closed__4; +static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__2; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__2___closed__8; -lean_object* l_Lean_Elab_Command_withMacroExpansion___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_CollectLevelParams_main(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandInitialize_declRange__1___closed__6; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__6; lean_object* l_Lean_Elab_Command_checkValidInductiveModifier___at_Lean_Elab_Command_elabStructure___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__7; static lean_object* l_Lean_ensureNonAmbiguous___at_Lean_Elab_Command_elabAttr___spec__2___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_expandDeclNamespace_x3f(lean_object*, lean_object*, lean_object*); 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_Command_checkValidCtorModifier___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__1___closed__1; lean_object* l_Lean_Elab_Command_withoutCommandIncrementality___rarg(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_elabDeclaration___closed__6; static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__4; static lean_object* l___regBuiltin_Lean_Elab_Command_elabMutual__1___closed__2; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__48; static lean_object* l_Lean_Elab_Command_checkValidCtorModifier___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__1___lambda__2___closed__2; static lean_object* l___regBuiltin_Lean_Elab_Command_elabMutual_declRange__1___closed__7; -static lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___closed__1; +static lean_object* l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_declRange__1___closed__2; lean_object* l___private_Lean_Elab_InfoTree_Main_0__Lean_Elab_withSavedPartialInfoContext___at___private_Lean_Elab_PreDefinition_Basic_0__Lean_Elab_addNonRecAux___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_Command_expandMutualNamespace_declRange__1___closed__5; static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualElement__1___closed__1; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__31; size_t lean_usize_of_nat(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005_(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_elabMutual__2(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isInstanceDef___boxed(lean_object*); static size_t l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___closed__2; -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__8; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__3___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_throwUnknownConstant___at_Lean_Elab_Command_elabAttr___spec__5___closed__1; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabAttr___spec__1___closed__6; -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__4; static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualElement__1___closed__3; lean_object* l_Lean_Elab_Term_ensureNoUnassignedMVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__1; lean_object* lean_st_ref_take(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__9; -lean_object* l_liftExcept___at_Lean_Elab_liftMacroM___spec__1(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_expandNamespacedDeclaration___closed__6; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__3; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabAttr___spec__1___closed__1; extern lean_object* l_Lean_Elab_Command_commandElabAttribute; LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRanges___at_Lean_Elab_Command_elabAxiom___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualPreamble__1(lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); -lean_object* l_Lean_Elab_expandMacroImpl_x3f(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_ensureNonAmbiguous___at_Lean_Elab_Command_elabAttr___spec__2___closed__5; lean_object* l_Lean_Elab_getDeclarationSelectionRef(lean_object*); -lean_object* l_Lean_ResolveName_resolveNamespace(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabMutual_declRange__1___closed__1; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__13; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__8; @@ -234,12 +230,10 @@ static lean_object* l_Lean_Elab_Command_elabAttr___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandInitialize___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_Command_expandInitialize___lambda__1___closed__39; lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__24; uint8_t l_Lean_Elab_Modifiers_isProtected(lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualInductive(lean_object*); 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_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); 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_expandInitialize___lambda__1___closed__2; @@ -251,20 +245,19 @@ static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__5___closed__1 static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_setDeclIdName___closed__7; static lean_object* l_Lean_Elab_Command_elabMutual___closed__1; lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_getDefName_x3f(lean_object*); lean_object* l_Lean_Elab_Command_getRef(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_findCommonPrefix_findCommon(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__5___closed__2; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__5; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand___closed__4; -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__4___boxed(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_Name_components(lean_object*); lean_object* l_Lean_Syntax_getKind(lean_object*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__3___closed__1; static lean_object* l_Lean_Elab_Command_checkValidCtorModifier___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__1___lambda__3___closed__2; lean_object* l_Lean_MessageData_ofFormat(lean_object*); -lean_object* l_Lean_Elab_getBetterRef(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandInitialize__1___closed__2; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__36; static lean_object* l_Lean_Elab_Command_elabAxiom___lambda__5___closed__3; @@ -292,6 +285,7 @@ static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualElement_declRan LEAN_EXPORT lean_object* l_Lean_Elab_Command_findCommonPrefix_findCommon___boxed(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__3; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabAttr___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*); +static lean_object* l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5; static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_declRange__1___closed__4; lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); lean_object* l_Lean_Syntax_node3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -313,7 +307,6 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_Declara static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__42; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__1; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___closed__1; -lean_object* l_Lean_Elab_Command_getCurrMacroScope(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__16; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__3(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabDeclaration___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -323,7 +316,7 @@ lean_object* l_Lean_addMacroScope(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_addDeclarationRanges___at_Lean_Elab_Command_elabAxiom___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabAttr___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_extractMacroScopes(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__3; uint8_t lean_name_eq(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_setDeclIdName___closed__1; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__28; @@ -340,30 +333,28 @@ static lean_object* l___regBuiltin_Lean_Elab_Command_elabDeclaration_declRange__ static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_setDefName___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Command_expandInitialize_declRange__1___closed__1; static lean_object* l_panic___at_Lean_Elab_Command_elabAttr___spec__3___closed__1; -LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabDeclaration___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__12; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__19; -lean_object* l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); 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; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__4; uint8_t l_Lean_Syntax_matchesNull(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabAttr___spec__6___lambda__1(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_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Command_elabDeclaration__1___closed__4; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualNamespace___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Syntax_isIdent(lean_object*); static lean_object* l_Lean_Elab_Command_elabMutual___closed__2; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualElement___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__3___lambda__1(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_Declaration___hyg_7902____closed__6; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualElement__1(lean_object*); lean_object* lean_mk_syntax_ident(lean_object*); static lean_object* l_Lean_throwUnknownConstant___at_Lean_Elab_Command_elabAttr___spec__5___closed__3; -lean_object* l_Lean_Elab_Command_getScope___rarg(lean_object*, lean_object*); lean_object* l_Lean_TSyntax_getDocString(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandInitialize__1___closed__3; lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_throwStuckAtUniverseCnstr___spec__16(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_Command_expandNamespacedDeclaration_declRange__1___closed__4; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__9; extern lean_object* l_Std_Format_defWidth; static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_declRange__1___closed__5; lean_object* l_Lean_MacroScopesView_review(lean_object*); @@ -375,15 +366,12 @@ lean_object* l_Lean_Elab_realizeGlobalConstWithInfos(lean_object*, lean_object*, static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabClassInductive(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__4; -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__11; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabAttr___spec__6___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___regBuiltin_Lean_Elab_Command_expandInitialize_declRange__1(lean_object*); static lean_object* l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand___closed__5; lean_object* l_Array_append___rarg(lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_Elab_Command_expandDeclId___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); -uint8_t l_Lean_Environment_contains(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__3; lean_object* l_Lean_MessageData_ofExpr(lean_object*); static lean_object* l_Lean_ensureNonAmbiguous___at_Lean_Elab_Command_elabAttr___spec__2___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_splitMutualPreamble_loop(lean_object*, lean_object*); @@ -401,26 +389,24 @@ lean_object* l_Lean_Syntax_setArg(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Elab_Modifiers_isPrivate(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_setDefName(lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_addTermInfo_x27(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*); +static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__3; lean_object* l_Lean_FileMap_leanPosToLspPos(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__23; +static lean_object* l_Lean_Elab_Command_expandNamespacedDeclaration___closed__3; uint8_t l_Lean_Syntax_isToken(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_classInductiveSyntaxToView(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__2___closed__4; -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabDeclaration___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandInitialize_declRange__1___closed__7; LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand___boxed(lean_object*); lean_object* l_Lean_Elab_getOptDerivingClasses(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__3___lambda__3___closed__2; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualDef___spec__1(lean_object*, size_t, size_t); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__9; static lean_object* l_Lean_Elab_Command_checkValidCtorModifier___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__1___lambda__2___closed__1; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__38; static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__2; 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*); static lean_object* l_Lean_Elab_Command_elabClassInductive___closed__1; -static lean_object* l_Lean_Elab_Command_elabDeclaration___closed__8; LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_ensureValidNamespace(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabDeclaration(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_elabDeclaration__2(lean_object*); @@ -428,15 +414,16 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_Declara static lean_object* l_Lean_Elab_addDeclarationRanges___at_Lean_Elab_Command_elabAxiom___spec__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandMutualNamespace(lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandNamespacedDeclaration(lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__3; -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__5___closed__7; -lean_object* lean_environment_main_module(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabAxiom___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_Elab_Command_elabMutualDef(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__3___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualElement___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_expandNamespacedDeclaration___closed__4; static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__3; +static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__10; LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRanges___at_Lean_Elab_Command_elabAxiom___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabAxiom___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* l_Lean_Name_mkStr2(lean_object*, lean_object*); @@ -449,10 +436,7 @@ LEAN_EXPORT lean_object* l_Lean_addDeclarationRanges___at_Lean_Elab_Command_elab static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_setDeclIdName___closed__6; uint8_t l_Lean_isAttribute(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_checkValidCtorModifier___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_List_forM___at_Lean_Elab_Command_elabCommand___spec__8(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabMutual__1___closed__3; -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__13; -LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualNamespace___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_node1(lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabDeclaration__1___closed__3; @@ -461,9 +445,9 @@ static lean_object* l_Lean_Elab_Command_elabAxiom___lambda__4___closed__1; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__5; static lean_object* l_Lean_Elab_Command_expandMutualPreamble___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandMutualNamespace___lambda__1(lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__5; uint8_t l_Lean_Syntax_isNone(lean_object*); +static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__1; lean_object* lean_panic_fn(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__9; static lean_object* l_Lean_Elab_Command_elabDeclaration___closed__2; @@ -477,14 +461,14 @@ static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declR lean_object* l_Lean_Syntax_setInfo(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabDeclaration_declRange__1___closed__3; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabAttr___spec__4(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_ResolveName_resolveGlobalName(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Command_expandNamespacedDeclaration___closed__1; lean_object* l_Array_mkArray1___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabAttr___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* l_Lean_Elab_Command_liftCoreM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandInitialize___lambda__5(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_elabDeclaration___closed__7; static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__3___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_findCommonPrefix(lean_object*); +static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_docString__1___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Command_elabDeclaration_declRange__1___closed__1; lean_object* l_Lean_Elab_expandOptDeclSig(lean_object*); lean_object* l_Array_ofSubarray___rarg(lean_object*); @@ -496,20 +480,16 @@ static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__1 lean_object* l_List_toString___at_Lean_ensureNoOverload___spec__2(lean_object*); LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_Command_elabAttr___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabAttr_declRange__1___closed__3; -lean_object* l_List_reverse___rarg(lean_object*); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__11; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isInstanceDef___closed__2; static lean_object* l___regBuiltin_Lean_Elab_Command_elabDeclaration__1___closed__1; LEAN_EXPORT lean_object* l_Array_forInUnsafe_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*); -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__12; static lean_object* l___regBuiltin_Lean_Elab_Command_elabAttr__1___closed__5; static lean_object* l___regBuiltin_Lean_Elab_Command_elabAttr_declRange__1___closed__6; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_declRange__1___closed__6; static lean_object* l___regBuiltin_Lean_Elab_Command_elabDeclaration_declRange__1___closed__7; -static lean_object* l_Lean_Elab_Command_elabDeclaration___closed__5; size_t lean_usize_add(size_t, size_t); -static lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg___closed__2; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__8; lean_object* l_List_mapTR_loop___at_Lean_ensureNonAmbiguous___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandInitialize___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*); @@ -525,7 +505,8 @@ LEAN_EXPORT lean_object* l_Lean_throwUnknownConstant___at_Lean_Elab_Command_elab lean_object* lean_array_uget(lean_object*, size_t); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___closed__2; +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1(lean_object*); +static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__4; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand___closed__2; 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*); @@ -534,7 +515,6 @@ lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__5___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMutual(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_Lean_Elab_addMacroStack___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabDeclaration_declRange__1___closed__4; static lean_object* l_Lean_Elab_Command_checkValidCtorModifier___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__1___closed__2; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__15; @@ -550,7 +530,7 @@ static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_setDe LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabDeclaration___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__37; -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__5; +static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Command_findCommonPrefix_go(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_declRange__1(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__7; @@ -567,7 +547,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_ 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*); static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__33; 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*); -extern lean_object* l_Lean_Elab_unsupportedSyntaxExceptionId; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_setDeclIdName___closed__5; static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualElement_declRange__1___closed__2; uint8_t lean_usize_dec_lt(size_t, size_t); @@ -577,9 +556,10 @@ lean_object* l_Array_mkArray2___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1(lean_object*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Declaration_0__Lean_Elab_Command_inductiveSyntaxToView___spec__3___closed__3; static lean_object* l___regBuiltin_Lean_Elab_Command_expandInitialize_declRange__1___closed__5; +static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__1; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__2; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__21; -static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__2; +static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__5; lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandInitialize_declRange__1___closed__2; static lean_object* l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3; @@ -591,6 +571,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_ static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__1___closed__6; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_ensureValidNamespace___closed__2; static lean_object* l_Lean_Elab_Command_expandInitialize___lambda__2___closed__11; +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_Lean_Elab_Command_expandInitialize___lambda__1___closed__32; static lean_object* l_Lean_Elab_Command_elabAxiom___lambda__5___closed__10; @@ -600,9 +581,7 @@ lean_object* l_Lean_Elab_Command_elabStructure(lean_object*, lean_object*, lean_ 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_expandInitialize___lambda__2___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg(lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); -static lean_object* l_Lean_Elab_Command_elabDeclaration___closed__4; lean_object* l_Lean_MessageData_ofName(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__6; uint8_t l_Lean_Elab_Modifiers_isPartial(lean_object*); @@ -614,7 +593,6 @@ lean_object* l_Lean_addDecl(lean_object*, lean_object*, lean_object*, lean_objec static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__10; 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___regBuiltin_Lean_Elab_Command_elabMutual__1___closed__1; -lean_object* l_ReaderT_pure___at_Lean_Elab_liftMacroM___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__17; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand___closed__10; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand___closed__6; @@ -5372,851 +5350,471 @@ return x_17; } } } -LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabDeclaration___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +static lean_object* _init_l_Lean_Elab_Command_expandNamespacedDeclaration___closed__1() { _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; uint8_t x_11; -x_5 = l_Lean_Elab_Command_getRef(x_2, x_3, 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); -lean_dec(x_5); -x_8 = lean_ctor_get(x_2, 4); -lean_inc(x_8); -lean_inc(x_8); -x_9 = l_Lean_Elab_getBetterRef(x_6, x_8); -lean_dec(x_6); -x_10 = l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessageContextCommandElabM___spec__1(x_1, x_2, x_3, x_7); -x_11 = !lean_is_exclusive(x_10); -if (x_11 == 0) +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("null", 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2() { +_start: { -lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_12 = lean_ctor_get(x_10, 0); -x_13 = lean_ctor_get(x_10, 1); -x_14 = l_Lean_Elab_addMacroStack___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__1(x_12, x_8, x_2, x_3, x_13); +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Command_expandNamespacedDeclaration___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("namespace", 9); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Command_expandNamespacedDeclaration___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___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__1; +x_2 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__2; +x_3 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__3; +x_4 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__3; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("end", 3); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Command_expandNamespacedDeclaration___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___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__1; +x_2 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__2; +x_3 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__3; +x_4 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Command_expandNamespacedDeclaration(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +lean_inc(x_2); +lean_inc(x_1); +x_4 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_expandDeclNamespace_x3f(x_1, x_2, x_3); +if (lean_obj_tag(x_4) == 0) +{ +lean_object* x_5; +x_5 = lean_ctor_get(x_4, 0); +lean_inc(x_5); +if (lean_obj_tag(x_5) == 0) +{ +uint8_t x_6; lean_dec(x_2); -x_15 = !lean_is_exclusive(x_14); -if (x_15 == 0) +lean_dec(x_1); +x_6 = !lean_is_exclusive(x_4); +if (x_6 == 0) { -lean_object* x_16; -x_16 = lean_ctor_get(x_14, 0); -lean_ctor_set(x_10, 1, x_16); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set_tag(x_14, 1); -lean_ctor_set(x_14, 0, x_10); -return x_14; +lean_object* x_7; lean_object* x_8; +x_7 = lean_ctor_get(x_4, 0); +lean_dec(x_7); +x_8 = lean_box(1); +lean_ctor_set_tag(x_4, 1); +lean_ctor_set(x_4, 0, x_8); +return x_4; } else { -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_14, 0); -x_18 = lean_ctor_get(x_14, 1); -lean_inc(x_18); -lean_inc(x_17); -lean_dec(x_14); -lean_ctor_set(x_10, 1, x_17); -lean_ctor_set(x_10, 0, x_9); -x_19 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_19, 0, x_10); -lean_ctor_set(x_19, 1, x_18); -return x_19; +lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_9 = lean_ctor_get(x_4, 1); +lean_inc(x_9); +lean_dec(x_4); +x_10 = lean_box(1); +x_11 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_11, 0, x_10); +lean_ctor_set(x_11, 1, x_9); +return x_11; } } 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; -x_20 = lean_ctor_get(x_10, 0); -x_21 = lean_ctor_get(x_10, 1); +lean_object* x_12; uint8_t x_13; +x_12 = lean_ctor_get(x_5, 0); +lean_inc(x_12); +lean_dec(x_5); +x_13 = !lean_is_exclusive(x_4); +if (x_13 == 0) +{ +lean_object* x_14; uint8_t x_15; +x_14 = lean_ctor_get(x_4, 0); +lean_dec(x_14); +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; 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; 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_16 = lean_ctor_get(x_12, 0); +x_17 = lean_ctor_get(x_12, 1); +x_18 = lean_unsigned_to_nat(1u); +x_19 = l_Lean_Syntax_getArg(x_1, x_18); +lean_dec(x_1); +x_20 = lean_unsigned_to_nat(0u); +x_21 = l_Lean_Syntax_getArg(x_19, x_20); +lean_dec(x_19); +x_22 = 0; lean_inc(x_21); -lean_inc(x_20); -lean_dec(x_10); -x_22 = l_Lean_Elab_addMacroStack___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__1(x_20, x_8, x_2, x_3, x_21); +x_23 = l_Lean_mkIdentFrom(x_21, x_16, x_22); +x_24 = lean_ctor_get(x_2, 5); +lean_inc(x_24); lean_dec(x_2); -x_23 = lean_ctor_get(x_22, 0); +x_25 = l_Lean_replaceRef(x_21, x_24); +lean_dec(x_24); +lean_dec(x_21); +x_26 = l_Lean_SourceInfo_fromRef(x_25, x_22); +x_27 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__3; +lean_inc(x_26); +lean_ctor_set_tag(x_12, 2); +lean_ctor_set(x_12, 1, x_27); +lean_ctor_set(x_12, 0, x_26); +x_28 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__4; lean_inc(x_23); -x_24 = lean_ctor_get(x_22, 1); -lean_inc(x_24); -if (lean_is_exclusive(x_22)) { - lean_ctor_release(x_22, 0); - lean_ctor_release(x_22, 1); - x_25 = x_22; +lean_inc(x_26); +x_29 = l_Lean_Syntax_node2(x_26, x_28, x_12, x_23); +x_30 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5; +lean_inc(x_26); +x_31 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_31, 0, x_26); +lean_ctor_set(x_31, 1, x_30); +x_32 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; +lean_inc(x_26); +x_33 = l_Lean_Syntax_node1(x_26, x_32, x_23); +x_34 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__6; +lean_inc(x_26); +x_35 = l_Lean_Syntax_node2(x_26, x_34, x_31, x_33); +x_36 = l_Lean_Syntax_node3(x_26, x_32, x_29, x_17, x_35); +lean_ctor_set(x_4, 0, 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_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; +x_37 = lean_ctor_get(x_12, 0); +x_38 = lean_ctor_get(x_12, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_12); +x_39 = lean_unsigned_to_nat(1u); +x_40 = l_Lean_Syntax_getArg(x_1, x_39); +lean_dec(x_1); +x_41 = lean_unsigned_to_nat(0u); +x_42 = l_Lean_Syntax_getArg(x_40, x_41); +lean_dec(x_40); +x_43 = 0; +lean_inc(x_42); +x_44 = l_Lean_mkIdentFrom(x_42, x_37, x_43); +x_45 = lean_ctor_get(x_2, 5); +lean_inc(x_45); +lean_dec(x_2); +x_46 = l_Lean_replaceRef(x_42, x_45); +lean_dec(x_45); +lean_dec(x_42); +x_47 = l_Lean_SourceInfo_fromRef(x_46, x_43); +x_48 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__3; +lean_inc(x_47); +x_49 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_49, 0, x_47); +lean_ctor_set(x_49, 1, x_48); +x_50 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__4; +lean_inc(x_44); +lean_inc(x_47); +x_51 = l_Lean_Syntax_node2(x_47, x_50, x_49, x_44); +x_52 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5; +lean_inc(x_47); +x_53 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_53, 0, x_47); +lean_ctor_set(x_53, 1, x_52); +x_54 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; +lean_inc(x_47); +x_55 = l_Lean_Syntax_node1(x_47, x_54, x_44); +x_56 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__6; +lean_inc(x_47); +x_57 = l_Lean_Syntax_node2(x_47, x_56, x_53, x_55); +x_58 = l_Lean_Syntax_node3(x_47, x_54, x_51, x_38, x_57); +lean_ctor_set(x_4, 0, x_58); +return x_4; +} +} +else +{ +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; uint8_t 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; +x_59 = lean_ctor_get(x_4, 1); +lean_inc(x_59); +lean_dec(x_4); +x_60 = lean_ctor_get(x_12, 0); +lean_inc(x_60); +x_61 = lean_ctor_get(x_12, 1); +lean_inc(x_61); +if (lean_is_exclusive(x_12)) { + lean_ctor_release(x_12, 0); + lean_ctor_release(x_12, 1); + x_62 = x_12; } else { - lean_dec_ref(x_22); - x_25 = lean_box(0); -} -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_9); -lean_ctor_set(x_26, 1, x_23); -if (lean_is_scalar(x_25)) { - x_27 = lean_alloc_ctor(1, 2, 0); + lean_dec_ref(x_12); + x_62 = lean_box(0); +} +x_63 = lean_unsigned_to_nat(1u); +x_64 = l_Lean_Syntax_getArg(x_1, x_63); +lean_dec(x_1); +x_65 = lean_unsigned_to_nat(0u); +x_66 = l_Lean_Syntax_getArg(x_64, x_65); +lean_dec(x_64); +x_67 = 0; +lean_inc(x_66); +x_68 = l_Lean_mkIdentFrom(x_66, x_60, x_67); +x_69 = lean_ctor_get(x_2, 5); +lean_inc(x_69); +lean_dec(x_2); +x_70 = l_Lean_replaceRef(x_66, x_69); +lean_dec(x_69); +lean_dec(x_66); +x_71 = l_Lean_SourceInfo_fromRef(x_70, x_67); +x_72 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__3; +lean_inc(x_71); +if (lean_is_scalar(x_62)) { + x_73 = lean_alloc_ctor(2, 2, 0); } else { - x_27 = x_25; - lean_ctor_set_tag(x_27, 1); + x_73 = x_62; + lean_ctor_set_tag(x_73, 2); } -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_24); -return x_27; +lean_ctor_set(x_73, 0, x_71); +lean_ctor_set(x_73, 1, x_72); +x_74 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__4; +lean_inc(x_68); +lean_inc(x_71); +x_75 = l_Lean_Syntax_node2(x_71, x_74, x_73, x_68); +x_76 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5; +lean_inc(x_71); +x_77 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_77, 0, x_71); +lean_ctor_set(x_77, 1, x_76); +x_78 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; +lean_inc(x_71); +x_79 = l_Lean_Syntax_node1(x_71, x_78, x_68); +x_80 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__6; +lean_inc(x_71); +x_81 = l_Lean_Syntax_node2(x_71, x_80, x_77, x_79); +x_82 = l_Lean_Syntax_node3(x_71, x_78, x_75, x_61, 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_59); +return x_83; } } } -LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabDeclaration___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: +else { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; -x_6 = l_Lean_Elab_Command_getRef(x_3, x_4, x_5); -x_7 = lean_ctor_get(x_6, 0); -lean_inc(x_7); -x_8 = lean_ctor_get(x_6, 1); -lean_inc(x_8); -lean_dec(x_6); -x_9 = l_Lean_replaceRef(x_1, x_7); -lean_dec(x_7); +uint8_t x_84; +lean_dec(x_2); lean_dec(x_1); -x_10 = !lean_is_exclusive(x_3); -if (x_10 == 0) +x_84 = !lean_is_exclusive(x_4); +if (x_84 == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_3, 6); -lean_dec(x_11); -lean_ctor_set(x_3, 6, x_9); -x_12 = l_Lean_throwError___at_Lean_Elab_Command_elabDeclaration___spec__3(x_2, x_3, x_4, x_8); -lean_dec(x_4); -return x_12; +return x_4; } 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; uint8_t x_22; lean_object* x_23; lean_object* x_24; -x_13 = lean_ctor_get(x_3, 0); -x_14 = lean_ctor_get(x_3, 1); -x_15 = lean_ctor_get(x_3, 2); -x_16 = lean_ctor_get(x_3, 3); -x_17 = lean_ctor_get(x_3, 4); -x_18 = lean_ctor_get(x_3, 5); -x_19 = lean_ctor_get(x_3, 7); -x_20 = lean_ctor_get(x_3, 8); -x_21 = lean_ctor_get(x_3, 9); -x_22 = lean_ctor_get_uint8(x_3, sizeof(void*)*10); -lean_inc(x_21); -lean_inc(x_20); -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_dec(x_3); -x_23 = lean_alloc_ctor(0, 10, 1); -lean_ctor_set(x_23, 0, x_13); -lean_ctor_set(x_23, 1, x_14); -lean_ctor_set(x_23, 2, x_15); -lean_ctor_set(x_23, 3, x_16); -lean_ctor_set(x_23, 4, x_17); -lean_ctor_set(x_23, 5, x_18); -lean_ctor_set(x_23, 6, x_9); -lean_ctor_set(x_23, 7, x_19); -lean_ctor_set(x_23, 8, x_20); -lean_ctor_set(x_23, 9, x_21); -lean_ctor_set_uint8(x_23, sizeof(void*)*10, x_22); -x_24 = l_Lean_throwError___at_Lean_Elab_Command_elabDeclaration___spec__3(x_2, x_23, x_4, x_8); +lean_object* x_85; lean_object* x_86; lean_object* x_87; +x_85 = lean_ctor_get(x_4, 0); +x_86 = lean_ctor_get(x_4, 1); +lean_inc(x_86); +lean_inc(x_85); lean_dec(x_4); -return x_24; +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; +} } } } -static lean_object* _init_l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___closed__1() { +static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_maxRecDepthErrorMessage; -x_2 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("expandNamespacedDeclaration", 27); +return x_1; } } -static lean_object* _init_l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___closed__2() { +static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__2() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___closed__1; -x_2 = l_Lean_MessageData_ofFormat(x_1); -return x_2; +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_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__1; +x_2 = l_Lean_Elab_Command_elabAxiom___lambda__5___closed__5; +x_3 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__3; +x_4 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___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_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__3() { _start: { -lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_5 = l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___closed__2; -x_6 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_6, 0, x_1); -lean_ctor_set(x_6, 1, x_5); -x_7 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_7, 0, x_6); -lean_ctor_set(x_7, 1, x_4); -return x_7; +lean_object* x_1; +x_1 = l_Lean_Elab_macroAttribute; +return x_1; } } -static lean_object* _init_l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg___closed__1() { +static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__4() { _start: { lean_object* x_1; -x_1 = l_Lean_Elab_unsupportedSyntaxExceptionId; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Command_expandNamespacedDeclaration), 3, 0); return x_1; } } -static lean_object* _init_l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg___closed__2() { +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1(lean_object* x_1) { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg___closed__1; -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_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__3; +x_3 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__5; +x_4 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__2; +x_5 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__4; +x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); +return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg(lean_object* x_1) { +static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_docString__1___closed__1() { _start: { -lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg___closed__2; -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_from_bytes("Macro that expands a declaration with a complex name into an explicit `namespace` block.\nImplementing this step as a macro means that reuse checking is handled by `elabCommand`.\n ", 179); +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_docString__1(lean_object* x_1) { _start: { -lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg), 1, 0); -return x_3; +lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_2 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_docString__1___closed__1; +x_4 = l_Lean_addBuiltinDocString(x_2, x_3, x_1); +return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__1() { _start: { -lean_object* x_5; lean_object* x_6; -x_5 = l_Lean_Elab_expandMacroImpl_x3f(x_1, x_2, x_3, x_4); -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -if (lean_obj_tag(x_6) == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(196u); +x_2 = lean_unsigned_to_nat(0u); +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_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__2() { +_start: { -uint8_t x_7; -x_7 = !lean_is_exclusive(x_5); -if (x_7 == 0) -{ -lean_object* x_8; lean_object* x_9; -x_8 = lean_ctor_get(x_5, 0); -lean_dec(x_8); -x_9 = lean_box(0); -lean_ctor_set(x_5, 0, x_9); -return x_5; -} -else -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = lean_ctor_get(x_5, 1); -lean_inc(x_10); -lean_dec(x_5); -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; -} -} -else -{ -uint8_t x_13; -x_13 = !lean_is_exclusive(x_6); -if (x_13 == 0) -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_ctor_get(x_6, 0); -x_15 = lean_ctor_get(x_14, 1); -lean_inc(x_15); -lean_dec(x_14); -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_16; uint8_t x_17; -lean_free_object(x_6); -x_16 = lean_ctor_get(x_5, 1); -lean_inc(x_16); -lean_dec(x_5); -x_17 = !lean_is_exclusive(x_15); -if (x_17 == 0) -{ -lean_object* x_18; -x_18 = l_liftExcept___at_Lean_Elab_liftMacroM___spec__1(x_15, x_3, x_16); -lean_dec(x_15); -return x_18; -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_15, 0); -lean_inc(x_19); -lean_dec(x_15); -x_20 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_20, 0, x_19); -x_21 = l_liftExcept___at_Lean_Elab_liftMacroM___spec__1(x_20, x_3, x_16); -lean_dec(x_20); -return x_21; -} -} -else -{ -lean_object* x_22; uint8_t x_23; -x_22 = lean_ctor_get(x_5, 1); -lean_inc(x_22); -lean_dec(x_5); -x_23 = !lean_is_exclusive(x_15); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = lean_ctor_get(x_15, 0); -lean_ctor_set(x_6, 0, x_24); -lean_ctor_set(x_15, 0, x_6); -x_25 = l_liftExcept___at_Lean_Elab_liftMacroM___spec__1(x_15, x_3, x_22); -lean_dec(x_15); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_26 = lean_ctor_get(x_15, 0); -lean_inc(x_26); -lean_dec(x_15); -lean_ctor_set(x_6, 0, x_26); -x_27 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_27, 0, x_6); -x_28 = l_liftExcept___at_Lean_Elab_liftMacroM___spec__1(x_27, x_3, x_22); -lean_dec(x_27); -return x_28; -} -} -} -else -{ -lean_object* x_29; lean_object* x_30; -x_29 = lean_ctor_get(x_6, 0); -lean_inc(x_29); -lean_dec(x_6); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -lean_dec(x_29); -if (lean_obj_tag(x_30) == 0) -{ -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_5, 1); -lean_inc(x_31); -lean_dec(x_5); -x_32 = lean_ctor_get(x_30, 0); -lean_inc(x_32); -if (lean_is_exclusive(x_30)) { - lean_ctor_release(x_30, 0); - x_33 = x_30; -} else { - lean_dec_ref(x_30); - x_33 = lean_box(0); -} -if (lean_is_scalar(x_33)) { - x_34 = lean_alloc_ctor(0, 1, 0); -} else { - x_34 = x_33; -} -lean_ctor_set(x_34, 0, x_32); -x_35 = l_liftExcept___at_Lean_Elab_liftMacroM___spec__1(x_34, x_3, x_31); -lean_dec(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; -x_36 = lean_ctor_get(x_5, 1); -lean_inc(x_36); -lean_dec(x_5); -x_37 = lean_ctor_get(x_30, 0); -lean_inc(x_37); -if (lean_is_exclusive(x_30)) { - lean_ctor_release(x_30, 0); - x_38 = x_30; -} else { - lean_dec_ref(x_30); - x_38 = lean_box(0); -} -x_39 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_39, 0, x_37); -if (lean_is_scalar(x_38)) { - x_40 = lean_alloc_ctor(1, 1, 0); -} else { - x_40 = x_38; -} -lean_ctor_set(x_40, 0, x_39); -x_41 = l_liftExcept___at_Lean_Elab_liftMacroM___spec__1(x_40, x_3, x_36); -lean_dec(x_40); -return x_41; -} -} -} +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(203u); +x_2 = lean_unsigned_to_nat(34u); +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_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__3() { _start: { -uint8_t x_5; lean_object* x_6; lean_object* x_7; -x_5 = l_Lean_Environment_contains(x_1, x_2); -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; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__1; +x_2 = lean_unsigned_to_nat(0u); +x_3 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__2; +x_4 = lean_unsigned_to_nat(34u); +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_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___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) { +static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__4() { _start: { -lean_object* x_7; lean_object* x_8; -x_7 = l_Lean_ResolveName_resolveNamespace(x_1, x_2, x_3, x_4); -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_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(196u); +x_2 = lean_unsigned_to_nat(4u); +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_liftMacroM___at_Lean_Elab_Command_elabDeclaration___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) { +static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__5() { _start: { -lean_object* x_7; lean_object* x_8; -x_7 = l_Lean_ResolveName_resolveGlobalName(x_1, x_2, x_3, x_4); -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_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(196u); +x_2 = lean_unsigned_to_nat(31u); +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_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__6() { _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; 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; uint8_t x_35; -x_5 = lean_st_ref_get(x_3, 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); -lean_dec(x_5); -x_8 = lean_ctor_get(x_6, 0); -lean_inc(x_8); -lean_dec(x_6); -x_9 = l_Lean_Elab_Command_getScope___rarg(x_3, 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_ctor_get(x_10, 2); -lean_inc(x_12); -lean_dec(x_10); -x_13 = l_Lean_Elab_Command_getScope___rarg(x_3, x_11); -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, 3); -lean_inc(x_16); -lean_dec(x_14); -lean_inc(x_8); -x_17 = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__1___boxed), 4, 1); -lean_closure_set(x_17, 0, x_8); -lean_inc(x_12); -x_18 = lean_alloc_closure((void*)(l_ReaderT_pure___at_Lean_Elab_liftMacroM___spec__2___rarg___boxed), 3, 1); -lean_closure_set(x_18, 0, x_12); -lean_inc(x_8); -x_19 = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__2___boxed), 4, 1); -lean_closure_set(x_19, 0, x_8); -lean_inc(x_16); -lean_inc(x_12); -lean_inc(x_8); -x_20 = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__3___boxed), 6, 3); -lean_closure_set(x_20, 0, x_8); -lean_closure_set(x_20, 1, x_12); -lean_closure_set(x_20, 2, x_16); -lean_inc(x_8); -x_21 = lean_alloc_closure((void*)(l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__4___boxed), 6, 3); -lean_closure_set(x_21, 0, x_8); -lean_closure_set(x_21, 1, x_12); -lean_closure_set(x_21, 2, x_16); -x_22 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_22, 0, x_17); -lean_ctor_set(x_22, 1, x_18); -lean_ctor_set(x_22, 2, x_19); -lean_ctor_set(x_22, 3, x_20); -lean_ctor_set(x_22, 4, x_21); -x_23 = l_Lean_Elab_Command_getRef(x_2, 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 = l_Lean_Elab_Command_getCurrMacroScope(x_2, x_3, 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 = lean_ctor_get(x_2, 2); -lean_inc(x_29); -x_30 = lean_st_ref_get(x_3, x_28); -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 = lean_ctor_get(x_31, 4); -lean_inc(x_33); -lean_dec(x_31); -x_34 = lean_st_ref_get(x_3, x_32); -x_35 = !lean_is_exclusive(x_34); -if (x_35 == 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; -x_36 = lean_ctor_get(x_34, 0); -x_37 = lean_ctor_get(x_34, 1); -x_38 = lean_ctor_get(x_36, 3); -lean_inc(x_38); -lean_dec(x_36); -x_39 = lean_environment_main_module(x_8); -x_40 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_40, 0, x_22); -lean_ctor_set(x_40, 1, x_39); -lean_ctor_set(x_40, 2, x_27); -lean_ctor_set(x_40, 3, x_29); -lean_ctor_set(x_40, 4, x_33); -lean_ctor_set(x_40, 5, x_24); -x_41 = lean_box(0); -lean_ctor_set(x_34, 1, x_41); -lean_ctor_set(x_34, 0, x_38); -x_42 = lean_apply_2(x_1, x_40, x_34); -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; lean_object* x_48; uint8_t x_49; -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_ctor_get(x_44, 0); -lean_inc(x_45); -x_46 = lean_st_ref_take(x_3, x_37); -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_is_exclusive(x_47); -if (x_49 == 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; -x_50 = lean_ctor_get(x_47, 3); -lean_dec(x_50); -lean_ctor_set(x_47, 3, x_45); -x_51 = lean_st_ref_set(x_3, x_47, x_48); -x_52 = lean_ctor_get(x_51, 1); -lean_inc(x_52); -lean_dec(x_51); -x_53 = lean_ctor_get(x_44, 1); -lean_inc(x_53); -lean_dec(x_44); -x_54 = l_List_reverse___rarg(x_53); -x_55 = l_List_forM___at_Lean_Elab_Command_elabCommand___spec__8(x_54, x_2, x_3, x_52); -lean_dec(x_3); -lean_dec(x_2); -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_43); -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_43); -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; -x_60 = lean_ctor_get(x_47, 0); -x_61 = lean_ctor_get(x_47, 1); -x_62 = lean_ctor_get(x_47, 2); -x_63 = lean_ctor_get(x_47, 4); -x_64 = lean_ctor_get(x_47, 5); -x_65 = lean_ctor_get(x_47, 6); -x_66 = lean_ctor_get(x_47, 7); -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_47); -x_67 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_67, 0, x_60); -lean_ctor_set(x_67, 1, x_61); -lean_ctor_set(x_67, 2, x_62); -lean_ctor_set(x_67, 3, x_45); -lean_ctor_set(x_67, 4, x_63); -lean_ctor_set(x_67, 5, x_64); -lean_ctor_set(x_67, 6, x_65); -lean_ctor_set(x_67, 7, x_66); -x_68 = lean_st_ref_set(x_3, x_67, x_48); -x_69 = lean_ctor_get(x_68, 1); -lean_inc(x_69); -lean_dec(x_68); -x_70 = lean_ctor_get(x_44, 1); -lean_inc(x_70); -lean_dec(x_44); -x_71 = l_List_reverse___rarg(x_70); -x_72 = l_List_forM___at_Lean_Elab_Command_elabCommand___spec__8(x_71, x_2, x_3, x_69); -lean_dec(x_3); -lean_dec(x_2); -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); -} -if (lean_is_scalar(x_74)) { - x_75 = lean_alloc_ctor(0, 2, 0); -} else { - x_75 = x_74; -} -lean_ctor_set(x_75, 0, x_43); -lean_ctor_set(x_75, 1, x_73); -return x_75; -} -} -else -{ -lean_object* x_76; -x_76 = lean_ctor_get(x_42, 0); -lean_inc(x_76); -lean_dec(x_42); -if (lean_obj_tag(x_76) == 0) -{ -lean_object* x_77; lean_object* x_78; lean_object* x_79; uint8_t x_80; -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_Lean_maxRecDepthErrorMessage; -x_80 = lean_string_dec_eq(x_78, x_79); -if (x_80 == 0) -{ -lean_object* x_81; lean_object* x_82; lean_object* x_83; -x_81 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_81, 0, x_78); -x_82 = l_Lean_MessageData_ofFormat(x_81); -x_83 = l_Lean_throwErrorAt___at_Lean_Elab_Command_elabDeclaration___spec__2(x_77, x_82, x_2, x_3, x_37); -return x_83; -} -else -{ -lean_object* x_84; -lean_dec(x_78); -x_84 = l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4(x_77, x_2, x_3, x_37); -lean_dec(x_3); -lean_dec(x_2); -return x_84; -} -} -else -{ -lean_object* x_85; -lean_dec(x_3); -lean_dec(x_2); -x_85 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg(x_37); -return x_85; -} -} -} -else -{ -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 = lean_ctor_get(x_34, 0); -x_87 = lean_ctor_get(x_34, 1); -lean_inc(x_87); -lean_inc(x_86); -lean_dec(x_34); -x_88 = lean_ctor_get(x_86, 3); -lean_inc(x_88); -lean_dec(x_86); -x_89 = lean_environment_main_module(x_8); -x_90 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_90, 0, x_22); -lean_ctor_set(x_90, 1, x_89); -lean_ctor_set(x_90, 2, x_27); -lean_ctor_set(x_90, 3, x_29); -lean_ctor_set(x_90, 4, x_33); -lean_ctor_set(x_90, 5, x_24); -x_91 = lean_box(0); -x_92 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_92, 0, x_88); -lean_ctor_set(x_92, 1, x_91); -x_93 = lean_apply_2(x_1, x_90, x_92); -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; 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_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_95, 0); -lean_inc(x_96); -x_97 = lean_st_ref_take(x_3, x_87); -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); -x_100 = lean_ctor_get(x_98, 0); -lean_inc(x_100); -x_101 = lean_ctor_get(x_98, 1); -lean_inc(x_101); -x_102 = lean_ctor_get(x_98, 2); -lean_inc(x_102); -x_103 = lean_ctor_get(x_98, 4); -lean_inc(x_103); -x_104 = lean_ctor_get(x_98, 5); -lean_inc(x_104); -x_105 = lean_ctor_get(x_98, 6); -lean_inc(x_105); -x_106 = lean_ctor_get(x_98, 7); -lean_inc(x_106); -if (lean_is_exclusive(x_98)) { - lean_ctor_release(x_98, 0); - lean_ctor_release(x_98, 1); - lean_ctor_release(x_98, 2); - lean_ctor_release(x_98, 3); - lean_ctor_release(x_98, 4); - lean_ctor_release(x_98, 5); - lean_ctor_release(x_98, 6); - lean_ctor_release(x_98, 7); - x_107 = x_98; -} else { - lean_dec_ref(x_98); - x_107 = lean_box(0); -} -if (lean_is_scalar(x_107)) { - x_108 = lean_alloc_ctor(0, 8, 0); -} else { - x_108 = x_107; -} -lean_ctor_set(x_108, 0, x_100); -lean_ctor_set(x_108, 1, x_101); -lean_ctor_set(x_108, 2, x_102); -lean_ctor_set(x_108, 3, x_96); -lean_ctor_set(x_108, 4, x_103); -lean_ctor_set(x_108, 5, x_104); -lean_ctor_set(x_108, 6, x_105); -lean_ctor_set(x_108, 7, x_106); -x_109 = lean_st_ref_set(x_3, x_108, x_99); -x_110 = lean_ctor_get(x_109, 1); -lean_inc(x_110); -lean_dec(x_109); -x_111 = lean_ctor_get(x_95, 1); -lean_inc(x_111); -lean_dec(x_95); -x_112 = l_List_reverse___rarg(x_111); -x_113 = l_List_forM___at_Lean_Elab_Command_elabCommand___spec__8(x_112, x_2, x_3, x_110); -lean_dec(x_3); -lean_dec(x_2); -x_114 = lean_ctor_get(x_113, 1); -lean_inc(x_114); -if (lean_is_exclusive(x_113)) { - lean_ctor_release(x_113, 0); - lean_ctor_release(x_113, 1); - x_115 = x_113; -} else { - lean_dec_ref(x_113); - x_115 = lean_box(0); -} -if (lean_is_scalar(x_115)) { - x_116 = lean_alloc_ctor(0, 2, 0); -} else { - x_116 = x_115; -} -lean_ctor_set(x_116, 0, x_94); -lean_ctor_set(x_116, 1, x_114); -return x_116; -} -else -{ -lean_object* x_117; -x_117 = lean_ctor_get(x_93, 0); -lean_inc(x_117); -lean_dec(x_93); -if (lean_obj_tag(x_117) == 0) -{ -lean_object* x_118; lean_object* x_119; lean_object* x_120; uint8_t x_121; -x_118 = lean_ctor_get(x_117, 0); -lean_inc(x_118); -x_119 = lean_ctor_get(x_117, 1); -lean_inc(x_119); -lean_dec(x_117); -x_120 = l_Lean_maxRecDepthErrorMessage; -x_121 = lean_string_dec_eq(x_119, x_120); -if (x_121 == 0) -{ -lean_object* x_122; lean_object* x_123; lean_object* x_124; -x_122 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_122, 0, x_119); -x_123 = l_Lean_MessageData_ofFormat(x_122); -x_124 = l_Lean_throwErrorAt___at_Lean_Elab_Command_elabDeclaration___spec__2(x_118, x_123, x_2, x_3, x_87); -return x_124; -} -else -{ -lean_object* x_125; -lean_dec(x_119); -x_125 = l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4(x_118, x_2, x_3, x_87); -lean_dec(x_3); -lean_dec(x_2); -return x_125; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__4; +x_2 = lean_unsigned_to_nat(4u); +x_3 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__5; +x_4 = lean_unsigned_to_nat(31u); +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; } } -else +static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__7() { +_start: { -lean_object* x_126; -lean_dec(x_3); -lean_dec(x_2); -x_126 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg(x_87); -return x_126; -} +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__3; +x_2 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__6; +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___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_2 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__7; +x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); +return x_4; } } LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabDeclaration___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { @@ -6378,482 +5976,164 @@ uint8_t x_10; lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_10 = !lean_is_exclusive(x_6); -if (x_10 == 0) -{ -return x_6; -} -else -{ -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; -} -} -} -} -static lean_object* _init_l_Lean_Elab_Command_elabDeclaration___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("unexpected declaration", 22); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Command_elabDeclaration___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Command_elabDeclaration___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_Command_elabDeclaration___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Command_elabDeclaration___closed__2; -x_2 = lean_alloc_closure((void*)(l_Lean_throwError___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__1___boxed), 4, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_Command_elabDeclaration___closed__4() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("null", 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Command_elabDeclaration___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Command_elabDeclaration___closed__4; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Elab_Command_elabDeclaration___closed__6() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("namespace", 9); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Command_elabDeclaration___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___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__1; -x_2 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__2; -x_3 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__3; -x_4 = l_Lean_Elab_Command_elabDeclaration___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_Elab_Command_elabDeclaration___closed__8() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("end", 3); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Command_elabDeclaration___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___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__1; -x_2 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__2; -x_3 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__3; -x_4 = l_Lean_Elab_Command_elabDeclaration___closed__8; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabDeclaration(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_inc(x_1); -x_5 = lean_alloc_closure((void*)(l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_expandDeclNamespace_x3f), 3, 1); -lean_closure_set(x_5, 0, x_1); -lean_inc(x_3); -lean_inc(x_2); -x_6 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1(x_5, x_2, x_3, x_4); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_7; -x_7 = lean_ctor_get(x_6, 0); -lean_inc(x_7); -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_6, 1); -lean_inc(x_8); -lean_dec(x_6); -x_9 = lean_unsigned_to_nat(1u); -x_10 = l_Lean_Syntax_getArg(x_1, x_9); -lean_inc(x_10); -x_11 = l_Lean_Syntax_getKind(x_10); -lean_inc(x_10); -x_12 = l_Lean_Elab_Command_isDefLike(x_10); -if (x_12 == 0) -{ -lean_object* x_13; uint8_t x_14; -x_13 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__15; -x_14 = lean_name_eq(x_11, x_13); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__17; -x_16 = lean_name_eq(x_11, x_15); -if (x_16 == 0) -{ -lean_object* x_17; uint8_t x_18; -x_17 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__19; -x_18 = lean_name_eq(x_11, x_17); -if (x_18 == 0) -{ -lean_object* x_19; uint8_t x_20; -x_19 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__21; -x_20 = lean_name_eq(x_11, x_19); -lean_dec(x_11); -if (x_20 == 0) -{ -uint8_t x_21; lean_object* x_22; lean_object* x_23; -lean_dec(x_10); -lean_dec(x_1); -x_21 = 1; -x_22 = l_Lean_Elab_Command_elabDeclaration___closed__3; -x_23 = l_Lean_Elab_Command_withoutCommandIncrementality___rarg(x_21, x_22, x_2, x_3, x_8); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; -x_24 = lean_unsigned_to_nat(0u); -x_25 = l_Lean_Syntax_getArg(x_1, x_24); -lean_dec(x_1); -x_26 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabDeclaration___lambda__1), 5, 2); -lean_closure_set(x_26, 0, x_25); -lean_closure_set(x_26, 1, x_10); -x_27 = 1; -x_28 = l_Lean_Elab_Command_withoutCommandIncrementality___rarg(x_27, x_26, x_2, x_3, x_8); -return x_28; -} -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; lean_object* x_33; -lean_dec(x_11); -x_29 = lean_unsigned_to_nat(0u); -x_30 = l_Lean_Syntax_getArg(x_1, x_29); -lean_dec(x_1); -x_31 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabDeclaration___lambda__2), 5, 2); -lean_closure_set(x_31, 0, x_30); -lean_closure_set(x_31, 1, x_10); -x_32 = 1; -x_33 = l_Lean_Elab_Command_withoutCommandIncrementality___rarg(x_32, x_31, x_2, x_3, x_8); -return x_33; -} -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; lean_object* x_38; -lean_dec(x_11); -x_34 = lean_unsigned_to_nat(0u); -x_35 = l_Lean_Syntax_getArg(x_1, x_34); -lean_dec(x_1); -x_36 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabDeclaration___lambda__3), 5, 2); -lean_closure_set(x_36, 0, x_35); -lean_closure_set(x_36, 1, x_10); -x_37 = 1; -x_38 = l_Lean_Elab_Command_withoutCommandIncrementality___rarg(x_37, x_36, x_2, x_3, x_8); -return x_38; -} -} -else -{ -lean_object* x_39; lean_object* x_40; lean_object* x_41; uint8_t x_42; lean_object* x_43; -lean_dec(x_11); -x_39 = lean_unsigned_to_nat(0u); -x_40 = l_Lean_Syntax_getArg(x_1, x_39); -lean_dec(x_1); -x_41 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabDeclaration___lambda__4), 5, 2); -lean_closure_set(x_41, 0, x_40); -lean_closure_set(x_41, 1, x_10); -x_42 = 1; -x_43 = l_Lean_Elab_Command_withoutCommandIncrementality___rarg(x_42, x_41, x_2, x_3, x_8); -return x_43; -} -} -else -{ -lean_object* x_44; lean_object* x_45; lean_object* x_46; -lean_dec(x_11); -lean_dec(x_10); -x_44 = l_Lean_Elab_Command_elabInductive___closed__1; -x_45 = lean_array_push(x_44, x_1); -x_46 = l_Lean_Elab_Command_elabMutualDef(x_45, x_2, x_3, x_8); -return x_46; -} -} -else -{ -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; uint8_t x_58; -x_47 = lean_ctor_get(x_7, 0); -lean_inc(x_47); -lean_dec(x_7); -x_48 = lean_ctor_get(x_6, 1); -lean_inc(x_48); -lean_dec(x_6); -x_49 = lean_ctor_get(x_47, 0); -lean_inc(x_49); -x_50 = lean_ctor_get(x_47, 1); -lean_inc(x_50); -lean_dec(x_47); -x_51 = 0; -lean_inc(x_1); -x_52 = l_Lean_mkIdentFrom(x_1, x_49, x_51); -x_53 = l_Lean_Elab_Command_getRef(x_2, x_3, x_48); -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_SourceInfo_fromRef(x_54, x_51); -x_57 = l_Lean_Elab_Command_getCurrMacroScope(x_2, x_3, x_55); -x_58 = !lean_is_exclusive(x_57); -if (x_58 == 0) -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; uint8_t x_62; -x_59 = lean_ctor_get(x_57, 1); -x_60 = lean_ctor_get(x_57, 0); -lean_dec(x_60); -x_61 = l_Lean_Elab_Command_getMainModule___rarg(x_3, x_59); -x_62 = !lean_is_exclusive(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_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_63 = lean_ctor_get(x_61, 1); -x_64 = lean_ctor_get(x_61, 0); -lean_dec(x_64); -x_65 = l_Lean_Elab_Command_elabDeclaration___closed__6; -lean_inc(x_56); -lean_ctor_set_tag(x_61, 2); -lean_ctor_set(x_61, 1, x_65); -lean_ctor_set(x_61, 0, x_56); -x_66 = l_Lean_Elab_Command_elabDeclaration___closed__7; -lean_inc(x_52); -lean_inc(x_56); -x_67 = l_Lean_Syntax_node2(x_56, x_66, x_61, x_52); -x_68 = l_Lean_Elab_Command_elabDeclaration___closed__8; -lean_inc(x_56); -lean_ctor_set_tag(x_57, 2); -lean_ctor_set(x_57, 1, x_68); -lean_ctor_set(x_57, 0, x_56); -x_69 = l_Lean_Elab_Command_elabDeclaration___closed__5; -lean_inc(x_56); -x_70 = l_Lean_Syntax_node1(x_56, x_69, x_52); -x_71 = l_Lean_Elab_Command_elabDeclaration___closed__9; -lean_inc(x_56); -x_72 = l_Lean_Syntax_node2(x_56, x_71, x_57, x_70); -x_73 = l_Lean_Syntax_node3(x_56, x_69, x_67, x_50, x_72); -lean_inc(x_73); -x_74 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand), 4, 1); -lean_closure_set(x_74, 0, x_73); -x_75 = l_Lean_Elab_Command_withMacroExpansion___rarg(x_1, x_73, x_74, x_2, x_3, x_63); -return x_75; -} -else -{ -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; -x_76 = lean_ctor_get(x_61, 1); -lean_inc(x_76); -lean_dec(x_61); -x_77 = l_Lean_Elab_Command_elabDeclaration___closed__6; -lean_inc(x_56); -x_78 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_78, 0, x_56); -lean_ctor_set(x_78, 1, x_77); -x_79 = l_Lean_Elab_Command_elabDeclaration___closed__7; -lean_inc(x_52); -lean_inc(x_56); -x_80 = l_Lean_Syntax_node2(x_56, x_79, x_78, x_52); -x_81 = l_Lean_Elab_Command_elabDeclaration___closed__8; -lean_inc(x_56); -lean_ctor_set_tag(x_57, 2); -lean_ctor_set(x_57, 1, x_81); -lean_ctor_set(x_57, 0, x_56); -x_82 = l_Lean_Elab_Command_elabDeclaration___closed__5; -lean_inc(x_56); -x_83 = l_Lean_Syntax_node1(x_56, x_82, x_52); -x_84 = l_Lean_Elab_Command_elabDeclaration___closed__9; -lean_inc(x_56); -x_85 = l_Lean_Syntax_node2(x_56, x_84, x_57, x_83); -x_86 = l_Lean_Syntax_node3(x_56, x_82, x_80, x_50, x_85); -lean_inc(x_86); -x_87 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand), 4, 1); -lean_closure_set(x_87, 0, x_86); -x_88 = l_Lean_Elab_Command_withMacroExpansion___rarg(x_1, x_86, x_87, x_2, x_3, x_76); -return x_88; -} -} -else -{ -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_89 = lean_ctor_get(x_57, 1); -lean_inc(x_89); -lean_dec(x_57); -x_90 = l_Lean_Elab_Command_getMainModule___rarg(x_3, x_89); -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); -} -x_93 = l_Lean_Elab_Command_elabDeclaration___closed__6; -lean_inc(x_56); -if (lean_is_scalar(x_92)) { - x_94 = lean_alloc_ctor(2, 2, 0); -} else { - x_94 = x_92; - lean_ctor_set_tag(x_94, 2); -} -lean_ctor_set(x_94, 0, x_56); -lean_ctor_set(x_94, 1, x_93); -x_95 = l_Lean_Elab_Command_elabDeclaration___closed__7; -lean_inc(x_52); -lean_inc(x_56); -x_96 = l_Lean_Syntax_node2(x_56, x_95, x_94, x_52); -x_97 = l_Lean_Elab_Command_elabDeclaration___closed__8; -lean_inc(x_56); -x_98 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_98, 0, x_56); -lean_ctor_set(x_98, 1, x_97); -x_99 = l_Lean_Elab_Command_elabDeclaration___closed__5; -lean_inc(x_56); -x_100 = l_Lean_Syntax_node1(x_56, x_99, x_52); -x_101 = l_Lean_Elab_Command_elabDeclaration___closed__9; -lean_inc(x_56); -x_102 = l_Lean_Syntax_node2(x_56, x_101, x_98, x_100); -x_103 = l_Lean_Syntax_node3(x_56, x_99, x_96, x_50, x_102); -lean_inc(x_103); -x_104 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabCommand), 4, 1); -lean_closure_set(x_104, 0, x_103); -x_105 = l_Lean_Elab_Command_withMacroExpansion___rarg(x_1, x_103, x_104, x_2, x_3, x_91); -return x_105; -} -} -} -else -{ -uint8_t x_106; -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_106 = !lean_is_exclusive(x_6); -if (x_106 == 0) +x_10 = !lean_is_exclusive(x_6); +if (x_10 == 0) { return x_6; } else { -lean_object* x_107; lean_object* x_108; lean_object* x_109; -x_107 = lean_ctor_get(x_6, 0); -x_108 = lean_ctor_get(x_6, 1); -lean_inc(x_108); -lean_inc(x_107); +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_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_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; } } } } -LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabDeclaration___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +static lean_object* _init_l_Lean_Elab_Command_elabDeclaration___closed__1() { _start: { -lean_object* x_5; -x_5 = l_Lean_throwError___at_Lean_Elab_Command_elabDeclaration___spec__3(x_1, x_2, x_3, x_4); -lean_dec(x_3); -return x_5; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("unexpected declaration", 22); +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +static lean_object* _init_l_Lean_Elab_Command_elabDeclaration___closed__2() { _start: { -lean_object* x_5; -x_5 = l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4(x_1, x_2, x_3, x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_5; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_Command_elabDeclaration___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___boxed(lean_object* x_1, lean_object* x_2) { +static lean_object* _init_l_Lean_Elab_Command_elabDeclaration___closed__3() { _start: { -lean_object* x_3; -x_3 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5(x_1, x_2); -lean_dec(x_2); -lean_dec(x_1); -return x_3; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_Command_elabDeclaration___closed__2; +x_2 = lean_alloc_closure((void*)(l_Lean_throwError___at___private_Lean_Elab_Command_0__Lean_Elab_Command_elabCommandUsing___spec__1___boxed), 4, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___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_Elab_Command_elabDeclaration(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_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__1(x_1, x_2, x_3, x_4); -lean_dec(x_3); -return x_5; +lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; +x_5 = lean_unsigned_to_nat(1u); +x_6 = l_Lean_Syntax_getArg(x_1, x_5); +lean_inc(x_6); +x_7 = l_Lean_Syntax_getKind(x_6); +lean_inc(x_6); +x_8 = l_Lean_Elab_Command_isDefLike(x_6); +if (x_8 == 0) +{ +lean_object* x_9; uint8_t x_10; +x_9 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__15; +x_10 = lean_name_eq(x_7, x_9); +if (x_10 == 0) +{ +lean_object* x_11; uint8_t x_12; +x_11 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__17; +x_12 = lean_name_eq(x_7, x_11); +if (x_12 == 0) +{ +lean_object* x_13; uint8_t x_14; +x_13 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__19; +x_14 = lean_name_eq(x_7, x_13); +if (x_14 == 0) +{ +lean_object* x_15; uint8_t x_16; +x_15 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__21; +x_16 = lean_name_eq(x_7, x_15); +lean_dec(x_7); +if (x_16 == 0) +{ +uint8_t x_17; lean_object* x_18; lean_object* x_19; +lean_dec(x_6); +lean_dec(x_1); +x_17 = 1; +x_18 = l_Lean_Elab_Command_elabDeclaration___closed__3; +x_19 = l_Lean_Elab_Command_withoutCommandIncrementality___rarg(x_17, x_18, x_2, x_3, x_4); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_object* x_24; +x_20 = lean_unsigned_to_nat(0u); +x_21 = l_Lean_Syntax_getArg(x_1, x_20); +lean_dec(x_1); +x_22 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabDeclaration___lambda__1), 5, 2); +lean_closure_set(x_22, 0, x_21); +lean_closure_set(x_22, 1, x_6); +x_23 = 1; +x_24 = l_Lean_Elab_Command_withoutCommandIncrementality___rarg(x_23, x_22, x_2, x_3, x_4); +return x_24; } } -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: +else { -lean_object* x_5; -x_5 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__2(x_1, x_2, x_3, x_4); -lean_dec(x_3); -return x_5; +lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; +lean_dec(x_7); +x_25 = lean_unsigned_to_nat(0u); +x_26 = l_Lean_Syntax_getArg(x_1, x_25); +lean_dec(x_1); +x_27 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabDeclaration___lambda__2), 5, 2); +lean_closure_set(x_27, 0, x_26); +lean_closure_set(x_27, 1, x_6); +x_28 = 1; +x_29 = l_Lean_Elab_Command_withoutCommandIncrementality___rarg(x_28, x_27, x_2, x_3, x_4); +return x_29; } } -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___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) { -_start: +else { -lean_object* x_7; -x_7 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_5); -return x_7; +lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; lean_object* x_34; +lean_dec(x_7); +x_30 = lean_unsigned_to_nat(0u); +x_31 = l_Lean_Syntax_getArg(x_1, x_30); +lean_dec(x_1); +x_32 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabDeclaration___lambda__3), 5, 2); +lean_closure_set(x_32, 0, x_31); +lean_closure_set(x_32, 1, x_6); +x_33 = 1; +x_34 = l_Lean_Elab_Command_withoutCommandIncrementality___rarg(x_33, x_32, x_2, x_3, x_4); +return x_34; } } -LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___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) { -_start: +else { -lean_object* x_7; -x_7 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabDeclaration___spec__1___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_5); -return x_7; +lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; lean_object* x_39; +lean_dec(x_7); +x_35 = lean_unsigned_to_nat(0u); +x_36 = l_Lean_Syntax_getArg(x_1, x_35); +lean_dec(x_1); +x_37 = lean_alloc_closure((void*)(l_Lean_Elab_Command_elabDeclaration___lambda__4), 5, 2); +lean_closure_set(x_37, 0, x_36); +lean_closure_set(x_37, 1, x_6); +x_38 = 1; +x_39 = l_Lean_Elab_Command_withoutCommandIncrementality___rarg(x_38, x_37, x_2, x_3, x_4); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_dec(x_7); +lean_dec(x_6); +x_40 = l_Lean_Elab_Command_elabInductive___closed__1; +x_41 = lean_array_push(x_40, x_1); +x_42 = l_Lean_Elab_Command_elabMutualDef(x_41, x_2, x_3, x_4); +return x_42; +} } } static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabDeclaration__1___closed__1() { @@ -6908,7 +6188,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabDeclaration_declR _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(192u); +x_1 = lean_unsigned_to_nat(206u); x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -6920,8 +6200,8 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabDeclaration_declR _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(218u); -x_2 = lean_unsigned_to_nat(43u); +x_1 = lean_unsigned_to_nat(226u); +x_2 = lean_unsigned_to_nat(41u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -6935,7 +6215,7 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_obj x_1 = l___regBuiltin_Lean_Elab_Command_elabDeclaration_declRange__1___closed__1; x_2 = lean_unsigned_to_nat(0u); x_3 = l___regBuiltin_Lean_Elab_Command_elabDeclaration_declRange__1___closed__2; -x_4 = lean_unsigned_to_nat(43u); +x_4 = lean_unsigned_to_nat(41u); x_5 = lean_alloc_ctor(0, 4, 0); lean_ctor_set(x_5, 0, x_1); lean_ctor_set(x_5, 1, x_2); @@ -6948,7 +6228,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabDeclaration_declR _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(192u); +x_1 = lean_unsigned_to_nat(206u); x_2 = lean_unsigned_to_nat(4u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -6960,7 +6240,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabDeclaration_declR _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(192u); +x_1 = lean_unsigned_to_nat(206u); x_2 = lean_unsigned_to_nat(19u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -7913,7 +7193,7 @@ static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMu 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_3 = lean_unsigned_to_nat(296u); +x_3 = lean_unsigned_to_nat(304u); x_4 = lean_unsigned_to_nat(40u); x_5 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -8067,7 +7347,7 @@ x_13 = 0; lean_inc(x_4); x_14 = l_Lean_mkIdentFrom(x_4, x_2, x_13); x_15 = lean_box(2); -x_16 = l_Lean_Elab_Command_elabDeclaration___closed__5; +x_16 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; x_17 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_17, 0, x_15); lean_ctor_set(x_17, 1, x_16); @@ -8078,23 +7358,23 @@ x_20 = lean_ctor_get(x_6, 5); lean_inc(x_20); lean_dec(x_6); x_21 = l_Lean_SourceInfo_fromRef(x_20, x_13); -x_22 = l_Lean_Elab_Command_elabDeclaration___closed__6; +x_22 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__3; lean_inc(x_21); x_23 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_23, 0, x_21); lean_ctor_set(x_23, 1, x_22); -x_24 = l_Lean_Elab_Command_elabDeclaration___closed__7; +x_24 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__4; lean_inc(x_14); lean_inc(x_21); x_25 = l_Lean_Syntax_node2(x_21, x_24, x_23, x_14); -x_26 = l_Lean_Elab_Command_elabDeclaration___closed__8; +x_26 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5; lean_inc(x_21); x_27 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_27, 0, x_21); lean_ctor_set(x_27, 1, x_26); lean_inc(x_21); x_28 = l_Lean_Syntax_node1(x_21, x_16, x_14); -x_29 = l_Lean_Elab_Command_elabDeclaration___closed__9; +x_29 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__6; lean_inc(x_21); x_30 = l_Lean_Syntax_node2(x_21, x_29, x_27, x_28); x_31 = l_Lean_Syntax_node3(x_21, x_16, x_25, x_19, x_30); @@ -8113,7 +7393,7 @@ x_34 = 0; lean_inc(x_4); x_35 = l_Lean_mkIdentFrom(x_4, x_2, x_34); x_36 = lean_box(2); -x_37 = l_Lean_Elab_Command_elabDeclaration___closed__5; +x_37 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; x_38 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_38, 0, x_36); lean_ctor_set(x_38, 1, x_37); @@ -8124,23 +7404,23 @@ x_41 = lean_ctor_get(x_6, 5); lean_inc(x_41); lean_dec(x_6); x_42 = l_Lean_SourceInfo_fromRef(x_41, x_34); -x_43 = l_Lean_Elab_Command_elabDeclaration___closed__6; +x_43 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__3; lean_inc(x_42); x_44 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_44, 0, x_42); lean_ctor_set(x_44, 1, x_43); -x_45 = l_Lean_Elab_Command_elabDeclaration___closed__7; +x_45 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__4; lean_inc(x_35); lean_inc(x_42); x_46 = l_Lean_Syntax_node2(x_42, x_45, x_44, x_35); -x_47 = l_Lean_Elab_Command_elabDeclaration___closed__8; +x_47 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5; lean_inc(x_42); x_48 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_48, 0, x_42); lean_ctor_set(x_48, 1, x_47); lean_inc(x_42); x_49 = l_Lean_Syntax_node1(x_42, x_37, x_35); -x_50 = l_Lean_Elab_Command_elabDeclaration___closed__9; +x_50 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__6; lean_inc(x_42); x_51 = l_Lean_Syntax_node2(x_42, x_50, x_48, x_49); x_52 = l_Lean_Syntax_node3(x_42, x_37, x_46, x_40, x_51); @@ -8366,14 +7646,6 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace _start: { lean_object* x_1; -x_1 = l_Lean_Elab_macroAttribute; -return x_1; -} -} -static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__6() { -_start: -{ -lean_object* x_1; x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Command_expandMutualNamespace), 3, 0); return x_1; } @@ -8382,10 +7654,10 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_ _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_Elab_Command_expandMutualNamespace__1___closed__5; +x_2 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__3; x_3 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__4; -x_5 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__6; +x_5 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__5; x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); return x_6; } @@ -8394,7 +7666,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(287u); +x_1 = lean_unsigned_to_nat(295u); x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -8406,7 +7678,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(302u); +x_1 = lean_unsigned_to_nat(310u); x_2 = lean_unsigned_to_nat(38u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -8414,82 +7686,233 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__3() { -_start: +static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__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___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__1; +x_2 = lean_unsigned_to_nat(0u); +x_3 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__2; +x_4 = lean_unsigned_to_nat(38u); +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___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(295u); +x_2 = lean_unsigned_to_nat(4u); +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_Elab_Command_expandMutualNamespace_declRange__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(295u); +x_2 = lean_unsigned_to_nat(25u); +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_Elab_Command_expandMutualNamespace_declRange__1___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___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__4; +x_2 = lean_unsigned_to_nat(4u); +x_3 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__5; +x_4 = lean_unsigned_to_nat(25u); +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___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__3; +x_2 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__6; +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___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_2 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__4; +x_3 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__7; +x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualElement___spec__1___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_1); +x_7 = l_Lean_Macro_expandMacro_x3f(x_1, 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) == 0) +{ +uint8_t x_9; +x_9 = !lean_is_exclusive(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 = lean_ctor_get(x_7, 0); +lean_dec(x_10); +x_11 = lean_array_push(x_2, x_1); +x_12 = lean_box(x_3); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_11); +lean_ctor_set(x_13, 1, x_12); +x_14 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_7, 0, x_14); +return x_7; +} +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; +x_15 = lean_ctor_get(x_7, 1); +lean_inc(x_15); +lean_dec(x_7); +x_16 = lean_array_push(x_2, x_1); +x_17 = lean_box(x_3); +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 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_19, 0, 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; +} +} +else +{ +uint8_t x_21; +lean_dec(x_1); +x_21 = !lean_is_exclusive(x_7); +if (x_21 == 0) +{ +lean_object* x_22; uint8_t x_23; +x_22 = lean_ctor_get(x_7, 0); +lean_dec(x_22); +x_23 = !lean_is_exclusive(x_8); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; lean_object* x_27; lean_object* x_28; +x_24 = lean_ctor_get(x_8, 0); +x_25 = lean_array_push(x_2, x_24); +x_26 = 1; +x_27 = lean_box(x_26); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_25); +lean_ctor_set(x_28, 1, x_27); +lean_ctor_set(x_8, 0, x_28); +return x_7; +} +else +{ +lean_object* x_29; lean_object* x_30; uint8_t x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_29 = lean_ctor_get(x_8, 0); +lean_inc(x_29); +lean_dec(x_8); +x_30 = lean_array_push(x_2, x_29); +x_31 = 1; +x_32 = lean_box(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); +x_34 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_7, 0, x_34); +return x_7; +} +} +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__1; -x_2 = lean_unsigned_to_nat(0u); -x_3 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__2; -x_4 = lean_unsigned_to_nat(38u); -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_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; lean_object* x_42; lean_object* x_43; +x_35 = lean_ctor_get(x_7, 1); +lean_inc(x_35); +lean_dec(x_7); +x_36 = lean_ctor_get(x_8, 0); +lean_inc(x_36); +if (lean_is_exclusive(x_8)) { + lean_ctor_release(x_8, 0); + x_37 = x_8; +} else { + lean_dec_ref(x_8); + x_37 = lean_box(0); } -static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(287u); -x_2 = lean_unsigned_to_nat(4u); -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; +x_38 = lean_array_push(x_2, x_36); +x_39 = 1; +x_40 = lean_box(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); +if (lean_is_scalar(x_37)) { + x_42 = lean_alloc_ctor(1, 1, 0); +} else { + x_42 = x_37; } +lean_ctor_set(x_42, 0, 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_35); +return x_43; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(287u); -x_2 = lean_unsigned_to_nat(25u); -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_Elab_Command_expandMutualNamespace_declRange__1___closed__6() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__4; -x_2 = lean_unsigned_to_nat(4u); -x_3 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__5; -x_4 = lean_unsigned_to_nat(25u); -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; -} +uint8_t x_44; +lean_dec(x_2); +lean_dec(x_1); +x_44 = !lean_is_exclusive(x_7); +if (x_44 == 0) +{ +return x_7; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__7() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__3; -x_2 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__6; -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_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_7, 0); +x_46 = lean_ctor_get(x_7, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_7); +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; } } -LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_2 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__4; -x_3 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__7; -x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); -return x_4; } } LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualElement___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) { @@ -8513,167 +7936,213 @@ x_9 = lean_array_uget(x_1, x_3); x_10 = !lean_is_exclusive(x_4); if (x_10 == 0) { -lean_object* x_11; lean_object* x_12; lean_object* x_13; +lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; x_11 = lean_ctor_get(x_4, 0); x_12 = lean_ctor_get(x_4, 1); -lean_inc(x_5); +x_13 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__5; lean_inc(x_9); -x_13 = l_Lean_Macro_expandMacro_x3f(x_9, x_5, x_6); -if (lean_obj_tag(x_13) == 0) +x_14 = l_Lean_Syntax_isOfKind(x_9, x_13); +if (x_14 == 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; uint8_t x_16; lean_object* x_17; +lean_free_object(x_4); +x_15 = lean_box(0); +x_16 = lean_unbox(x_12); +lean_dec(x_12); +lean_inc(x_5); +x_17 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualElement___spec__1___lambda__1(x_9, x_11, x_16, x_15, x_5, x_6); +if (lean_obj_tag(x_17) == 0) { -lean_object* x_15; lean_object* x_16; size_t x_17; size_t x_18; -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -lean_dec(x_13); -x_16 = lean_array_push(x_11, x_9); -lean_ctor_set(x_4, 0, x_16); -x_17 = 1; -x_18 = lean_usize_add(x_3, x_17); -x_3 = x_18; -x_6 = x_15; -goto _start; +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_5); +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_17, 0); +lean_dec(x_20); +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_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_object* x_24; size_t x_25; size_t x_26; -lean_dec(x_12); -lean_dec(x_9); -x_20 = lean_ctor_get(x_13, 1); -lean_inc(x_20); -lean_dec(x_13); -x_21 = lean_ctor_get(x_14, 0); -lean_inc(x_21); -lean_dec(x_14); -x_22 = lean_array_push(x_11, x_21); -x_23 = 1; -x_24 = lean_box(x_23); -lean_ctor_set(x_4, 1, x_24); -lean_ctor_set(x_4, 0, x_22); -x_25 = 1; -x_26 = lean_usize_add(x_3, x_25); -x_3 = x_26; -x_6 = x_20; +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_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; +} +} +else +{ +lean_object* x_25; lean_object* x_26; size_t x_27; size_t x_28; +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_27 = 1; +x_28 = lean_usize_add(x_3, x_27); +x_3 = x_28; +x_4 = x_26; +x_6 = x_25; goto _start; } } else { -uint8_t x_28; -lean_free_object(x_4); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_9); +uint8_t x_30; lean_dec(x_5); -x_28 = !lean_is_exclusive(x_13); -if (x_28 == 0) +x_30 = !lean_is_exclusive(x_17); +if (x_30 == 0) { -return x_13; +return x_17; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -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_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); -return x_31; +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 { -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_4, 0); -x_33 = lean_ctor_get(x_4, 1); -lean_inc(x_33); -lean_inc(x_32); +size_t x_34; size_t x_35; +lean_dec(x_9); +x_34 = 1; +x_35 = lean_usize_add(x_3, x_34); +x_3 = x_35; +goto _start; +} +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_37 = lean_ctor_get(x_4, 0); +x_38 = lean_ctor_get(x_4, 1); +lean_inc(x_38); +lean_inc(x_37); lean_dec(x_4); -lean_inc(x_5); +x_39 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__5; lean_inc(x_9); -x_34 = l_Lean_Macro_expandMacro_x3f(x_9, x_5, x_6); -if (lean_obj_tag(x_34) == 0) +x_40 = l_Lean_Syntax_isOfKind(x_9, x_39); +if (x_40 == 0) { -lean_object* x_35; -x_35 = lean_ctor_get(x_34, 0); -lean_inc(x_35); -if (lean_obj_tag(x_35) == 0) +lean_object* x_41; uint8_t x_42; lean_object* x_43; +x_41 = lean_box(0); +x_42 = lean_unbox(x_38); +lean_dec(x_38); +lean_inc(x_5); +x_43 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualElement___spec__1___lambda__1(x_9, x_37, x_42, x_41, x_5, x_6); +if (lean_obj_tag(x_43) == 0) { -lean_object* x_36; lean_object* x_37; lean_object* x_38; size_t x_39; size_t x_40; -x_36 = lean_ctor_get(x_34, 1); -lean_inc(x_36); -lean_dec(x_34); -x_37 = lean_array_push(x_32, x_9); -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 = 1; -x_40 = lean_usize_add(x_3, x_39); -x_3 = x_40; -x_4 = x_38; -x_6 = x_36; -goto _start; +lean_object* x_44; +x_44 = lean_ctor_get(x_43, 0); +lean_inc(x_44); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_dec(x_5); +x_45 = lean_ctor_get(x_43, 1); +lean_inc(x_45); +if (lean_is_exclusive(x_43)) { + lean_ctor_release(x_43, 0); + lean_ctor_release(x_43, 1); + x_46 = x_43; +} else { + lean_dec_ref(x_43); + x_46 = lean_box(0); +} +x_47 = lean_ctor_get(x_44, 0); +lean_inc(x_47); +lean_dec(x_44); +if (lean_is_scalar(x_46)) { + x_48 = lean_alloc_ctor(0, 2, 0); +} else { + x_48 = x_46; +} +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_45); +return x_48; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; lean_object* x_46; lean_object* x_47; size_t x_48; size_t x_49; -lean_dec(x_33); -lean_dec(x_9); -x_42 = lean_ctor_get(x_34, 1); -lean_inc(x_42); -lean_dec(x_34); -x_43 = lean_ctor_get(x_35, 0); -lean_inc(x_43); -lean_dec(x_35); -x_44 = lean_array_push(x_32, x_43); -x_45 = 1; -x_46 = lean_box(x_45); -x_47 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_47, 0, x_44); -lean_ctor_set(x_47, 1, x_46); -x_48 = 1; -x_49 = lean_usize_add(x_3, x_48); -x_3 = x_49; -x_4 = x_47; -x_6 = x_42; +lean_object* x_49; lean_object* x_50; size_t x_51; size_t x_52; +x_49 = lean_ctor_get(x_43, 1); +lean_inc(x_49); +lean_dec(x_43); +x_50 = lean_ctor_get(x_44, 0); +lean_inc(x_50); +lean_dec(x_44); +x_51 = 1; +x_52 = lean_usize_add(x_3, x_51); +x_3 = x_52; +x_4 = x_50; +x_6 = x_49; goto _start; } } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_9); +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_dec(x_5); -x_51 = lean_ctor_get(x_34, 0); -lean_inc(x_51); -x_52 = lean_ctor_get(x_34, 1); -lean_inc(x_52); -if (lean_is_exclusive(x_34)) { - lean_ctor_release(x_34, 0); - lean_ctor_release(x_34, 1); - x_53 = x_34; +x_54 = lean_ctor_get(x_43, 0); +lean_inc(x_54); +x_55 = lean_ctor_get(x_43, 1); +lean_inc(x_55); +if (lean_is_exclusive(x_43)) { + lean_ctor_release(x_43, 0); + lean_ctor_release(x_43, 1); + x_56 = x_43; } else { - lean_dec_ref(x_34); - x_53 = lean_box(0); + lean_dec_ref(x_43); + x_56 = lean_box(0); } -if (lean_is_scalar(x_53)) { - x_54 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_56)) { + x_57 = lean_alloc_ctor(1, 2, 0); } else { - x_54 = x_53; + x_57 = x_56; +} +lean_ctor_set(x_57, 0, x_54); +lean_ctor_set(x_57, 1, x_55); +return x_57; } -lean_ctor_set(x_54, 0, x_51); -lean_ctor_set(x_54, 1, x_52); -return x_54; +} +else +{ +lean_object* x_58; size_t x_59; size_t x_60; +lean_dec(x_9); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_37); +lean_ctor_set(x_58, 1, x_38); +x_59 = 1; +x_60 = lean_usize_add(x_3, x_59); +x_3 = x_60; +x_4 = x_58; +goto _start; } } } @@ -8758,7 +8227,7 @@ x_23 = lean_ctor_get(x_12, 0); lean_inc(x_23); lean_dec(x_12); x_24 = lean_box(2); -x_25 = l_Lean_Elab_Command_elabDeclaration___closed__5; +x_25 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; x_26 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_26, 0, x_24); lean_ctor_set(x_26, 1, x_25); @@ -8777,7 +8246,7 @@ x_29 = lean_ctor_get(x_12, 0); lean_inc(x_29); lean_dec(x_12); x_30 = lean_box(2); -x_31 = l_Lean_Elab_Command_elabDeclaration___closed__5; +x_31 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; x_32 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_32, 0, x_30); lean_ctor_set(x_32, 1, x_31); @@ -8815,6 +8284,17 @@ return x_38; } } } +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualElement___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) { +_start: +{ +uint8_t x_7; lean_object* x_8; +x_7 = lean_unbox(x_3); +lean_dec(x_3); +x_8 = l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualElement___spec__1___lambda__1(x_1, x_2, x_7, x_4, x_5, x_6); +lean_dec(x_4); +return x_8; +} +} LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_expandMutualElement___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: { @@ -8860,7 +8340,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualElement__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_Elab_Command_expandMutualNamespace__1___closed__5; +x_2 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__3; x_3 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Command_expandMutualElement__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Command_expandMutualElement__1___closed__3; @@ -8872,7 +8352,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualElement_d _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(305u); +x_1 = lean_unsigned_to_nat(313u); x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -8884,7 +8364,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualElement_d _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(315u); +x_1 = lean_unsigned_to_nat(327u); x_2 = lean_unsigned_to_nat(26u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -8912,7 +8392,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualElement_d _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(305u); +x_1 = lean_unsigned_to_nat(313u); x_2 = lean_unsigned_to_nat(4u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -8924,7 +8404,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualElement_d _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(305u); +x_1 = lean_unsigned_to_nat(313u); x_2 = lean_unsigned_to_nat(23u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9033,7 +8513,7 @@ lean_inc(x_17); lean_ctor_set_tag(x_11, 2); lean_ctor_set(x_11, 1, x_18); lean_ctor_set(x_11, 0, x_17); -x_19 = l_Lean_Elab_Command_elabDeclaration___closed__5; +x_19 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; x_20 = l_Lean_Elab_Command_elabAxiom___lambda__5___closed__3; lean_inc(x_17); x_21 = lean_alloc_ctor(1, 3, 0); @@ -9050,12 +8530,12 @@ lean_ctor_set(x_25, 0, x_24); lean_ctor_set(x_25, 1, x_19); lean_ctor_set(x_25, 2, x_14); x_26 = l_Lean_Syntax_setArg(x_1, x_4, x_25); -x_27 = l_Lean_Elab_Command_elabDeclaration___closed__8; +x_27 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5; lean_inc(x_17); x_28 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_28, 0, x_17); lean_ctor_set(x_28, 1, x_27); -x_29 = l_Lean_Elab_Command_elabDeclaration___closed__9; +x_29 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__6; x_30 = l_Lean_Syntax_node2(x_17, x_29, x_28, x_21); x_31 = l_Lean_Elab_Command_elabInductive___closed__1; x_32 = lean_array_push(x_31, x_23); @@ -9091,7 +8571,7 @@ lean_inc(x_44); x_46 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_46, 0, x_44); lean_ctor_set(x_46, 1, x_45); -x_47 = l_Lean_Elab_Command_elabDeclaration___closed__5; +x_47 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; x_48 = l_Lean_Elab_Command_elabAxiom___lambda__5___closed__3; lean_inc(x_44); x_49 = lean_alloc_ctor(1, 3, 0); @@ -9108,12 +8588,12 @@ lean_ctor_set(x_53, 0, x_52); lean_ctor_set(x_53, 1, x_47); lean_ctor_set(x_53, 2, x_41); x_54 = l_Lean_Syntax_setArg(x_1, x_4, x_53); -x_55 = l_Lean_Elab_Command_elabDeclaration___closed__8; +x_55 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5; lean_inc(x_44); x_56 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_56, 0, x_44); lean_ctor_set(x_56, 1, x_55); -x_57 = l_Lean_Elab_Command_elabDeclaration___closed__9; +x_57 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__6; x_58 = l_Lean_Syntax_node2(x_44, x_57, x_56, x_49); x_59 = l_Lean_Elab_Command_elabInductive___closed__1; x_60 = lean_array_push(x_59, x_51); @@ -9166,7 +8646,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualPreamble__ _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_Elab_Command_expandMutualNamespace__1___closed__5; +x_2 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__3; x_3 = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Command_expandMutualPreamble__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Command_expandMutualPreamble__1___closed__3; @@ -9178,7 +8658,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(318u); +x_1 = lean_unsigned_to_nat(330u); x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9190,7 +8670,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(325u); +x_1 = lean_unsigned_to_nat(337u); x_2 = lean_unsigned_to_nat(74u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9218,7 +8698,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(318u); +x_1 = lean_unsigned_to_nat(330u); x_2 = lean_unsigned_to_nat(4u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9230,7 +8710,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(318u); +x_1 = lean_unsigned_to_nat(330u); x_2 = lean_unsigned_to_nat(24u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9399,7 +8879,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabMutual_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(328u); +x_1 = lean_unsigned_to_nat(340u); x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9411,7 +8891,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabMutual_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(336u); +x_1 = lean_unsigned_to_nat(348u); x_2 = lean_unsigned_to_nat(154u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9439,7 +8919,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabMutual_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(328u); +x_1 = lean_unsigned_to_nat(340u); x_2 = lean_unsigned_to_nat(4u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9451,7 +8931,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabMutual_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(328u); +x_1 = lean_unsigned_to_nat(340u); x_2 = lean_unsigned_to_nat(14u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -10911,7 +10391,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabAttr_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(339u); +x_1 = lean_unsigned_to_nat(351u); x_2 = lean_unsigned_to_nat(36u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -10923,7 +10403,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabAttr_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(371u); +x_1 = lean_unsigned_to_nat(383u); x_2 = lean_unsigned_to_nat(39u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -10951,7 +10431,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabAttr_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(339u); +x_1 = lean_unsigned_to_nat(351u); x_2 = lean_unsigned_to_nat(40u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -10963,7 +10443,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_elabAttr_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(339u); +x_1 = lean_unsigned_to_nat(351u); x_2 = lean_unsigned_to_nat(48u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -11579,7 +11059,7 @@ lean_inc(x_37); x_41 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_41, 0, x_37); lean_ctor_set(x_41, 1, x_40); -x_42 = l_Lean_Elab_Command_elabDeclaration___closed__5; +x_42 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; x_43 = l_Lean_Elab_Command_elabAxiom___lambda__5___closed__3; lean_inc(x_37); x_44 = lean_alloc_ctor(1, 3, 0); @@ -11794,7 +11274,7 @@ static lean_object* _init_l_Lean_Elab_Command_expandInitialize___lambda__2___clo { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l_Lean_Elab_Command_elabDeclaration___closed__5; +x_2 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; x_3 = l_Lean_Elab_Command_elabAxiom___lambda__5___closed__3; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); @@ -11920,7 +11400,7 @@ lean_inc(x_18); x_19 = lean_ctor_get(x_12, 1); lean_inc(x_19); lean_dec(x_12); -x_20 = l_Lean_Elab_Command_elabDeclaration___closed__5; +x_20 = l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2; x_21 = l_Lean_Elab_Command_elabAxiom___lambda__5___closed__3; lean_inc(x_17); x_22 = lean_alloc_ctor(1, 3, 0); @@ -13112,7 +12592,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandInitialize__1(le _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_Elab_Command_expandMutualNamespace__1___closed__5; +x_2 = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__3; x_3 = l_Lean_Elab_Command_expandInitialize___closed__1; x_4 = l___regBuiltin_Lean_Elab_Command_expandInitialize__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Command_expandInitialize__1___closed__3; @@ -13124,7 +12604,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandInitialize_decl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(373u); +x_1 = lean_unsigned_to_nat(385u); x_2 = lean_unsigned_to_nat(50u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -13136,7 +12616,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandInitialize_decl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(385u); +x_1 = lean_unsigned_to_nat(397u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -13164,7 +12644,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandInitialize_decl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(373u); +x_1 = lean_unsigned_to_nat(385u); x_2 = lean_unsigned_to_nat(54u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -13176,7 +12656,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Command_expandInitialize_decl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(373u); +x_1 = lean_unsigned_to_nat(385u); x_2 = lean_unsigned_to_nat(70u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -13222,7 +12702,7 @@ x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); return x_4; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__1() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -13232,37 +12712,37 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__2() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__1; +x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__1; x_2 = l_Lean_Elab_Command_elabAxiom___lambda__5___closed__5; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__3() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__2; +x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__2; x_2 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__3; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__4() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__3; +x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__3; x_2 = l_Lean_Elab_Command_expandInitialize___lambda__1___closed__16; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__5() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__5() { _start: { lean_object* x_1; @@ -13270,37 +12750,37 @@ x_1 = lean_mk_string_from_bytes("_@", 2); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__6() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__4; -x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__5; +x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__4; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__5; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__7() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__6; +x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__6; x_2 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__8() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__7; +x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__7; x_2 = l_Lean_Elab_Command_elabAxiom___lambda__5___closed__5; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__9() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__9() { _start: { lean_object* x_1; @@ -13308,17 +12788,17 @@ x_1 = lean_mk_string_from_bytes("Declaration", 11); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__10() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__8; -x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__9; +x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__8; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__9; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__11() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__11() { _start: { lean_object* x_1; @@ -13326,33 +12806,33 @@ x_1 = lean_mk_string_from_bytes("_hyg", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__12() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__10; -x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__11; +x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__10; +x_2 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__11; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__13() { +static lean_object* _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__12; -x_2 = lean_unsigned_to_nat(7902u); +x_1 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__12; +x_2 = lean_unsigned_to_nat(8005u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005_(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_Command_elabAxiom___lambda__5___closed__6; x_3 = 0; -x_4 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__13; +x_4 = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__13; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } @@ -13535,32 +13015,57 @@ l_Lean_Elab_Command_elabClassInductive___closed__2 = _init_l_Lean_Elab_Command_e lean_mark_persistent(l_Lean_Elab_Command_elabClassInductive___closed__2); l_Lean_Elab_Command_elabClassInductive___closed__3 = _init_l_Lean_Elab_Command_elabClassInductive___closed__3(); lean_mark_persistent(l_Lean_Elab_Command_elabClassInductive___closed__3); -l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___closed__1 = _init_l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___closed__1(); -lean_mark_persistent(l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___closed__1); -l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___closed__2 = _init_l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___closed__2(); -lean_mark_persistent(l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabDeclaration___spec__4___closed__2); -l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg___closed__1 = _init_l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg___closed__1(); -lean_mark_persistent(l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg___closed__1); -l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg___closed__2 = _init_l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg___closed__2(); -lean_mark_persistent(l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabDeclaration___spec__5___rarg___closed__2); -l_Lean_Elab_Command_elabDeclaration___closed__1 = _init_l_Lean_Elab_Command_elabDeclaration___closed__1(); +l_Lean_Elab_Command_expandNamespacedDeclaration___closed__1 = _init_l_Lean_Elab_Command_expandNamespacedDeclaration___closed__1(); +lean_mark_persistent(l_Lean_Elab_Command_expandNamespacedDeclaration___closed__1); +l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2 = _init_l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2(); +lean_mark_persistent(l_Lean_Elab_Command_expandNamespacedDeclaration___closed__2); +l_Lean_Elab_Command_expandNamespacedDeclaration___closed__3 = _init_l_Lean_Elab_Command_expandNamespacedDeclaration___closed__3(); +lean_mark_persistent(l_Lean_Elab_Command_expandNamespacedDeclaration___closed__3); +l_Lean_Elab_Command_expandNamespacedDeclaration___closed__4 = _init_l_Lean_Elab_Command_expandNamespacedDeclaration___closed__4(); +lean_mark_persistent(l_Lean_Elab_Command_expandNamespacedDeclaration___closed__4); +l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5 = _init_l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5(); +lean_mark_persistent(l_Lean_Elab_Command_expandNamespacedDeclaration___closed__5); +l_Lean_Elab_Command_expandNamespacedDeclaration___closed__6 = _init_l_Lean_Elab_Command_expandNamespacedDeclaration___closed__6(); +lean_mark_persistent(l_Lean_Elab_Command_expandNamespacedDeclaration___closed__6); +l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__1 = _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__1(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__1); +l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__2 = _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__2(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__2); +l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__3 = _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__3(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__3); +l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__4 = _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__4(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1___closed__4); +if (builtin) {res = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration__1(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +}l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_docString__1___closed__1 = _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_docString__1___closed__1(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_docString__1___closed__1); +if (builtin) {res = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_docString__1(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +}l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__1 = _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__1(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__1); +l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__2 = _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__2(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__2); +l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__3 = _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__3(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__3); +l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__4 = _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__4(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__4); +l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__5 = _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__5(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__5); +l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__6 = _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__6(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__6); +l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__7 = _init_l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__7(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__7); +if (builtin) {res = l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +}l_Lean_Elab_Command_elabDeclaration___closed__1 = _init_l_Lean_Elab_Command_elabDeclaration___closed__1(); lean_mark_persistent(l_Lean_Elab_Command_elabDeclaration___closed__1); l_Lean_Elab_Command_elabDeclaration___closed__2 = _init_l_Lean_Elab_Command_elabDeclaration___closed__2(); lean_mark_persistent(l_Lean_Elab_Command_elabDeclaration___closed__2); l_Lean_Elab_Command_elabDeclaration___closed__3 = _init_l_Lean_Elab_Command_elabDeclaration___closed__3(); lean_mark_persistent(l_Lean_Elab_Command_elabDeclaration___closed__3); -l_Lean_Elab_Command_elabDeclaration___closed__4 = _init_l_Lean_Elab_Command_elabDeclaration___closed__4(); -lean_mark_persistent(l_Lean_Elab_Command_elabDeclaration___closed__4); -l_Lean_Elab_Command_elabDeclaration___closed__5 = _init_l_Lean_Elab_Command_elabDeclaration___closed__5(); -lean_mark_persistent(l_Lean_Elab_Command_elabDeclaration___closed__5); -l_Lean_Elab_Command_elabDeclaration___closed__6 = _init_l_Lean_Elab_Command_elabDeclaration___closed__6(); -lean_mark_persistent(l_Lean_Elab_Command_elabDeclaration___closed__6); -l_Lean_Elab_Command_elabDeclaration___closed__7 = _init_l_Lean_Elab_Command_elabDeclaration___closed__7(); -lean_mark_persistent(l_Lean_Elab_Command_elabDeclaration___closed__7); -l_Lean_Elab_Command_elabDeclaration___closed__8 = _init_l_Lean_Elab_Command_elabDeclaration___closed__8(); -lean_mark_persistent(l_Lean_Elab_Command_elabDeclaration___closed__8); -l_Lean_Elab_Command_elabDeclaration___closed__9 = _init_l_Lean_Elab_Command_elabDeclaration___closed__9(); -lean_mark_persistent(l_Lean_Elab_Command_elabDeclaration___closed__9); l___regBuiltin_Lean_Elab_Command_elabDeclaration__1___closed__1 = _init_l___regBuiltin_Lean_Elab_Command_elabDeclaration__1___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_elabDeclaration__1___closed__1); l___regBuiltin_Lean_Elab_Command_elabDeclaration__1___closed__2 = _init_l___regBuiltin_Lean_Elab_Command_elabDeclaration__1___closed__2(); @@ -13634,8 +13139,6 @@ l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__4 = _init_l_ lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__4); l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__5 = _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__5(); lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__5); -l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__6 = _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__6(); -lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__6); if (builtin) {res = l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); @@ -13981,33 +13484,33 @@ lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandInitialize_declRange if (builtin) {res = l___regBuiltin_Lean_Elab_Command_expandInitialize_declRange__1(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__1 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__1(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__1); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__2 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__2(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__2); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__3 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__3(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__3); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__4 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__4(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__4); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__5 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__5(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__5); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__6 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__6(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__6); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__7 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__7(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__7); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__8 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__8(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__8); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__9 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__9(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__9); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__10 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__10(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__10); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__11 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__11(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__11); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__12 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__12(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__12); -l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__13 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__13(); -lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902____closed__13); -if (builtin) {res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7902_(lean_io_mk_world()); +}l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__1 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__1(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__1); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__2 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__2(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__2); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__3 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__3(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__3); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__4 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__4(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__4); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__5 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__5(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__5); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__6 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__6(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__6); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__7 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__7(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__7); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__8 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__8(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__8); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__9 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__9(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__9); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__10 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__10(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__10); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__11 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__11(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__11); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__12 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__12(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__12); +l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__13 = _init_l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__13(); +lean_mark_persistent(l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005____closed__13); +if (builtin) {res = l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_8005_(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/Deriving/BEq.c b/stage0/stdlib/Lean/Elab/Deriving/BEq.c index 88065b6aff68..e27458eb98c2 100644 --- a/stage0/stdlib/Lean/Elab/Deriving/BEq.c +++ b/stage0/stdlib/Lean/Elab/Deriving/BEq.c @@ -41,7 +41,6 @@ static lean_object* l_Lean_Elab_Deriving_BEq_mkMatch_mkElseAlt___closed__16; static lean_object* l___private_Lean_Elab_Deriving_BEq_0__Lean_Elab_Deriving_BEq_mkBEqEnumFun___closed__4; static lean_object* l_Lean_Elab_Deriving_BEq_mkAuxFunction___lambda__1___closed__28; static lean_object* l_Lean_Elab_Deriving_BEq_mkAuxFunction___lambda__1___closed__17; -lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Deriving_BEq_0__Lean_Elab_Deriving_BEq_mkBEqInstanceCmds___closed__2; static lean_object* l_Lean_Elab_Deriving_BEq_mkMatch___closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Deriving_BEq_mkMatch_mkAlts___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -125,6 +124,7 @@ static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_BEq_mkMatch_m lean_object* l_Lean_Elab_getBetterRef(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Deriving_BEq_0__Lean_Elab_Deriving_BEq_mkBEqInstanceCmds___closed__8; static lean_object* l_Lean_Elab_Deriving_BEq_mkMutualBlock___closed__2; +lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Command_liftTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); 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*); @@ -7410,7 +7410,7 @@ x_20 = 0; x_21 = lean_usize_of_nat(x_14); lean_dec(x_14); x_22 = lean_box(0); -x_23 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_12, x_20, x_21, x_22, x_2, x_3, x_13); +x_23 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_12, x_20, x_21, x_22, x_2, x_3, x_13); lean_dec(x_12); return x_23; } @@ -7464,7 +7464,7 @@ x_34 = 0; x_35 = lean_usize_of_nat(x_26); lean_dec(x_26); x_36 = lean_box(0); -x_37 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_24, x_34, x_35, x_36, x_2, x_3, x_25); +x_37 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_24, x_34, x_35, x_36, x_2, x_3, x_25); lean_dec(x_24); return x_37; } @@ -7551,7 +7551,7 @@ x_54 = 0; x_55 = lean_usize_of_nat(x_48); lean_dec(x_48); x_56 = lean_box(0); -x_57 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_46, x_54, x_55, x_56, x_2, x_3, x_47); +x_57 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_46, x_54, x_55, x_56, x_2, x_3, x_47); lean_dec(x_46); return x_57; } @@ -7605,7 +7605,7 @@ x_68 = 0; x_69 = lean_usize_of_nat(x_60); lean_dec(x_60); x_70 = lean_box(0); -x_71 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_58, x_68, x_69, x_70, x_2, x_3, x_59); +x_71 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_58, x_68, x_69, x_70, x_2, x_3, x_59); lean_dec(x_58); return x_71; } diff --git a/stage0/stdlib/Lean/Elab/Deriving/DecEq.c b/stage0/stdlib/Lean/Elab/Deriving/DecEq.c index 618c570b09be..8d1ee08c1a75 100644 --- a/stage0/stdlib/Lean/Elab/Deriving/DecEq.c +++ b/stage0/stdlib/Lean/Elab/Deriving/DecEq.c @@ -20,6 +20,7 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNat_mkDecTree___closed__2 LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEq___lambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__9; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__13; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch___closed__5; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__32; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__14; @@ -29,7 +30,6 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm___closed__10; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__16; 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* lean_mk_empty_array_with_capacity(lean_object*); -lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__20; LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkAuxFunctions___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_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__1; @@ -44,6 +44,7 @@ lean_object* l_Lean_getConstInfo___at_Lean_Elab_Term_mkConst___spec__3(lean_obje static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__5; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__5; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__4; lean_object* l_Lean_Meta_isProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__16; @@ -51,12 +52,10 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2 static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction(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_getMainModule___rarg(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__2; lean_object* l_Lean_mkAppB(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__23; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__15; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__30; -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__5; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__33; lean_object* l_Array_findIdx_x3f_loop___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__20; @@ -74,23 +73,24 @@ lean_object* l_Lean_Elab_Deriving_mkDiscrs(lean_object*, lean_object*, lean_obje static lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNat_mkDecTree___closed__5; lean_object* l___private_Init_GetElem_0__outOfBounds___rarg(lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch___closed__3; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__8; lean_object* l_Lean_Elab_Command_elabCommand(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); extern lean_object* l_Lean_casesOnSuffix; static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__5; -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__14; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__17; LEAN_EXPORT lean_object* l_Lean_isEnumType___at_Lean_Elab_Deriving_DecEq_mkDecEqInstance___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_fvarId_x21(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_enableInfoTree___at_Lean_Elab_Deriving_DecEq_mkDecEq___spec__4(uint8_t, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__41; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__9; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNat_mkDecTree___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__19; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__10; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__6; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__15; +lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__5; static lean_object* l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNat___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -122,8 +122,10 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNat___lambda__1___closed_ static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__51; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_Deriving_DecEq_mkDecEq___spec__3(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_Deriving_DecEq_mkDecEq___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_mapMUnsafe_map___at___aux__Init__NotationExtra______macroRules__term_x25_x5b___x7c___x5d__1___spec__3(size_t, size_t, lean_object*); +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__12; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__4; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__24; lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); @@ -136,11 +138,11 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqCmds(lean_object*, le static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__12; size_t lean_usize_of_nat(lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__28; -static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__60; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__49; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__10; LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm___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_Elab_Deriving_DecEq_mkEnumOfNat___closed__2; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__2; LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Elab_Deriving_DecEq_mkDecEqCmds___spec__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__29; lean_object* l_Lean_Elab_registerDerivingHandler(lean_object*, lean_object*, lean_object*); @@ -152,7 +154,6 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__12; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__35; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__14; -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__12; lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___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*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__18; @@ -160,10 +161,10 @@ lean_object* l_Lean_MessageData_ofSyntax(lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__47; static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__5___closed__2; 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_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__17; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__34; lean_object* lean_nat_div(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__18; -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_getConstInfoCtor___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__1___closed__4; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__56; @@ -171,10 +172,10 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1 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_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__30; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__6; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__15; static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__10; lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__8; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__16; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqInstanceHandler(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__2; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__12; @@ -183,7 +184,6 @@ lean_object* l_Lean_Elab_Command_getRef(lean_object*, lean_object*, lean_object* static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__48; lean_object* l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__8; -static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__58; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__21; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__11; lean_object* l_Lean_Elab_getBetterRef(lean_object*, lean_object*); @@ -191,6 +191,7 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Deriving_DecEq_mk static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__13; lean_object* l_Lean_Meta_compatibleCtors(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNat_mkDecTree___closed__7; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__3; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__10; static lean_object* l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___closed__2; static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__7; @@ -199,6 +200,7 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__15; lean_object* l_Lean_Elab_Command_liftTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__5___closed__3; LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm___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_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__11; lean_object* lean_st_ref_get(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__51; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__19; @@ -224,6 +226,7 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2 extern lean_object* l_Lean_levelZero; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNat___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*); extern lean_object* l_Lean_instInhabitedExpr; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__9; static lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm___closed__4; lean_object* l_Lean_Elab_Command_getCurrMacroScope(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__50; @@ -260,7 +263,6 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunctions___closed__3; static lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNat_mkDecTree___closed__3; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__48; static lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNat_mkDecTree___closed__6; -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__15; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__46; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__6; static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__6; @@ -268,12 +270,12 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__15; static lean_object* l_Lean_getConstInfoInduct___at_Lean_Elab_Deriving_DecEq_mkDecEq___spec__1___closed__1; lean_object* lean_mk_syntax_ident(lean_object*); static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__5___closed__1; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__1; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqHeader___closed__1; static lean_object* l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___closed__5; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__10; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__31; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__5; -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__1; static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__13; LEAN_EXPORT lean_object* l_Lean_Elab_enableInfoTree___at_Lean_Elab_Deriving_DecEq_mkDecEq___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__5___lambda__2___boxed(lean_object*); @@ -290,7 +292,7 @@ lean_object* l_Lean_MessageData_ofExpr(lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__13; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__4; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch___closed__4; -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__11; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__14; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__45; lean_object* l_Lean_Syntax_node4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__1; @@ -303,7 +305,6 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__1; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__12; 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_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__10; -static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__59; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__9; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Deriving_DecEq_mkDecEq___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__10; @@ -319,13 +320,13 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__18; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__22; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__8; lean_object* l_Lean_Expr_app___override(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__13; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__42; static lean_object* l_Lean_getConstInfoInduct___at_Lean_Elab_Deriving_DecEq_mkDecEq___spec__1___closed__2; 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*); static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__5___closed__7; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__3; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__4; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__35; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Deriving_DecEq_mkEnumOfNat___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); @@ -396,7 +397,6 @@ lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_SynthInstance_0_ static lean_object* l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Function_comp___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__17; size_t lean_usize_add(size_t, size_t); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__11; LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___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*); @@ -407,9 +407,7 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__3; static lean_object* l_Lean_getConstInfoCtor___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__1___closed__3; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__11; lean_object* lean_array_uget(lean_object*, size_t); -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__9; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__7; static lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm___closed__2; lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__3; @@ -429,7 +427,6 @@ lean_object* lean_array_get_size(lean_object*); LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___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_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__40; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__3; -static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__61; 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); @@ -442,7 +439,6 @@ LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mk LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___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*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__29; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__7; -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__10; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqHeader(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__26; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -450,7 +446,6 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__39; static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__5___closed__5; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__42; lean_object* l_String_toSubstring_x27(lean_object*); -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqInstance(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___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_Deriving_DecEq_mkMatch_mkAlts(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -459,9 +454,9 @@ static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__22; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__6; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch___closed__1; lean_object* l_Array_mapMUnsafe_map___at_Lean_PrettyPrinter_Delaborator_delabAppMatch___spec__20(size_t, size_t, lean_object*); +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__7; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__12; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__9; -static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__16; static lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__26; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___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_Deriving_DecEq_mkEnumOfNat_mkDecTree___closed__1; @@ -470,6 +465,7 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Deriving_DecEq lean_object* l_Lean_Core_betaReduce___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_toArrayAux___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__19; +static lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__6; static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__5; LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___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*); static lean_object* l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__5; @@ -10714,7 +10710,7 @@ lean_dec(x_13); x_48 = lean_box(0); x_49 = l_Lean_Elab_Deriving_DecEq_mkDecEq___boxed__const__1; x_50 = lean_box_usize(x_47); -x_51 = lean_alloc_closure((void*)(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18___boxed), 7, 4); +x_51 = lean_alloc_closure((void*)(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25___boxed), 7, 4); lean_closure_set(x_51, 0, x_11); lean_closure_set(x_51, 1, x_49); lean_closure_set(x_51, 2, x_50); @@ -12343,7 +12339,7 @@ static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__30() _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("tacticRefine_lift_", 18); +x_1 = lean_mk_string_from_bytes("tacticHave_", 11); return x_1; } } @@ -12363,38 +12359,30 @@ static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__32() _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("refine_lift", 11); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__33() { -_start: -{ -lean_object* x_1; x_1 = lean_mk_string_from_bytes("aux", 3); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__34() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__33() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__33; +x_1 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__32; x_2 = l_String_toSubstring_x27(x_1); return x_2; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__35() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__34() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__33; +x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__32; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__36() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__35() { _start: { lean_object* x_1; @@ -12402,78 +12390,50 @@ x_1 = lean_mk_string_from_bytes("congrArg", 8); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__37() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__36() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__36; +x_1 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__35; x_2 = l_String_toSubstring_x27(x_1); return x_2; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__38() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__37() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__36; +x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__35; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__39() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__38() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__38; +x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__37; 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_Elab_Deriving_DecEq_mkDecEqEnum___closed__40() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__39() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__39; +x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__38; 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_Elab_Deriving_DecEq_mkDecEqEnum___closed__41() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("syntheticHole", 13); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__42() { -_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_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__1; -x_2 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__2; -x_3 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__3; -x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__41; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} -} -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__43() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("\?", 1); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__44() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__40() { _start: { lean_object* x_1; @@ -12481,19 +12441,19 @@ x_1 = lean_mk_string_from_bytes("rwSeq", 5); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__45() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__41() { _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_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__1; x_2 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__2; x_3 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__17; -x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__44; +x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__40; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__46() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__42() { _start: { lean_object* x_1; @@ -12501,7 +12461,7 @@ x_1 = lean_mk_string_from_bytes("rw", 2); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__47() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__43() { _start: { lean_object* x_1; @@ -12509,19 +12469,19 @@ x_1 = lean_mk_string_from_bytes("rwRuleSeq", 9); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__48() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__44() { _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_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__1; x_2 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__2; x_3 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__17; -x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__47; +x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__43; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__49() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__45() { _start: { lean_object* x_1; @@ -12529,7 +12489,7 @@ x_1 = lean_mk_string_from_bytes("[", 1); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__50() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__46() { _start: { lean_object* x_1; @@ -12537,19 +12497,19 @@ x_1 = lean_mk_string_from_bytes("rwRule", 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__51() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__47() { _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_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__1; x_2 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__2; x_3 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__17; -x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__50; +x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___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_Elab_Deriving_DecEq_mkDecEqEnum___closed__52() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__48() { _start: { lean_object* x_1; @@ -12557,7 +12517,7 @@ x_1 = lean_mk_string_from_bytes("]", 1); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__53() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__49() { _start: { lean_object* x_1; @@ -12565,19 +12525,19 @@ x_1 = lean_mk_string_from_bytes("location", 8); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__54() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__50() { _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_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__1; x_2 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__2; x_3 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__17; -x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__53; +x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__49; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__55() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__51() { _start: { lean_object* x_1; @@ -12585,7 +12545,7 @@ x_1 = lean_mk_string_from_bytes("at", 2); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__56() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__52() { _start: { lean_object* x_1; @@ -12593,19 +12553,19 @@ x_1 = lean_mk_string_from_bytes("locationHyp", 11); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__53() { _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_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__1; x_2 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__2; x_3 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__17; -x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__56; +x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__52; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__58() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__54() { _start: { lean_object* x_1; @@ -12613,19 +12573,19 @@ x_1 = lean_mk_string_from_bytes("tacticRfl", 9); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__59() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__55() { _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_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__1; x_2 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__2; x_3 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__17; -x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__58; +x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__54; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__60() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__56() { _start: { lean_object* x_1; @@ -12633,14 +12593,14 @@ x_1 = lean_mk_string_from_bytes("contradiction", 13); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__61() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57() { _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_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__1; x_2 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__2; x_3 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__17; -x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__60; +x_4 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__56; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } @@ -12697,7 +12657,7 @@ x_27 = l_Lean_Elab_Command_getMainModule___rarg(x_3, x_26); x_28 = !lean_is_exclusive(x_27); 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; 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; 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; lean_object* x_219; 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; 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; uint8_t x_235; +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; 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; lean_object* x_219; lean_object* x_220; lean_object* x_221; lean_object* x_222; uint8_t x_223; x_29 = lean_ctor_get(x_27, 0); x_30 = lean_ctor_get(x_27, 1); x_31 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__14; @@ -12878,1968 +12838,1868 @@ lean_inc(x_22); x_102 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_102, 0, x_22); lean_ctor_set(x_102, 1, x_101); -x_103 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__32; +x_103 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__1; lean_inc(x_22); x_104 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_104, 0, x_22); lean_ctor_set(x_104, 1, x_103); -x_105 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__1; -lean_inc(x_22); -x_106 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_106, 0, x_22); -lean_ctor_set(x_106, 1, x_105); -x_107 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__35; +x_105 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__34; lean_inc(x_25); lean_inc(x_29); -x_108 = l_Lean_addMacroScope(x_29, x_107, x_25); -x_109 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__34; -lean_inc(x_22); -x_110 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_110, 0, x_22); -lean_ctor_set(x_110, 1, x_109); -lean_ctor_set(x_110, 2, x_108); -lean_ctor_set(x_110, 3, x_42); -x_111 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__8; -lean_inc(x_110); -lean_inc(x_22); -x_112 = l_Lean_Syntax_node1(x_22, x_111, x_110); -x_113 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__38; +x_106 = l_Lean_addMacroScope(x_29, x_105, x_25); +x_107 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__33; +lean_inc(x_22); +x_108 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_108, 0, x_22); +lean_ctor_set(x_108, 1, x_107); +lean_ctor_set(x_108, 2, x_106); +lean_ctor_set(x_108, 3, x_42); +x_109 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__8; +lean_inc(x_108); +lean_inc(x_22); +x_110 = l_Lean_Syntax_node1(x_22, x_109, x_108); +x_111 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__37; lean_inc(x_25); lean_inc(x_29); -x_114 = l_Lean_addMacroScope(x_29, x_113, x_25); -x_115 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__37; -x_116 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__40; -lean_inc(x_22); -x_117 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_117, 0, x_22); -lean_ctor_set(x_117, 1, x_115); -lean_ctor_set(x_117, 2, x_114); -lean_ctor_set(x_117, 3, x_116); +x_112 = l_Lean_addMacroScope(x_29, x_111, x_25); +x_113 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__36; +x_114 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__39; +lean_inc(x_22); +x_115 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_115, 0, x_22); +lean_ctor_set(x_115, 1, x_113); +lean_ctor_set(x_115, 2, x_112); +lean_ctor_set(x_115, 3, x_114); lean_inc(x_73); lean_inc(x_22); -x_118 = l_Lean_Syntax_node2(x_22, x_31, x_13, x_73); +x_116 = l_Lean_Syntax_node2(x_22, x_31, x_13, x_73); lean_inc(x_22); -x_119 = l_Lean_Syntax_node2(x_22, x_48, x_117, x_118); -x_120 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__6; +x_117 = l_Lean_Syntax_node2(x_22, x_48, x_115, x_116); +x_118 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__6; lean_inc(x_17); lean_inc_n(x_33, 2); lean_inc(x_22); -x_121 = l_Lean_Syntax_node5(x_22, x_120, x_112, x_33, x_33, x_17, x_119); -x_122 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__4; +x_119 = l_Lean_Syntax_node5(x_22, x_118, x_110, x_33, x_33, x_17, x_117); +x_120 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__4; +lean_inc(x_22); +x_121 = l_Lean_Syntax_node1(x_22, x_120, x_119); +x_122 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__31; lean_inc(x_22); -x_123 = l_Lean_Syntax_node1(x_22, x_122, x_121); +x_123 = l_Lean_Syntax_node2(x_22, x_122, x_104, x_121); x_124 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__22; lean_inc(x_22); x_125 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_125, 0, x_22); lean_ctor_set(x_125, 1, x_124); -x_126 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__43; +x_126 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__42; lean_inc(x_22); x_127 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_127, 0, x_22); lean_ctor_set(x_127, 1, x_126); -x_128 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__48; +x_128 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__45; lean_inc(x_22); x_129 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_129, 0, x_22); lean_ctor_set(x_129, 1, x_128); -x_130 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__47; -lean_inc(x_22); -x_131 = l_Lean_Syntax_node1(x_22, x_130, x_129); -x_132 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__42; -lean_inc(x_22); -x_133 = l_Lean_Syntax_node2(x_22, x_132, x_127, x_131); -x_134 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__2; -lean_inc(x_125); -lean_inc(x_22); -x_135 = l_Lean_Syntax_node4(x_22, x_134, x_106, x_123, x_125, x_133); -x_136 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__31; -lean_inc(x_22); -x_137 = l_Lean_Syntax_node2(x_22, x_136, x_104, x_135); -x_138 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__46; -lean_inc(x_22); -x_139 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_139, 0, x_22); -lean_ctor_set(x_139, 1, x_138); -x_140 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__49; -lean_inc(x_22); -x_141 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_141, 0, x_22); -lean_ctor_set(x_141, 1, x_140); -x_142 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__51; +x_130 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__47; lean_inc(x_33); lean_inc(x_22); -x_143 = l_Lean_Syntax_node2(x_22, x_142, x_33, x_16); -x_144 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__6; +x_131 = l_Lean_Syntax_node2(x_22, x_130, x_33, x_16); +x_132 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__6; lean_inc(x_22); -x_145 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_145, 0, x_22); -lean_ctor_set(x_145, 1, x_144); -lean_inc(x_143); +x_133 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_133, 0, x_22); +lean_ctor_set(x_133, 1, x_132); +lean_inc(x_131); lean_inc(x_22); -x_146 = l_Lean_Syntax_node3(x_22, x_31, x_143, x_145, x_143); -x_147 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__52; +x_134 = l_Lean_Syntax_node3(x_22, x_31, x_131, x_133, x_131); +x_135 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__48; lean_inc(x_22); -x_148 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_148, 0, x_22); -lean_ctor_set(x_148, 1, x_147); -x_149 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__48; +x_136 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_136, 0, x_22); +lean_ctor_set(x_136, 1, x_135); +x_137 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__44; lean_inc(x_22); -x_150 = l_Lean_Syntax_node3(x_22, x_149, x_141, x_146, x_148); -x_151 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__55; +x_138 = l_Lean_Syntax_node3(x_22, x_137, x_129, x_134, x_136); +x_139 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__51; lean_inc(x_22); -x_152 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_152, 0, x_22); -lean_ctor_set(x_152, 1, x_151); +x_140 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_140, 0, x_22); +lean_ctor_set(x_140, 1, x_139); lean_inc(x_22); -x_153 = l_Lean_Syntax_node1(x_22, x_31, x_110); -x_154 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57; +x_141 = l_Lean_Syntax_node1(x_22, x_31, x_108); +x_142 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__53; lean_inc(x_33); lean_inc(x_22); -x_155 = l_Lean_Syntax_node2(x_22, x_154, x_153, x_33); -x_156 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__54; +x_143 = l_Lean_Syntax_node2(x_22, x_142, x_141, x_33); +x_144 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__50; lean_inc(x_22); -x_157 = l_Lean_Syntax_node2(x_22, x_156, x_152, x_155); +x_145 = l_Lean_Syntax_node2(x_22, x_144, x_140, x_143); lean_inc(x_22); -x_158 = l_Lean_Syntax_node1(x_22, x_31, x_157); -x_159 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__45; +x_146 = l_Lean_Syntax_node1(x_22, x_31, x_145); +x_147 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__41; lean_inc(x_33); lean_inc(x_22); -x_160 = l_Lean_Syntax_node4(x_22, x_159, x_139, x_33, x_150, x_158); -x_161 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__49; +x_148 = l_Lean_Syntax_node4(x_22, x_147, x_127, x_33, x_138, x_146); +x_149 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__49; lean_inc(x_22); -x_162 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_162, 0, x_22); -lean_ctor_set(x_162, 1, x_161); -x_163 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__50; +x_150 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_150, 0, x_22); +lean_ctor_set(x_150, 1, x_149); +x_151 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__50; lean_inc(x_22); -x_164 = l_Lean_Syntax_node1(x_22, x_163, x_162); +x_152 = l_Lean_Syntax_node1(x_22, x_151, x_150); lean_inc_n(x_125, 2); lean_inc(x_22); -x_165 = l_Lean_Syntax_node5(x_22, x_31, x_137, x_125, x_160, x_125, x_164); -x_166 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__21; +x_153 = l_Lean_Syntax_node5(x_22, x_31, x_123, x_125, x_148, x_125, x_152); +x_154 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__21; lean_inc(x_22); -x_167 = l_Lean_Syntax_node1(x_22, x_166, x_165); -x_168 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__19; +x_155 = l_Lean_Syntax_node1(x_22, x_154, x_153); +x_156 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__19; lean_inc(x_22); -x_169 = l_Lean_Syntax_node1(x_22, x_168, x_167); -x_170 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__29; +x_157 = l_Lean_Syntax_node1(x_22, x_156, x_155); +x_158 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__29; lean_inc(x_102); lean_inc(x_22); -x_171 = l_Lean_Syntax_node2(x_22, x_170, x_102, x_169); -x_172 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__11; +x_159 = l_Lean_Syntax_node2(x_22, x_158, x_102, x_157); +x_160 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__11; lean_inc(x_22); -x_173 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_173, 0, x_22); -lean_ctor_set(x_173, 1, x_172); -x_174 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__59; +x_161 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_161, 0, x_22); +lean_ctor_set(x_161, 1, x_160); +x_162 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__55; lean_inc(x_22); -x_175 = l_Lean_Syntax_node1(x_22, x_174, x_173); +x_163 = l_Lean_Syntax_node1(x_22, x_162, x_161); lean_inc(x_22); -x_176 = l_Lean_Syntax_node1(x_22, x_31, x_175); +x_164 = l_Lean_Syntax_node1(x_22, x_31, x_163); lean_inc(x_22); -x_177 = l_Lean_Syntax_node1(x_22, x_166, x_176); +x_165 = l_Lean_Syntax_node1(x_22, x_154, x_164); lean_inc(x_22); -x_178 = l_Lean_Syntax_node1(x_22, x_168, x_177); +x_166 = l_Lean_Syntax_node1(x_22, x_156, x_165); lean_inc(x_22); -x_179 = l_Lean_Syntax_node2(x_22, x_170, x_102, x_178); +x_167 = l_Lean_Syntax_node2(x_22, x_158, x_102, x_166); lean_inc(x_22); -x_180 = l_Lean_Syntax_node2(x_22, x_31, x_171, x_179); -x_181 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__27; +x_168 = l_Lean_Syntax_node2(x_22, x_31, x_159, x_167); +x_169 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__27; lean_inc(x_22); -x_182 = l_Lean_Syntax_node2(x_22, x_181, x_100, x_180); +x_170 = l_Lean_Syntax_node2(x_22, x_169, x_100, x_168); lean_inc(x_22); -x_183 = l_Lean_Syntax_node1(x_22, x_31, x_182); +x_171 = l_Lean_Syntax_node1(x_22, x_31, x_170); lean_inc(x_22); -x_184 = l_Lean_Syntax_node1(x_22, x_166, x_183); +x_172 = l_Lean_Syntax_node1(x_22, x_154, x_171); lean_inc(x_22); -x_185 = l_Lean_Syntax_node1(x_22, x_168, x_184); -x_186 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__15; +x_173 = l_Lean_Syntax_node1(x_22, x_156, x_172); +x_174 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__15; lean_inc(x_98); lean_inc(x_22); -x_187 = l_Lean_Syntax_node2(x_22, x_186, x_98, x_185); -x_188 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__51; +x_175 = l_Lean_Syntax_node2(x_22, x_174, x_98, x_173); +x_176 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__51; lean_inc(x_22); -x_189 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_189, 0, x_22); -lean_ctor_set(x_189, 1, x_188); -x_190 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__35; +x_177 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_177, 0, x_22); +lean_ctor_set(x_177, 1, x_176); +x_178 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__35; lean_inc(x_22); -x_191 = l_Lean_Syntax_node3(x_22, x_190, x_96, x_187, x_189); +x_179 = l_Lean_Syntax_node3(x_22, x_178, x_96, x_175, x_177); lean_inc(x_22); -x_192 = l_Lean_Syntax_node1(x_22, x_31, x_191); +x_180 = l_Lean_Syntax_node1(x_22, x_31, x_179); lean_inc(x_22); -x_193 = l_Lean_Syntax_node2(x_22, x_48, x_94, x_192); -x_194 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__26; +x_181 = l_Lean_Syntax_node2(x_22, x_48, x_94, x_180); +x_182 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__26; lean_inc(x_22); -x_195 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_195, 0, x_22); -lean_ctor_set(x_195, 1, x_194); -x_196 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__29; -x_197 = l_Lean_addMacroScope(x_29, x_196, x_25); -x_198 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__28; -x_199 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__33; +x_183 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_183, 0, x_22); +lean_ctor_set(x_183, 1, x_182); +x_184 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__29; +x_185 = l_Lean_addMacroScope(x_29, x_184, x_25); +x_186 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__28; +x_187 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__33; lean_inc(x_22); -x_200 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_200, 0, x_22); -lean_ctor_set(x_200, 1, x_198); -lean_ctor_set(x_200, 2, x_197); -lean_ctor_set(x_200, 3, x_199); +x_188 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_188, 0, x_22); +lean_ctor_set(x_188, 1, x_186); +lean_ctor_set(x_188, 2, x_185); +lean_ctor_set(x_188, 3, x_187); lean_inc(x_22); -x_201 = l_Lean_Syntax_node1(x_22, x_31, x_73); -x_202 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__22; +x_189 = l_Lean_Syntax_node1(x_22, x_31, x_73); +x_190 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__22; lean_inc(x_22); -x_203 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_203, 0, x_22); -lean_ctor_set(x_203, 1, x_202); -x_204 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__23; -lean_inc(x_201); +x_191 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_191, 0, x_22); +lean_ctor_set(x_191, 1, x_190); +x_192 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__23; +lean_inc(x_189); lean_inc(x_22); -x_205 = l_Lean_Syntax_node2(x_22, x_204, x_203, x_201); -x_206 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__60; +x_193 = l_Lean_Syntax_node2(x_22, x_192, x_191, x_189); +x_194 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__56; lean_inc(x_22); -x_207 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_207, 0, x_22); -lean_ctor_set(x_207, 1, x_206); -x_208 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__61; +x_195 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_195, 0, x_22); +lean_ctor_set(x_195, 1, x_194); +x_196 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57; lean_inc(x_22); -x_209 = l_Lean_Syntax_node1(x_22, x_208, x_207); +x_197 = l_Lean_Syntax_node1(x_22, x_196, x_195); lean_inc(x_22); -x_210 = l_Lean_Syntax_node3(x_22, x_31, x_205, x_125, x_209); +x_198 = l_Lean_Syntax_node3(x_22, x_31, x_193, x_125, x_197); lean_inc(x_22); -x_211 = l_Lean_Syntax_node1(x_22, x_166, x_210); +x_199 = l_Lean_Syntax_node1(x_22, x_154, x_198); lean_inc(x_22); -x_212 = l_Lean_Syntax_node1(x_22, x_168, x_211); +x_200 = l_Lean_Syntax_node1(x_22, x_156, x_199); lean_inc(x_22); -x_213 = l_Lean_Syntax_node2(x_22, x_186, x_98, x_212); -x_214 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__13; +x_201 = l_Lean_Syntax_node2(x_22, x_174, x_98, x_200); +x_202 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__13; lean_inc(x_67); lean_inc(x_33); lean_inc(x_22); -x_215 = l_Lean_Syntax_node4(x_22, x_214, x_201, x_33, x_67, x_213); -x_216 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__11; +x_203 = l_Lean_Syntax_node4(x_22, x_202, x_189, x_33, x_67, x_201); +x_204 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__11; lean_inc(x_56); lean_inc(x_22); -x_217 = l_Lean_Syntax_node2(x_22, x_216, x_56, x_215); +x_205 = l_Lean_Syntax_node2(x_22, x_204, x_56, x_203); lean_inc(x_22); -x_218 = l_Lean_Syntax_node1(x_22, x_31, x_217); +x_206 = l_Lean_Syntax_node1(x_22, x_31, x_205); lean_inc(x_22); -x_219 = l_Lean_Syntax_node2(x_22, x_48, x_200, x_218); -x_220 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__2; +x_207 = l_Lean_Syntax_node2(x_22, x_48, x_188, x_206); +x_208 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__2; lean_inc(x_22); -x_221 = l_Lean_Syntax_node8(x_22, x_220, x_69, x_75, x_23, x_87, x_89, x_193, x_195, x_219); +x_209 = l_Lean_Syntax_node8(x_22, x_208, x_69, x_75, x_23, x_87, x_89, x_181, x_183, x_207); lean_inc(x_33); lean_inc(x_22); -x_222 = l_Lean_Syntax_node4(x_22, x_214, x_65, x_33, x_67, x_221); +x_210 = l_Lean_Syntax_node4(x_22, x_202, x_65, x_33, x_67, x_209); lean_inc(x_22); -x_223 = l_Lean_Syntax_node2(x_22, x_216, x_56, x_222); -x_224 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__19; +x_211 = l_Lean_Syntax_node2(x_22, x_204, x_56, x_210); +x_212 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__19; lean_inc_n(x_33, 2); lean_inc(x_22); -x_225 = l_Lean_Syntax_node2(x_22, x_224, x_33, x_33); -x_226 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__16; +x_213 = l_Lean_Syntax_node2(x_22, x_212, x_33, x_33); +x_214 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__16; lean_inc(x_33); lean_inc(x_22); -x_227 = l_Lean_Syntax_node4(x_22, x_226, x_17, x_223, x_225, x_33); -x_228 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__2; +x_215 = l_Lean_Syntax_node4(x_22, x_214, x_17, x_211, x_213, x_33); +x_216 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__2; lean_inc(x_33); lean_inc(x_22); -x_229 = l_Lean_Syntax_node6(x_22, x_228, x_37, x_27, x_33, x_33, x_53, x_227); -x_230 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__3; -x_231 = l_Lean_Syntax_node2(x_22, x_230, x_35, x_229); -x_232 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__5; -x_233 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Command_runLinters___spec__11(x_232, x_2, x_3, x_30); -x_234 = lean_ctor_get(x_233, 0); -lean_inc(x_234); -x_235 = lean_unbox(x_234); -lean_dec(x_234); -if (x_235 == 0) +x_217 = l_Lean_Syntax_node6(x_22, x_216, x_37, x_27, x_33, x_33, x_53, x_215); +x_218 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__3; +x_219 = l_Lean_Syntax_node2(x_22, x_218, x_35, x_217); +x_220 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__5; +x_221 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Command_runLinters___spec__11(x_220, x_2, x_3, x_30); +x_222 = lean_ctor_get(x_221, 0); +lean_inc(x_222); +x_223 = lean_unbox(x_222); +lean_dec(x_222); +if (x_223 == 0) { -lean_object* x_236; lean_object* x_237; -x_236 = lean_ctor_get(x_233, 1); -lean_inc(x_236); -lean_dec(x_233); -x_237 = l_Lean_Elab_Command_elabCommand(x_231, x_2, x_3, x_236); -return x_237; +lean_object* x_224; lean_object* x_225; +x_224 = lean_ctor_get(x_221, 1); +lean_inc(x_224); +lean_dec(x_221); +x_225 = l_Lean_Elab_Command_elabCommand(x_219, x_2, x_3, x_224); +return x_225; } else { -uint8_t x_238; -x_238 = !lean_is_exclusive(x_233); -if (x_238 == 0) +uint8_t x_226; +x_226 = !lean_is_exclusive(x_221); +if (x_226 == 0) { -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; -x_239 = lean_ctor_get(x_233, 1); -x_240 = lean_ctor_get(x_233, 0); -lean_dec(x_240); -lean_inc(x_231); -x_241 = l_Lean_MessageData_ofSyntax(x_231); -x_242 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__7; -lean_ctor_set_tag(x_233, 7); -lean_ctor_set(x_233, 1, x_241); -lean_ctor_set(x_233, 0, x_242); -x_243 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__12; -x_244 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_244, 0, x_233); -lean_ctor_set(x_244, 1, x_243); -x_245 = l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__7(x_232, x_244, x_2, x_3, x_239); -x_246 = lean_ctor_get(x_245, 1); -lean_inc(x_246); -lean_dec(x_245); -x_247 = l_Lean_Elab_Command_elabCommand(x_231, x_2, x_3, x_246); -return x_247; +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; +x_227 = lean_ctor_get(x_221, 1); +x_228 = lean_ctor_get(x_221, 0); +lean_dec(x_228); +lean_inc(x_219); +x_229 = l_Lean_MessageData_ofSyntax(x_219); +x_230 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__7; +lean_ctor_set_tag(x_221, 7); +lean_ctor_set(x_221, 1, x_229); +lean_ctor_set(x_221, 0, x_230); +x_231 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__12; +x_232 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_232, 0, x_221); +lean_ctor_set(x_232, 1, x_231); +x_233 = l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__7(x_220, x_232, x_2, x_3, x_227); +x_234 = lean_ctor_get(x_233, 1); +lean_inc(x_234); +lean_dec(x_233); +x_235 = l_Lean_Elab_Command_elabCommand(x_219, x_2, x_3, x_234); +return x_235; } else { -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; -x_248 = lean_ctor_get(x_233, 1); -lean_inc(x_248); -lean_dec(x_233); -lean_inc(x_231); -x_249 = l_Lean_MessageData_ofSyntax(x_231); -x_250 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__7; -x_251 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_251, 0, x_250); -lean_ctor_set(x_251, 1, x_249); -x_252 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__12; -x_253 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_253, 0, x_251); -lean_ctor_set(x_253, 1, x_252); -x_254 = l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__7(x_232, x_253, x_2, x_3, x_248); -x_255 = lean_ctor_get(x_254, 1); -lean_inc(x_255); -lean_dec(x_254); -x_256 = l_Lean_Elab_Command_elabCommand(x_231, x_2, x_3, x_255); -return x_256; +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; +x_236 = lean_ctor_get(x_221, 1); +lean_inc(x_236); +lean_dec(x_221); +lean_inc(x_219); +x_237 = l_Lean_MessageData_ofSyntax(x_219); +x_238 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__7; +x_239 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_239, 0, x_238); +lean_ctor_set(x_239, 1, x_237); +x_240 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__12; +x_241 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_241, 0, x_239); +lean_ctor_set(x_241, 1, x_240); +x_242 = l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__7(x_220, x_241, x_2, x_3, x_236); +x_243 = lean_ctor_get(x_242, 1); +lean_inc(x_243); +lean_dec(x_242); +x_244 = l_Lean_Elab_Command_elabCommand(x_219, x_2, x_3, x_243); +return x_244; } } } else { -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; 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; 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; 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_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_object* x_325; lean_object* x_326; lean_object* x_327; lean_object* x_328; 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_object* x_342; lean_object* x_343; lean_object* x_344; 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_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; 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_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; 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; 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_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_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_object* x_440; lean_object* x_441; lean_object* x_442; 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; 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; uint8_t x_464; -x_257 = lean_ctor_get(x_27, 0); -x_258 = lean_ctor_get(x_27, 1); -lean_inc(x_258); -lean_inc(x_257); +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; 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; 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; 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; 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_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_object* x_325; lean_object* x_326; lean_object* x_327; lean_object* x_328; 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_object* x_342; lean_object* x_343; lean_object* x_344; 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_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; 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_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; 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; 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_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_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; uint8_t x_440; +x_245 = lean_ctor_get(x_27, 0); +x_246 = lean_ctor_get(x_27, 1); +lean_inc(x_246); +lean_inc(x_245); lean_dec(x_27); -x_259 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__14; -x_260 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__15; -lean_inc(x_22); -x_261 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_261, 0, x_22); -lean_ctor_set(x_261, 1, x_259); -lean_ctor_set(x_261, 2, x_260); -x_262 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__5; -lean_inc_n(x_261, 6); -lean_inc(x_22); -x_263 = l_Lean_Syntax_node6(x_22, x_262, x_261, x_261, x_261, x_261, x_261, x_261); -x_264 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__4; -lean_inc(x_261); +x_247 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__14; +x_248 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__15; +lean_inc(x_22); +x_249 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_249, 0, x_22); +lean_ctor_set(x_249, 1, x_247); +lean_ctor_set(x_249, 2, x_248); +x_250 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__5; +lean_inc_n(x_249, 6); +lean_inc(x_22); +x_251 = l_Lean_Syntax_node6(x_22, x_250, x_249, x_249, x_249, x_249, x_249, x_249); +x_252 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__4; +lean_inc(x_249); lean_inc(x_22); -x_265 = l_Lean_Syntax_node1(x_22, x_264, x_261); -x_266 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__1; +x_253 = l_Lean_Syntax_node1(x_22, x_252, x_249); +x_254 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__1; lean_inc(x_22); -x_267 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_267, 0, x_22); -lean_ctor_set(x_267, 1, x_266); -x_268 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__9; +x_255 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_255, 0, x_22); +lean_ctor_set(x_255, 1, x_254); +x_256 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__9; lean_inc(x_22); lean_ctor_set_tag(x_23, 2); -lean_ctor_set(x_23, 1, x_268); +lean_ctor_set(x_23, 1, x_256); lean_ctor_set(x_23, 0, x_22); -x_269 = l_Lean_Elab_Deriving_DecEq_mkDecEqHeader___closed__2; +x_257 = l_Lean_Elab_Deriving_DecEq_mkDecEqHeader___closed__2; lean_inc(x_25); -lean_inc(x_257); -x_270 = l_Lean_addMacroScope(x_257, x_269, x_25); -x_271 = lean_box(0); -x_272 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__7; -x_273 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__9; -lean_inc(x_22); -x_274 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_274, 0, x_22); -lean_ctor_set(x_274, 1, x_272); -lean_ctor_set(x_274, 2, x_270); -lean_ctor_set(x_274, 3, x_273); -x_275 = lean_mk_syntax_ident(x_1); -lean_inc(x_22); -x_276 = l_Lean_Syntax_node1(x_22, x_259, x_275); -x_277 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__18; +lean_inc(x_245); +x_258 = l_Lean_addMacroScope(x_245, x_257, x_25); +x_259 = lean_box(0); +x_260 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__7; +x_261 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__9; +lean_inc(x_22); +x_262 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_262, 0, x_22); +lean_ctor_set(x_262, 1, x_260); +lean_ctor_set(x_262, 2, x_258); +lean_ctor_set(x_262, 3, x_261); +x_263 = lean_mk_syntax_ident(x_1); +lean_inc(x_22); +x_264 = l_Lean_Syntax_node1(x_22, x_247, x_263); +x_265 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__18; lean_inc(x_22); -x_278 = l_Lean_Syntax_node2(x_22, x_277, x_274, x_276); -x_279 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__10; +x_266 = l_Lean_Syntax_node2(x_22, x_265, x_262, x_264); +x_267 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__10; lean_inc(x_23); lean_inc(x_22); -x_280 = l_Lean_Syntax_node2(x_22, x_279, x_23, x_278); -x_281 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__6; -lean_inc(x_261); +x_268 = l_Lean_Syntax_node2(x_22, x_267, x_23, x_266); +x_269 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__6; +lean_inc(x_249); lean_inc(x_22); -x_282 = l_Lean_Syntax_node2(x_22, x_281, x_261, x_280); -x_283 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__16; +x_270 = l_Lean_Syntax_node2(x_22, x_269, x_249, x_268); +x_271 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__16; lean_inc(x_22); lean_ctor_set_tag(x_17, 2); -lean_ctor_set(x_17, 1, x_283); +lean_ctor_set(x_17, 1, x_271); lean_ctor_set(x_17, 0, x_22); -x_284 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__10; +x_272 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__10; lean_inc(x_22); -x_285 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_285, 0, x_22); -lean_ctor_set(x_285, 1, x_284); -x_286 = l_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm___closed__10; -lean_inc(x_25); -lean_inc(x_257); -x_287 = l_Lean_addMacroScope(x_257, x_286, x_25); -x_288 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__14; -lean_inc(x_22); -x_289 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_289, 0, x_22); -lean_ctor_set(x_289, 1, x_288); -lean_ctor_set(x_289, 2, x_287); -lean_ctor_set(x_289, 3, x_271); -x_290 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__17; +x_273 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_273, 0, x_22); +lean_ctor_set(x_273, 1, x_272); +x_274 = l_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm___closed__10; lean_inc(x_25); -lean_inc(x_257); -x_291 = l_Lean_addMacroScope(x_257, x_290, x_25); -x_292 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__16; -lean_inc(x_22); -x_293 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_293, 0, x_22); -lean_ctor_set(x_293, 1, x_292); -lean_ctor_set(x_293, 2, x_291); -lean_ctor_set(x_293, 3, x_271); +lean_inc(x_245); +x_275 = l_Lean_addMacroScope(x_245, x_274, x_25); +x_276 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__14; lean_inc(x_22); -x_294 = l_Lean_Syntax_node2(x_22, x_259, x_289, x_293); -x_295 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__8; +x_277 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_277, 0, x_22); +lean_ctor_set(x_277, 1, x_276); +lean_ctor_set(x_277, 2, x_275); +lean_ctor_set(x_277, 3, x_259); +x_278 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__17; +lean_inc(x_25); +lean_inc(x_245); +x_279 = l_Lean_addMacroScope(x_245, x_278, x_25); +x_280 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__16; +lean_inc(x_22); +x_281 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_281, 0, x_22); +lean_ctor_set(x_281, 1, x_280); +lean_ctor_set(x_281, 2, x_279); +lean_ctor_set(x_281, 3, x_259); +lean_inc(x_22); +x_282 = l_Lean_Syntax_node2(x_22, x_247, x_277, x_281); +x_283 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__8; +lean_inc(x_22); +x_284 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_284, 0, x_22); +lean_ctor_set(x_284, 1, x_283); +x_285 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__3; +lean_inc(x_22); +x_286 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_286, 0, x_22); +lean_ctor_set(x_286, 1, x_285); +x_287 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__8; +lean_inc(x_25); +lean_inc(x_245); +x_288 = l_Lean_addMacroScope(x_245, x_287, x_25); +x_289 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__7; +lean_inc(x_22); +x_290 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_290, 0, x_22); +lean_ctor_set(x_290, 1, x_289); +lean_ctor_set(x_290, 2, x_288); +lean_ctor_set(x_290, 3, x_259); +x_291 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__5; +lean_inc(x_290); +lean_inc(x_22); +x_292 = l_Lean_Syntax_node1(x_22, x_291, x_290); +x_293 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__20; +lean_inc(x_25); +lean_inc(x_245); +x_294 = l_Lean_addMacroScope(x_245, x_293, x_25); +x_295 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__19; lean_inc(x_22); -x_296 = lean_alloc_ctor(2, 2, 0); +x_296 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_296, 0, x_22); lean_ctor_set(x_296, 1, x_295); -x_297 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__3; +lean_ctor_set(x_296, 2, x_294); +lean_ctor_set(x_296, 3, x_259); +x_297 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__12; lean_inc(x_22); x_298 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_298, 0, x_22); lean_ctor_set(x_298, 1, x_297); -x_299 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__8; +x_299 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__23; lean_inc(x_25); -lean_inc(x_257); -x_300 = l_Lean_addMacroScope(x_257, x_299, x_25); -x_301 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__7; +lean_inc(x_245); +x_300 = l_Lean_addMacroScope(x_245, x_299, x_25); +x_301 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__22; lean_inc(x_22); x_302 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_302, 0, x_22); lean_ctor_set(x_302, 1, x_301); lean_ctor_set(x_302, 2, x_300); -lean_ctor_set(x_302, 3, x_271); -x_303 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__5; -lean_inc(x_302); +lean_ctor_set(x_302, 3, x_259); +x_303 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__11; +lean_inc(x_22); +x_304 = l_Lean_Syntax_node3(x_22, x_303, x_296, x_298, x_302); +x_305 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__13; lean_inc(x_22); -x_304 = l_Lean_Syntax_node1(x_22, x_303, x_302); -x_305 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__20; +x_306 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_306, 0, x_22); +lean_ctor_set(x_306, 1, x_305); +x_307 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__3; lean_inc(x_25); -lean_inc(x_257); -x_306 = l_Lean_addMacroScope(x_257, x_305, x_25); -x_307 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__19; -lean_inc(x_22); -x_308 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_308, 0, x_22); -lean_ctor_set(x_308, 1, x_307); -lean_ctor_set(x_308, 2, x_306); -lean_ctor_set(x_308, 3, x_271); -x_309 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__12; -lean_inc(x_22); -x_310 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_310, 0, x_22); -lean_ctor_set(x_310, 1, x_309); -x_311 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__23; +lean_inc(x_245); +x_308 = l_Lean_addMacroScope(x_245, x_307, x_25); +x_309 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__2; +x_310 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__25; +lean_inc(x_22); +x_311 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_311, 0, x_22); +lean_ctor_set(x_311, 1, x_309); +lean_ctor_set(x_311, 2, x_308); +lean_ctor_set(x_311, 3, x_310); +x_312 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__36; +lean_inc(x_22); +x_313 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_313, 0, x_22); +lean_ctor_set(x_313, 1, x_312); +x_314 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__16; +lean_inc(x_22); +x_315 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_315, 0, x_22); +lean_ctor_set(x_315, 1, x_314); +x_316 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__26; +lean_inc(x_22); +x_317 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_317, 0, x_22); +lean_ctor_set(x_317, 1, x_316); +x_318 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__5; +lean_inc(x_22); +x_319 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_319, 0, x_22); +lean_ctor_set(x_319, 1, x_318); +x_320 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__1; +lean_inc(x_22); +x_321 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_321, 0, x_22); +lean_ctor_set(x_321, 1, x_320); +x_322 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__34; lean_inc(x_25); -lean_inc(x_257); -x_312 = l_Lean_addMacroScope(x_257, x_311, x_25); -x_313 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__22; -lean_inc(x_22); -x_314 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_314, 0, x_22); -lean_ctor_set(x_314, 1, x_313); -lean_ctor_set(x_314, 2, x_312); -lean_ctor_set(x_314, 3, x_271); -x_315 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__11; -lean_inc(x_22); -x_316 = l_Lean_Syntax_node3(x_22, x_315, x_308, x_310, x_314); -x_317 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__13; +lean_inc(x_245); +x_323 = l_Lean_addMacroScope(x_245, x_322, x_25); +x_324 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__33; lean_inc(x_22); -x_318 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_318, 0, x_22); -lean_ctor_set(x_318, 1, x_317); -x_319 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__3; -lean_inc(x_25); -lean_inc(x_257); -x_320 = l_Lean_addMacroScope(x_257, x_319, x_25); -x_321 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__2; -x_322 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__25; -lean_inc(x_22); -x_323 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_323, 0, x_22); -lean_ctor_set(x_323, 1, x_321); -lean_ctor_set(x_323, 2, x_320); -lean_ctor_set(x_323, 3, x_322); -x_324 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__36; -lean_inc(x_22); -x_325 = lean_alloc_ctor(2, 2, 0); +x_325 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_325, 0, x_22); lean_ctor_set(x_325, 1, x_324); -x_326 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__16; -lean_inc(x_22); -x_327 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_327, 0, x_22); -lean_ctor_set(x_327, 1, x_326); -x_328 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__26; -lean_inc(x_22); -x_329 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_329, 0, x_22); -lean_ctor_set(x_329, 1, x_328); -x_330 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__5; -lean_inc(x_22); -x_331 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_331, 0, x_22); -lean_ctor_set(x_331, 1, x_330); -x_332 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__32; -lean_inc(x_22); -x_333 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_333, 0, x_22); -lean_ctor_set(x_333, 1, x_332); -x_334 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__1; +lean_ctor_set(x_325, 2, x_323); +lean_ctor_set(x_325, 3, x_259); +x_326 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__8; +lean_inc(x_325); lean_inc(x_22); -x_335 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_335, 0, x_22); -lean_ctor_set(x_335, 1, x_334); -x_336 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__35; -lean_inc(x_25); -lean_inc(x_257); -x_337 = l_Lean_addMacroScope(x_257, x_336, x_25); -x_338 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__34; -lean_inc(x_22); -x_339 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_339, 0, x_22); -lean_ctor_set(x_339, 1, x_338); -lean_ctor_set(x_339, 2, x_337); -lean_ctor_set(x_339, 3, x_271); -x_340 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__8; -lean_inc(x_339); -lean_inc(x_22); -x_341 = l_Lean_Syntax_node1(x_22, x_340, x_339); -x_342 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__38; +x_327 = l_Lean_Syntax_node1(x_22, x_326, x_325); +x_328 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__37; lean_inc(x_25); -lean_inc(x_257); -x_343 = l_Lean_addMacroScope(x_257, x_342, x_25); -x_344 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__37; -x_345 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__40; +lean_inc(x_245); +x_329 = l_Lean_addMacroScope(x_245, x_328, x_25); +x_330 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__36; +x_331 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__39; lean_inc(x_22); -x_346 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_346, 0, x_22); -lean_ctor_set(x_346, 1, x_344); -lean_ctor_set(x_346, 2, x_343); -lean_ctor_set(x_346, 3, x_345); -lean_inc(x_302); +x_332 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_332, 0, x_22); +lean_ctor_set(x_332, 1, x_330); +lean_ctor_set(x_332, 2, x_329); +lean_ctor_set(x_332, 3, x_331); +lean_inc(x_290); lean_inc(x_22); -x_347 = l_Lean_Syntax_node2(x_22, x_259, x_13, x_302); +x_333 = l_Lean_Syntax_node2(x_22, x_247, x_13, x_290); lean_inc(x_22); -x_348 = l_Lean_Syntax_node2(x_22, x_277, x_346, x_347); -x_349 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__6; +x_334 = l_Lean_Syntax_node2(x_22, x_265, x_332, x_333); +x_335 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__6; lean_inc(x_17); -lean_inc_n(x_261, 2); +lean_inc_n(x_249, 2); lean_inc(x_22); -x_350 = l_Lean_Syntax_node5(x_22, x_349, x_341, x_261, x_261, x_17, x_348); -x_351 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__4; +x_336 = l_Lean_Syntax_node5(x_22, x_335, x_327, x_249, x_249, x_17, x_334); +x_337 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__4; lean_inc(x_22); -x_352 = l_Lean_Syntax_node1(x_22, x_351, x_350); -x_353 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__22; +x_338 = l_Lean_Syntax_node1(x_22, x_337, x_336); +x_339 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__31; lean_inc(x_22); -x_354 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_354, 0, x_22); -lean_ctor_set(x_354, 1, x_353); -x_355 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__43; -lean_inc(x_22); -x_356 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_356, 0, x_22); -lean_ctor_set(x_356, 1, x_355); -x_357 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__48; -lean_inc(x_22); -x_358 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_358, 0, x_22); -lean_ctor_set(x_358, 1, x_357); -x_359 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__47; -lean_inc(x_22); -x_360 = l_Lean_Syntax_node1(x_22, x_359, x_358); -x_361 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__42; -lean_inc(x_22); -x_362 = l_Lean_Syntax_node2(x_22, x_361, x_356, x_360); -x_363 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__2; -lean_inc(x_354); +x_340 = l_Lean_Syntax_node2(x_22, x_339, x_321, x_338); +x_341 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__22; lean_inc(x_22); -x_364 = l_Lean_Syntax_node4(x_22, x_363, x_335, x_352, x_354, x_362); -x_365 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__31; +x_342 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_342, 0, x_22); +lean_ctor_set(x_342, 1, x_341); +x_343 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__42; lean_inc(x_22); -x_366 = l_Lean_Syntax_node2(x_22, x_365, x_333, x_364); -x_367 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__46; +x_344 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_344, 0, x_22); +lean_ctor_set(x_344, 1, x_343); +x_345 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__45; lean_inc(x_22); -x_368 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_368, 0, x_22); -lean_ctor_set(x_368, 1, x_367); -x_369 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__49; -lean_inc(x_22); -x_370 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_370, 0, x_22); -lean_ctor_set(x_370, 1, x_369); -x_371 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__51; -lean_inc(x_261); +x_346 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_346, 0, x_22); +lean_ctor_set(x_346, 1, x_345); +x_347 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__47; +lean_inc(x_249); lean_inc(x_22); -x_372 = l_Lean_Syntax_node2(x_22, x_371, x_261, x_16); -x_373 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__6; +x_348 = l_Lean_Syntax_node2(x_22, x_347, x_249, x_16); +x_349 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__6; lean_inc(x_22); -x_374 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_374, 0, x_22); -lean_ctor_set(x_374, 1, x_373); -lean_inc(x_372); +x_350 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_350, 0, x_22); +lean_ctor_set(x_350, 1, x_349); +lean_inc(x_348); lean_inc(x_22); -x_375 = l_Lean_Syntax_node3(x_22, x_259, x_372, x_374, x_372); -x_376 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__52; +x_351 = l_Lean_Syntax_node3(x_22, x_247, x_348, x_350, x_348); +x_352 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__48; lean_inc(x_22); -x_377 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_377, 0, x_22); -lean_ctor_set(x_377, 1, x_376); -x_378 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__48; +x_353 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_353, 0, x_22); +lean_ctor_set(x_353, 1, x_352); +x_354 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__44; lean_inc(x_22); -x_379 = l_Lean_Syntax_node3(x_22, x_378, x_370, x_375, x_377); -x_380 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__55; +x_355 = l_Lean_Syntax_node3(x_22, x_354, x_346, x_351, x_353); +x_356 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__51; lean_inc(x_22); -x_381 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_381, 0, x_22); -lean_ctor_set(x_381, 1, x_380); +x_357 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_357, 0, x_22); +lean_ctor_set(x_357, 1, x_356); lean_inc(x_22); -x_382 = l_Lean_Syntax_node1(x_22, x_259, x_339); -x_383 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57; -lean_inc(x_261); +x_358 = l_Lean_Syntax_node1(x_22, x_247, x_325); +x_359 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__53; +lean_inc(x_249); lean_inc(x_22); -x_384 = l_Lean_Syntax_node2(x_22, x_383, x_382, x_261); -x_385 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__54; +x_360 = l_Lean_Syntax_node2(x_22, x_359, x_358, x_249); +x_361 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__50; lean_inc(x_22); -x_386 = l_Lean_Syntax_node2(x_22, x_385, x_381, x_384); +x_362 = l_Lean_Syntax_node2(x_22, x_361, x_357, x_360); lean_inc(x_22); -x_387 = l_Lean_Syntax_node1(x_22, x_259, x_386); -x_388 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__45; -lean_inc(x_261); +x_363 = l_Lean_Syntax_node1(x_22, x_247, x_362); +x_364 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__41; +lean_inc(x_249); lean_inc(x_22); -x_389 = l_Lean_Syntax_node4(x_22, x_388, x_368, x_261, x_379, x_387); -x_390 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__49; +x_365 = l_Lean_Syntax_node4(x_22, x_364, x_344, x_249, x_355, x_363); +x_366 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__49; lean_inc(x_22); -x_391 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_391, 0, x_22); -lean_ctor_set(x_391, 1, x_390); -x_392 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__50; +x_367 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_367, 0, x_22); +lean_ctor_set(x_367, 1, x_366); +x_368 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__50; lean_inc(x_22); -x_393 = l_Lean_Syntax_node1(x_22, x_392, x_391); -lean_inc_n(x_354, 2); +x_369 = l_Lean_Syntax_node1(x_22, x_368, x_367); +lean_inc_n(x_342, 2); lean_inc(x_22); -x_394 = l_Lean_Syntax_node5(x_22, x_259, x_366, x_354, x_389, x_354, x_393); -x_395 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__21; +x_370 = l_Lean_Syntax_node5(x_22, x_247, x_340, x_342, x_365, x_342, x_369); +x_371 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__21; lean_inc(x_22); -x_396 = l_Lean_Syntax_node1(x_22, x_395, x_394); -x_397 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__19; +x_372 = l_Lean_Syntax_node1(x_22, x_371, x_370); +x_373 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__19; lean_inc(x_22); -x_398 = l_Lean_Syntax_node1(x_22, x_397, x_396); -x_399 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__29; -lean_inc(x_331); +x_374 = l_Lean_Syntax_node1(x_22, x_373, x_372); +x_375 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__29; +lean_inc(x_319); lean_inc(x_22); -x_400 = l_Lean_Syntax_node2(x_22, x_399, x_331, x_398); -x_401 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__11; +x_376 = l_Lean_Syntax_node2(x_22, x_375, x_319, x_374); +x_377 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__11; lean_inc(x_22); -x_402 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_402, 0, x_22); -lean_ctor_set(x_402, 1, x_401); -x_403 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__59; +x_378 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_378, 0, x_22); +lean_ctor_set(x_378, 1, x_377); +x_379 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__55; lean_inc(x_22); -x_404 = l_Lean_Syntax_node1(x_22, x_403, x_402); +x_380 = l_Lean_Syntax_node1(x_22, x_379, x_378); lean_inc(x_22); -x_405 = l_Lean_Syntax_node1(x_22, x_259, x_404); +x_381 = l_Lean_Syntax_node1(x_22, x_247, x_380); lean_inc(x_22); -x_406 = l_Lean_Syntax_node1(x_22, x_395, x_405); +x_382 = l_Lean_Syntax_node1(x_22, x_371, x_381); lean_inc(x_22); -x_407 = l_Lean_Syntax_node1(x_22, x_397, x_406); +x_383 = l_Lean_Syntax_node1(x_22, x_373, x_382); lean_inc(x_22); -x_408 = l_Lean_Syntax_node2(x_22, x_399, x_331, x_407); +x_384 = l_Lean_Syntax_node2(x_22, x_375, x_319, x_383); lean_inc(x_22); -x_409 = l_Lean_Syntax_node2(x_22, x_259, x_400, x_408); -x_410 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__27; +x_385 = l_Lean_Syntax_node2(x_22, x_247, x_376, x_384); +x_386 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__27; lean_inc(x_22); -x_411 = l_Lean_Syntax_node2(x_22, x_410, x_329, x_409); +x_387 = l_Lean_Syntax_node2(x_22, x_386, x_317, x_385); lean_inc(x_22); -x_412 = l_Lean_Syntax_node1(x_22, x_259, x_411); +x_388 = l_Lean_Syntax_node1(x_22, x_247, x_387); lean_inc(x_22); -x_413 = l_Lean_Syntax_node1(x_22, x_395, x_412); +x_389 = l_Lean_Syntax_node1(x_22, x_371, x_388); lean_inc(x_22); -x_414 = l_Lean_Syntax_node1(x_22, x_397, x_413); -x_415 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__15; -lean_inc(x_327); +x_390 = l_Lean_Syntax_node1(x_22, x_373, x_389); +x_391 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__15; +lean_inc(x_315); lean_inc(x_22); -x_416 = l_Lean_Syntax_node2(x_22, x_415, x_327, x_414); -x_417 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__51; +x_392 = l_Lean_Syntax_node2(x_22, x_391, x_315, x_390); +x_393 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__51; lean_inc(x_22); -x_418 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_418, 0, x_22); -lean_ctor_set(x_418, 1, x_417); -x_419 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__35; +x_394 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_394, 0, x_22); +lean_ctor_set(x_394, 1, x_393); +x_395 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__35; lean_inc(x_22); -x_420 = l_Lean_Syntax_node3(x_22, x_419, x_325, x_416, x_418); +x_396 = l_Lean_Syntax_node3(x_22, x_395, x_313, x_392, x_394); lean_inc(x_22); -x_421 = l_Lean_Syntax_node1(x_22, x_259, x_420); +x_397 = l_Lean_Syntax_node1(x_22, x_247, x_396); lean_inc(x_22); -x_422 = l_Lean_Syntax_node2(x_22, x_277, x_323, x_421); -x_423 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__26; +x_398 = l_Lean_Syntax_node2(x_22, x_265, x_311, x_397); +x_399 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__26; lean_inc(x_22); -x_424 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_424, 0, x_22); -lean_ctor_set(x_424, 1, x_423); -x_425 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__29; -x_426 = l_Lean_addMacroScope(x_257, x_425, x_25); -x_427 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__28; -x_428 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__33; +x_400 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_400, 0, x_22); +lean_ctor_set(x_400, 1, x_399); +x_401 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__29; +x_402 = l_Lean_addMacroScope(x_245, x_401, x_25); +x_403 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__28; +x_404 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__33; lean_inc(x_22); -x_429 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_429, 0, x_22); -lean_ctor_set(x_429, 1, x_427); -lean_ctor_set(x_429, 2, x_426); -lean_ctor_set(x_429, 3, x_428); +x_405 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_405, 0, x_22); +lean_ctor_set(x_405, 1, x_403); +lean_ctor_set(x_405, 2, x_402); +lean_ctor_set(x_405, 3, x_404); lean_inc(x_22); -x_430 = l_Lean_Syntax_node1(x_22, x_259, x_302); -x_431 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__22; +x_406 = l_Lean_Syntax_node1(x_22, x_247, x_290); +x_407 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__22; lean_inc(x_22); -x_432 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_432, 0, x_22); -lean_ctor_set(x_432, 1, x_431); -x_433 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__23; -lean_inc(x_430); +x_408 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_408, 0, x_22); +lean_ctor_set(x_408, 1, x_407); +x_409 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__23; +lean_inc(x_406); lean_inc(x_22); -x_434 = l_Lean_Syntax_node2(x_22, x_433, x_432, x_430); -x_435 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__60; +x_410 = l_Lean_Syntax_node2(x_22, x_409, x_408, x_406); +x_411 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__56; lean_inc(x_22); -x_436 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_436, 0, x_22); -lean_ctor_set(x_436, 1, x_435); -x_437 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__61; +x_412 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_412, 0, x_22); +lean_ctor_set(x_412, 1, x_411); +x_413 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57; lean_inc(x_22); -x_438 = l_Lean_Syntax_node1(x_22, x_437, x_436); +x_414 = l_Lean_Syntax_node1(x_22, x_413, x_412); lean_inc(x_22); -x_439 = l_Lean_Syntax_node3(x_22, x_259, x_434, x_354, x_438); +x_415 = l_Lean_Syntax_node3(x_22, x_247, x_410, x_342, x_414); lean_inc(x_22); -x_440 = l_Lean_Syntax_node1(x_22, x_395, x_439); +x_416 = l_Lean_Syntax_node1(x_22, x_371, x_415); lean_inc(x_22); -x_441 = l_Lean_Syntax_node1(x_22, x_397, x_440); +x_417 = l_Lean_Syntax_node1(x_22, x_373, x_416); lean_inc(x_22); -x_442 = l_Lean_Syntax_node2(x_22, x_415, x_327, x_441); -x_443 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__13; -lean_inc(x_296); -lean_inc(x_261); +x_418 = l_Lean_Syntax_node2(x_22, x_391, x_315, x_417); +x_419 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__13; +lean_inc(x_284); +lean_inc(x_249); lean_inc(x_22); -x_444 = l_Lean_Syntax_node4(x_22, x_443, x_430, x_261, x_296, x_442); -x_445 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__11; -lean_inc(x_285); +x_420 = l_Lean_Syntax_node4(x_22, x_419, x_406, x_249, x_284, x_418); +x_421 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__11; +lean_inc(x_273); lean_inc(x_22); -x_446 = l_Lean_Syntax_node2(x_22, x_445, x_285, x_444); +x_422 = l_Lean_Syntax_node2(x_22, x_421, x_273, x_420); lean_inc(x_22); -x_447 = l_Lean_Syntax_node1(x_22, x_259, x_446); +x_423 = l_Lean_Syntax_node1(x_22, x_247, x_422); lean_inc(x_22); -x_448 = l_Lean_Syntax_node2(x_22, x_277, x_429, x_447); -x_449 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__2; +x_424 = l_Lean_Syntax_node2(x_22, x_265, x_405, x_423); +x_425 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__2; lean_inc(x_22); -x_450 = l_Lean_Syntax_node8(x_22, x_449, x_298, x_304, x_23, x_316, x_318, x_422, x_424, x_448); -lean_inc(x_261); +x_426 = l_Lean_Syntax_node8(x_22, x_425, x_286, x_292, x_23, x_304, x_306, x_398, x_400, x_424); +lean_inc(x_249); lean_inc(x_22); -x_451 = l_Lean_Syntax_node4(x_22, x_443, x_294, x_261, x_296, x_450); +x_427 = l_Lean_Syntax_node4(x_22, x_419, x_282, x_249, x_284, x_426); lean_inc(x_22); -x_452 = l_Lean_Syntax_node2(x_22, x_445, x_285, x_451); -x_453 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__19; -lean_inc_n(x_261, 2); +x_428 = l_Lean_Syntax_node2(x_22, x_421, x_273, x_427); +x_429 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__19; +lean_inc_n(x_249, 2); lean_inc(x_22); -x_454 = l_Lean_Syntax_node2(x_22, x_453, x_261, x_261); -x_455 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__16; -lean_inc(x_261); +x_430 = l_Lean_Syntax_node2(x_22, x_429, x_249, x_249); +x_431 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__16; +lean_inc(x_249); lean_inc(x_22); -x_456 = l_Lean_Syntax_node4(x_22, x_455, x_17, x_452, x_454, x_261); -x_457 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__2; -lean_inc(x_261); +x_432 = l_Lean_Syntax_node4(x_22, x_431, x_17, x_428, x_430, x_249); +x_433 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__2; +lean_inc(x_249); lean_inc(x_22); -x_458 = l_Lean_Syntax_node6(x_22, x_457, x_265, x_267, x_261, x_261, x_282, x_456); -x_459 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__3; -x_460 = l_Lean_Syntax_node2(x_22, x_459, x_263, x_458); -x_461 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__5; -x_462 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Command_runLinters___spec__11(x_461, x_2, x_3, x_258); -x_463 = lean_ctor_get(x_462, 0); -lean_inc(x_463); -x_464 = lean_unbox(x_463); -lean_dec(x_463); -if (x_464 == 0) -{ -lean_object* x_465; lean_object* x_466; -x_465 = lean_ctor_get(x_462, 1); -lean_inc(x_465); -lean_dec(x_462); -x_466 = l_Lean_Elab_Command_elabCommand(x_460, x_2, x_3, x_465); -return x_466; -} -else -{ -lean_object* x_467; lean_object* x_468; 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_467 = lean_ctor_get(x_462, 1); -lean_inc(x_467); -if (lean_is_exclusive(x_462)) { - lean_ctor_release(x_462, 0); - lean_ctor_release(x_462, 1); - x_468 = x_462; -} else { - lean_dec_ref(x_462); - x_468 = lean_box(0); -} -lean_inc(x_460); -x_469 = l_Lean_MessageData_ofSyntax(x_460); -x_470 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__7; -if (lean_is_scalar(x_468)) { - x_471 = lean_alloc_ctor(7, 2, 0); -} else { - x_471 = x_468; - lean_ctor_set_tag(x_471, 7); -} -lean_ctor_set(x_471, 0, x_470); -lean_ctor_set(x_471, 1, x_469); -x_472 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__12; -x_473 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_473, 0, x_471); -lean_ctor_set(x_473, 1, x_472); -x_474 = l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__7(x_461, x_473, x_2, x_3, x_467); -x_475 = lean_ctor_get(x_474, 1); -lean_inc(x_475); -lean_dec(x_474); -x_476 = l_Lean_Elab_Command_elabCommand(x_460, x_2, x_3, x_475); -return x_476; -} -} -} -else -{ -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_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; lean_object* 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; 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; 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; lean_object* x_552; lean_object* x_553; lean_object* x_554; lean_object* x_555; lean_object* x_556; lean_object* x_557; lean_object* x_558; 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_object* x_567; lean_object* x_568; 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; lean_object* x_587; lean_object* x_588; lean_object* x_589; lean_object* x_590; lean_object* x_591; lean_object* x_592; 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_603; lean_object* x_604; 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_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; 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; lean_object* x_641; lean_object* x_642; 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_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_object* x_657; lean_object* x_658; lean_object* x_659; lean_object* x_660; lean_object* x_661; 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_object* x_668; lean_object* x_669; lean_object* x_670; lean_object* x_671; lean_object* x_672; 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; lean_object* x_681; lean_object* x_682; lean_object* x_683; lean_object* x_684; lean_object* x_685; lean_object* x_686; lean_object* x_687; lean_object* x_688; uint8_t x_689; -x_477 = lean_ctor_get(x_23, 0); -x_478 = lean_ctor_get(x_23, 1); -lean_inc(x_478); -lean_inc(x_477); +x_434 = l_Lean_Syntax_node6(x_22, x_433, x_253, x_255, x_249, x_249, x_270, x_432); +x_435 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__3; +x_436 = l_Lean_Syntax_node2(x_22, x_435, x_251, x_434); +x_437 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__5; +x_438 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Command_runLinters___spec__11(x_437, x_2, x_3, x_246); +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; +x_441 = lean_ctor_get(x_438, 1); +lean_inc(x_441); +lean_dec(x_438); +x_442 = l_Lean_Elab_Command_elabCommand(x_436, x_2, x_3, x_441); +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; lean_object* x_451; lean_object* x_452; +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); +} +lean_inc(x_436); +x_445 = l_Lean_MessageData_ofSyntax(x_436); +x_446 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__7; +if (lean_is_scalar(x_444)) { + x_447 = lean_alloc_ctor(7, 2, 0); +} else { + x_447 = x_444; + lean_ctor_set_tag(x_447, 7); +} +lean_ctor_set(x_447, 0, x_446); +lean_ctor_set(x_447, 1, x_445); +x_448 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__12; +x_449 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_449, 0, x_447); +lean_ctor_set(x_449, 1, x_448); +x_450 = l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__7(x_437, x_449, x_2, x_3, x_443); +x_451 = lean_ctor_get(x_450, 1); +lean_inc(x_451); +lean_dec(x_450); +x_452 = l_Lean_Elab_Command_elabCommand(x_436, x_2, x_3, x_451); +return x_452; +} +} +} +else +{ +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; lean_object* x_468; 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; 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_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; lean_object* 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; 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; 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; lean_object* x_552; lean_object* x_553; lean_object* x_554; lean_object* x_555; lean_object* x_556; lean_object* x_557; lean_object* x_558; 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_object* x_567; lean_object* x_568; 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; lean_object* x_587; lean_object* x_588; lean_object* x_589; lean_object* x_590; lean_object* x_591; lean_object* x_592; 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_603; lean_object* x_604; 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_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; 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; lean_object* x_641; lean_object* x_642; 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_object* x_650; lean_object* x_651; lean_object* x_652; uint8_t x_653; +x_453 = lean_ctor_get(x_23, 0); +x_454 = lean_ctor_get(x_23, 1); +lean_inc(x_454); +lean_inc(x_453); lean_dec(x_23); -x_479 = l_Lean_Elab_Command_getMainModule___rarg(x_3, x_478); -x_480 = lean_ctor_get(x_479, 0); -lean_inc(x_480); -x_481 = lean_ctor_get(x_479, 1); -lean_inc(x_481); -if (lean_is_exclusive(x_479)) { - lean_ctor_release(x_479, 0); - lean_ctor_release(x_479, 1); - x_482 = x_479; -} else { - lean_dec_ref(x_479); - x_482 = lean_box(0); -} -x_483 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__14; -x_484 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__15; -lean_inc(x_22); -x_485 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_485, 0, x_22); -lean_ctor_set(x_485, 1, x_483); -lean_ctor_set(x_485, 2, x_484); -x_486 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__5; -lean_inc_n(x_485, 6); -lean_inc(x_22); -x_487 = l_Lean_Syntax_node6(x_22, x_486, x_485, x_485, x_485, x_485, x_485, x_485); -x_488 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__4; -lean_inc(x_485); -lean_inc(x_22); -x_489 = l_Lean_Syntax_node1(x_22, x_488, x_485); -x_490 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__1; +x_455 = l_Lean_Elab_Command_getMainModule___rarg(x_3, x_454); +x_456 = lean_ctor_get(x_455, 0); +lean_inc(x_456); +x_457 = lean_ctor_get(x_455, 1); +lean_inc(x_457); +if (lean_is_exclusive(x_455)) { + lean_ctor_release(x_455, 0); + lean_ctor_release(x_455, 1); + x_458 = x_455; +} else { + lean_dec_ref(x_455); + x_458 = lean_box(0); +} +x_459 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__14; +x_460 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__15; +lean_inc(x_22); +x_461 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_461, 0, x_22); +lean_ctor_set(x_461, 1, x_459); +lean_ctor_set(x_461, 2, x_460); +x_462 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__5; +lean_inc_n(x_461, 6); +lean_inc(x_22); +x_463 = l_Lean_Syntax_node6(x_22, x_462, x_461, x_461, x_461, x_461, x_461, x_461); +x_464 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__4; +lean_inc(x_461); +lean_inc(x_22); +x_465 = l_Lean_Syntax_node1(x_22, x_464, x_461); +x_466 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__1; +lean_inc(x_22); +if (lean_is_scalar(x_458)) { + x_467 = lean_alloc_ctor(2, 2, 0); +} else { + x_467 = x_458; + lean_ctor_set_tag(x_467, 2); +} +lean_ctor_set(x_467, 0, x_22); +lean_ctor_set(x_467, 1, x_466); +x_468 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__9; lean_inc(x_22); -if (lean_is_scalar(x_482)) { - x_491 = lean_alloc_ctor(2, 2, 0); -} else { - x_491 = x_482; - lean_ctor_set_tag(x_491, 2); -} -lean_ctor_set(x_491, 0, x_22); -lean_ctor_set(x_491, 1, x_490); -x_492 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__9; +x_469 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_469, 0, x_22); +lean_ctor_set(x_469, 1, x_468); +x_470 = l_Lean_Elab_Deriving_DecEq_mkDecEqHeader___closed__2; +lean_inc(x_453); +lean_inc(x_456); +x_471 = l_Lean_addMacroScope(x_456, x_470, x_453); +x_472 = lean_box(0); +x_473 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__7; +x_474 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__9; +lean_inc(x_22); +x_475 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_475, 0, x_22); +lean_ctor_set(x_475, 1, x_473); +lean_ctor_set(x_475, 2, x_471); +lean_ctor_set(x_475, 3, x_474); +x_476 = lean_mk_syntax_ident(x_1); lean_inc(x_22); -x_493 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_493, 0, x_22); -lean_ctor_set(x_493, 1, x_492); -x_494 = l_Lean_Elab_Deriving_DecEq_mkDecEqHeader___closed__2; -lean_inc(x_477); -lean_inc(x_480); -x_495 = l_Lean_addMacroScope(x_480, x_494, x_477); -x_496 = lean_box(0); -x_497 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__7; -x_498 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__9; +x_477 = l_Lean_Syntax_node1(x_22, x_459, x_476); +x_478 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__18; lean_inc(x_22); -x_499 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_499, 0, x_22); -lean_ctor_set(x_499, 1, x_497); -lean_ctor_set(x_499, 2, x_495); -lean_ctor_set(x_499, 3, x_498); -x_500 = lean_mk_syntax_ident(x_1); +x_479 = l_Lean_Syntax_node2(x_22, x_478, x_475, x_477); +x_480 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__10; +lean_inc(x_469); lean_inc(x_22); -x_501 = l_Lean_Syntax_node1(x_22, x_483, x_500); -x_502 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__18; +x_481 = l_Lean_Syntax_node2(x_22, x_480, x_469, x_479); +x_482 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__6; +lean_inc(x_461); lean_inc(x_22); -x_503 = l_Lean_Syntax_node2(x_22, x_502, x_499, x_501); -x_504 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__10; -lean_inc(x_493); -lean_inc(x_22); -x_505 = l_Lean_Syntax_node2(x_22, x_504, x_493, x_503); -x_506 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__6; -lean_inc(x_485); -lean_inc(x_22); -x_507 = l_Lean_Syntax_node2(x_22, x_506, x_485, x_505); -x_508 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__16; +x_483 = l_Lean_Syntax_node2(x_22, x_482, x_461, x_481); +x_484 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__16; lean_inc(x_22); lean_ctor_set_tag(x_17, 2); -lean_ctor_set(x_17, 1, x_508); +lean_ctor_set(x_17, 1, x_484); lean_ctor_set(x_17, 0, x_22); -x_509 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__10; +x_485 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__10; lean_inc(x_22); -x_510 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_510, 0, x_22); -lean_ctor_set(x_510, 1, x_509); -x_511 = l_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm___closed__10; -lean_inc(x_477); -lean_inc(x_480); -x_512 = l_Lean_addMacroScope(x_480, x_511, x_477); -x_513 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__14; -lean_inc(x_22); -x_514 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_514, 0, x_22); -lean_ctor_set(x_514, 1, x_513); -lean_ctor_set(x_514, 2, x_512); -lean_ctor_set(x_514, 3, x_496); -x_515 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__17; -lean_inc(x_477); -lean_inc(x_480); -x_516 = l_Lean_addMacroScope(x_480, x_515, x_477); -x_517 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__16; -lean_inc(x_22); -x_518 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_518, 0, x_22); -lean_ctor_set(x_518, 1, x_517); -lean_ctor_set(x_518, 2, x_516); -lean_ctor_set(x_518, 3, x_496); -lean_inc(x_22); -x_519 = l_Lean_Syntax_node2(x_22, x_483, x_514, x_518); -x_520 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__8; -lean_inc(x_22); -x_521 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_521, 0, x_22); -lean_ctor_set(x_521, 1, x_520); -x_522 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__3; -lean_inc(x_22); -x_523 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_523, 0, x_22); -lean_ctor_set(x_523, 1, x_522); -x_524 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__8; -lean_inc(x_477); -lean_inc(x_480); -x_525 = l_Lean_addMacroScope(x_480, x_524, x_477); -x_526 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__7; -lean_inc(x_22); -x_527 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_527, 0, x_22); -lean_ctor_set(x_527, 1, x_526); -lean_ctor_set(x_527, 2, x_525); -lean_ctor_set(x_527, 3, x_496); -x_528 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__5; -lean_inc(x_527); -lean_inc(x_22); -x_529 = l_Lean_Syntax_node1(x_22, x_528, x_527); -x_530 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__20; -lean_inc(x_477); -lean_inc(x_480); -x_531 = l_Lean_addMacroScope(x_480, x_530, x_477); -x_532 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__19; -lean_inc(x_22); -x_533 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_533, 0, x_22); -lean_ctor_set(x_533, 1, x_532); -lean_ctor_set(x_533, 2, x_531); -lean_ctor_set(x_533, 3, x_496); -x_534 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__12; -lean_inc(x_22); -x_535 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_535, 0, x_22); -lean_ctor_set(x_535, 1, x_534); -x_536 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__23; -lean_inc(x_477); -lean_inc(x_480); -x_537 = l_Lean_addMacroScope(x_480, x_536, x_477); -x_538 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__22; -lean_inc(x_22); -x_539 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_539, 0, x_22); -lean_ctor_set(x_539, 1, x_538); -lean_ctor_set(x_539, 2, x_537); -lean_ctor_set(x_539, 3, x_496); -x_540 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__11; -lean_inc(x_22); -x_541 = l_Lean_Syntax_node3(x_22, x_540, x_533, x_535, x_539); -x_542 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__13; -lean_inc(x_22); -x_543 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_543, 0, x_22); -lean_ctor_set(x_543, 1, x_542); -x_544 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__3; -lean_inc(x_477); -lean_inc(x_480); -x_545 = l_Lean_addMacroScope(x_480, x_544, x_477); -x_546 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__2; -x_547 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__25; -lean_inc(x_22); -x_548 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_548, 0, x_22); -lean_ctor_set(x_548, 1, x_546); -lean_ctor_set(x_548, 2, x_545); -lean_ctor_set(x_548, 3, x_547); -x_549 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__36; -lean_inc(x_22); -x_550 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_550, 0, x_22); -lean_ctor_set(x_550, 1, x_549); -x_551 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__16; -lean_inc(x_22); -x_552 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_552, 0, x_22); -lean_ctor_set(x_552, 1, x_551); -x_553 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__26; -lean_inc(x_22); -x_554 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_554, 0, x_22); -lean_ctor_set(x_554, 1, x_553); -x_555 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__5; -lean_inc(x_22); -x_556 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_556, 0, x_22); -lean_ctor_set(x_556, 1, x_555); -x_557 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__32; -lean_inc(x_22); -x_558 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_558, 0, x_22); -lean_ctor_set(x_558, 1, x_557); -x_559 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__1; -lean_inc(x_22); -x_560 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_560, 0, x_22); -lean_ctor_set(x_560, 1, x_559); -x_561 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__35; -lean_inc(x_477); -lean_inc(x_480); -x_562 = l_Lean_addMacroScope(x_480, x_561, x_477); -x_563 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__34; +x_486 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_486, 0, x_22); +lean_ctor_set(x_486, 1, x_485); +x_487 = l_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm___closed__10; +lean_inc(x_453); +lean_inc(x_456); +x_488 = l_Lean_addMacroScope(x_456, x_487, x_453); +x_489 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__14; +lean_inc(x_22); +x_490 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_490, 0, x_22); +lean_ctor_set(x_490, 1, x_489); +lean_ctor_set(x_490, 2, x_488); +lean_ctor_set(x_490, 3, x_472); +x_491 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__17; +lean_inc(x_453); +lean_inc(x_456); +x_492 = l_Lean_addMacroScope(x_456, x_491, x_453); +x_493 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__16; lean_inc(x_22); -x_564 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_564, 0, x_22); -lean_ctor_set(x_564, 1, x_563); -lean_ctor_set(x_564, 2, x_562); -lean_ctor_set(x_564, 3, x_496); -x_565 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__8; -lean_inc(x_564); +x_494 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_494, 0, x_22); +lean_ctor_set(x_494, 1, x_493); +lean_ctor_set(x_494, 2, x_492); +lean_ctor_set(x_494, 3, x_472); lean_inc(x_22); -x_566 = l_Lean_Syntax_node1(x_22, x_565, x_564); -x_567 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__38; -lean_inc(x_477); -lean_inc(x_480); -x_568 = l_Lean_addMacroScope(x_480, x_567, x_477); -x_569 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__37; -x_570 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__40; -lean_inc(x_22); -x_571 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_571, 0, x_22); -lean_ctor_set(x_571, 1, x_569); -lean_ctor_set(x_571, 2, x_568); -lean_ctor_set(x_571, 3, x_570); -lean_inc(x_527); +x_495 = l_Lean_Syntax_node2(x_22, x_459, x_490, x_494); +x_496 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__8; lean_inc(x_22); -x_572 = l_Lean_Syntax_node2(x_22, x_483, x_13, x_527); +x_497 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_497, 0, x_22); +lean_ctor_set(x_497, 1, x_496); +x_498 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__3; lean_inc(x_22); -x_573 = l_Lean_Syntax_node2(x_22, x_502, x_571, x_572); -x_574 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__6; -lean_inc(x_17); -lean_inc_n(x_485, 2); +x_499 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_499, 0, x_22); +lean_ctor_set(x_499, 1, x_498); +x_500 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__8; +lean_inc(x_453); +lean_inc(x_456); +x_501 = l_Lean_addMacroScope(x_456, x_500, x_453); +x_502 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__7; +lean_inc(x_22); +x_503 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_503, 0, x_22); +lean_ctor_set(x_503, 1, x_502); +lean_ctor_set(x_503, 2, x_501); +lean_ctor_set(x_503, 3, x_472); +x_504 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__5; +lean_inc(x_503); +lean_inc(x_22); +x_505 = l_Lean_Syntax_node1(x_22, x_504, x_503); +x_506 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__20; +lean_inc(x_453); +lean_inc(x_456); +x_507 = l_Lean_addMacroScope(x_456, x_506, x_453); +x_508 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__19; +lean_inc(x_22); +x_509 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_509, 0, x_22); +lean_ctor_set(x_509, 1, x_508); +lean_ctor_set(x_509, 2, x_507); +lean_ctor_set(x_509, 3, x_472); +x_510 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__12; +lean_inc(x_22); +x_511 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_511, 0, x_22); +lean_ctor_set(x_511, 1, x_510); +x_512 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__23; +lean_inc(x_453); +lean_inc(x_456); +x_513 = l_Lean_addMacroScope(x_456, x_512, x_453); +x_514 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__22; +lean_inc(x_22); +x_515 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_515, 0, x_22); +lean_ctor_set(x_515, 1, x_514); +lean_ctor_set(x_515, 2, x_513); +lean_ctor_set(x_515, 3, x_472); +x_516 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__11; +lean_inc(x_22); +x_517 = l_Lean_Syntax_node3(x_22, x_516, x_509, x_511, x_515); +x_518 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__13; +lean_inc(x_22); +x_519 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_519, 0, x_22); +lean_ctor_set(x_519, 1, x_518); +x_520 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__3; +lean_inc(x_453); +lean_inc(x_456); +x_521 = l_Lean_addMacroScope(x_456, x_520, x_453); +x_522 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__2; +x_523 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__25; +lean_inc(x_22); +x_524 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_524, 0, x_22); +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_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__36; +lean_inc(x_22); +x_526 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_526, 0, x_22); +lean_ctor_set(x_526, 1, x_525); +x_527 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__16; +lean_inc(x_22); +x_528 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_528, 0, x_22); +lean_ctor_set(x_528, 1, x_527); +x_529 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__26; +lean_inc(x_22); +x_530 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_530, 0, x_22); +lean_ctor_set(x_530, 1, x_529); +x_531 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__5; +lean_inc(x_22); +x_532 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_532, 0, x_22); +lean_ctor_set(x_532, 1, x_531); +x_533 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__1; +lean_inc(x_22); +x_534 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_534, 0, x_22); +lean_ctor_set(x_534, 1, x_533); +x_535 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__34; +lean_inc(x_453); +lean_inc(x_456); +x_536 = l_Lean_addMacroScope(x_456, x_535, x_453); +x_537 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__33; +lean_inc(x_22); +x_538 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_538, 0, x_22); +lean_ctor_set(x_538, 1, x_537); +lean_ctor_set(x_538, 2, x_536); +lean_ctor_set(x_538, 3, x_472); +x_539 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__8; +lean_inc(x_538); lean_inc(x_22); -x_575 = l_Lean_Syntax_node5(x_22, x_574, x_566, x_485, x_485, x_17, x_573); -x_576 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__4; +x_540 = l_Lean_Syntax_node1(x_22, x_539, x_538); +x_541 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__37; +lean_inc(x_453); +lean_inc(x_456); +x_542 = l_Lean_addMacroScope(x_456, x_541, x_453); +x_543 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__36; +x_544 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__39; lean_inc(x_22); -x_577 = l_Lean_Syntax_node1(x_22, x_576, x_575); -x_578 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__22; +x_545 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_545, 0, x_22); +lean_ctor_set(x_545, 1, x_543); +lean_ctor_set(x_545, 2, x_542); +lean_ctor_set(x_545, 3, x_544); +lean_inc(x_503); lean_inc(x_22); -x_579 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_579, 0, x_22); -lean_ctor_set(x_579, 1, x_578); -x_580 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__43; +x_546 = l_Lean_Syntax_node2(x_22, x_459, x_13, x_503); lean_inc(x_22); -x_581 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_581, 0, x_22); -lean_ctor_set(x_581, 1, x_580); -x_582 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__48; +x_547 = l_Lean_Syntax_node2(x_22, x_478, x_545, x_546); +x_548 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__6; +lean_inc(x_17); +lean_inc_n(x_461, 2); lean_inc(x_22); -x_583 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_583, 0, x_22); -lean_ctor_set(x_583, 1, x_582); -x_584 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__47; +x_549 = l_Lean_Syntax_node5(x_22, x_548, x_540, x_461, x_461, x_17, x_547); +x_550 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__4; lean_inc(x_22); -x_585 = l_Lean_Syntax_node1(x_22, x_584, x_583); -x_586 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__42; +x_551 = l_Lean_Syntax_node1(x_22, x_550, x_549); +x_552 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__31; lean_inc(x_22); -x_587 = l_Lean_Syntax_node2(x_22, x_586, x_581, x_585); -x_588 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__2; -lean_inc(x_579); +x_553 = l_Lean_Syntax_node2(x_22, x_552, x_534, x_551); +x_554 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__22; lean_inc(x_22); -x_589 = l_Lean_Syntax_node4(x_22, x_588, x_560, x_577, x_579, x_587); -x_590 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__31; +x_555 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_555, 0, x_22); +lean_ctor_set(x_555, 1, x_554); +x_556 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__42; lean_inc(x_22); -x_591 = l_Lean_Syntax_node2(x_22, x_590, x_558, x_589); -x_592 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__46; +x_557 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_557, 0, x_22); +lean_ctor_set(x_557, 1, x_556); +x_558 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__45; lean_inc(x_22); -x_593 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_593, 0, x_22); -lean_ctor_set(x_593, 1, x_592); -x_594 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__49; +x_559 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_559, 0, x_22); +lean_ctor_set(x_559, 1, x_558); +x_560 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__47; +lean_inc(x_461); lean_inc(x_22); -x_595 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_595, 0, x_22); -lean_ctor_set(x_595, 1, x_594); -x_596 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__51; -lean_inc(x_485); +x_561 = l_Lean_Syntax_node2(x_22, x_560, x_461, x_16); +x_562 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__6; lean_inc(x_22); -x_597 = l_Lean_Syntax_node2(x_22, x_596, x_485, x_16); -x_598 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__6; +x_563 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_563, 0, x_22); +lean_ctor_set(x_563, 1, x_562); +lean_inc(x_561); lean_inc(x_22); -x_599 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_599, 0, x_22); -lean_ctor_set(x_599, 1, x_598); -lean_inc(x_597); +x_564 = l_Lean_Syntax_node3(x_22, x_459, x_561, x_563, x_561); +x_565 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__48; lean_inc(x_22); -x_600 = l_Lean_Syntax_node3(x_22, x_483, x_597, x_599, x_597); -x_601 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__52; +x_566 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_566, 0, x_22); +lean_ctor_set(x_566, 1, x_565); +x_567 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__44; lean_inc(x_22); -x_602 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_602, 0, x_22); -lean_ctor_set(x_602, 1, x_601); -x_603 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__48; +x_568 = l_Lean_Syntax_node3(x_22, x_567, x_559, x_564, x_566); +x_569 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__51; lean_inc(x_22); -x_604 = l_Lean_Syntax_node3(x_22, x_603, x_595, x_600, x_602); -x_605 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__55; +x_570 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_570, 0, x_22); +lean_ctor_set(x_570, 1, x_569); lean_inc(x_22); -x_606 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_606, 0, x_22); -lean_ctor_set(x_606, 1, x_605); +x_571 = l_Lean_Syntax_node1(x_22, x_459, x_538); +x_572 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__53; +lean_inc(x_461); lean_inc(x_22); -x_607 = l_Lean_Syntax_node1(x_22, x_483, x_564); -x_608 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57; -lean_inc(x_485); +x_573 = l_Lean_Syntax_node2(x_22, x_572, x_571, x_461); +x_574 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__50; lean_inc(x_22); -x_609 = l_Lean_Syntax_node2(x_22, x_608, x_607, x_485); -x_610 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__54; +x_575 = l_Lean_Syntax_node2(x_22, x_574, x_570, x_573); lean_inc(x_22); -x_611 = l_Lean_Syntax_node2(x_22, x_610, x_606, x_609); +x_576 = l_Lean_Syntax_node1(x_22, x_459, x_575); +x_577 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__41; +lean_inc(x_461); lean_inc(x_22); -x_612 = l_Lean_Syntax_node1(x_22, x_483, x_611); -x_613 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__45; -lean_inc(x_485); +x_578 = l_Lean_Syntax_node4(x_22, x_577, x_557, x_461, x_568, x_576); +x_579 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__49; lean_inc(x_22); -x_614 = l_Lean_Syntax_node4(x_22, x_613, x_593, x_485, x_604, x_612); -x_615 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__49; +x_580 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_580, 0, x_22); +lean_ctor_set(x_580, 1, x_579); +x_581 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__50; lean_inc(x_22); -x_616 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_616, 0, x_22); -lean_ctor_set(x_616, 1, x_615); -x_617 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__50; +x_582 = l_Lean_Syntax_node1(x_22, x_581, x_580); +lean_inc_n(x_555, 2); lean_inc(x_22); -x_618 = l_Lean_Syntax_node1(x_22, x_617, x_616); -lean_inc_n(x_579, 2); +x_583 = l_Lean_Syntax_node5(x_22, x_459, x_553, x_555, x_578, x_555, x_582); +x_584 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__21; lean_inc(x_22); -x_619 = l_Lean_Syntax_node5(x_22, x_483, x_591, x_579, x_614, x_579, x_618); -x_620 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__21; +x_585 = l_Lean_Syntax_node1(x_22, x_584, x_583); +x_586 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__19; lean_inc(x_22); -x_621 = l_Lean_Syntax_node1(x_22, x_620, x_619); -x_622 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__19; +x_587 = l_Lean_Syntax_node1(x_22, x_586, x_585); +x_588 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__29; +lean_inc(x_532); lean_inc(x_22); -x_623 = l_Lean_Syntax_node1(x_22, x_622, x_621); -x_624 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__29; -lean_inc(x_556); +x_589 = l_Lean_Syntax_node2(x_22, x_588, x_532, x_587); +x_590 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__11; lean_inc(x_22); -x_625 = l_Lean_Syntax_node2(x_22, x_624, x_556, x_623); -x_626 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__11; +x_591 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_591, 0, x_22); +lean_ctor_set(x_591, 1, x_590); +x_592 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__55; lean_inc(x_22); -x_627 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_627, 0, x_22); -lean_ctor_set(x_627, 1, x_626); -x_628 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__59; +x_593 = l_Lean_Syntax_node1(x_22, x_592, x_591); lean_inc(x_22); -x_629 = l_Lean_Syntax_node1(x_22, x_628, x_627); +x_594 = l_Lean_Syntax_node1(x_22, x_459, x_593); lean_inc(x_22); -x_630 = l_Lean_Syntax_node1(x_22, x_483, x_629); +x_595 = l_Lean_Syntax_node1(x_22, x_584, x_594); lean_inc(x_22); -x_631 = l_Lean_Syntax_node1(x_22, x_620, x_630); +x_596 = l_Lean_Syntax_node1(x_22, x_586, x_595); lean_inc(x_22); -x_632 = l_Lean_Syntax_node1(x_22, x_622, x_631); +x_597 = l_Lean_Syntax_node2(x_22, x_588, x_532, x_596); lean_inc(x_22); -x_633 = l_Lean_Syntax_node2(x_22, x_624, x_556, x_632); +x_598 = l_Lean_Syntax_node2(x_22, x_459, x_589, x_597); +x_599 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__27; lean_inc(x_22); -x_634 = l_Lean_Syntax_node2(x_22, x_483, x_625, x_633); -x_635 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__27; +x_600 = l_Lean_Syntax_node2(x_22, x_599, x_530, x_598); lean_inc(x_22); -x_636 = l_Lean_Syntax_node2(x_22, x_635, x_554, x_634); +x_601 = l_Lean_Syntax_node1(x_22, x_459, x_600); lean_inc(x_22); -x_637 = l_Lean_Syntax_node1(x_22, x_483, x_636); +x_602 = l_Lean_Syntax_node1(x_22, x_584, x_601); lean_inc(x_22); -x_638 = l_Lean_Syntax_node1(x_22, x_620, x_637); +x_603 = l_Lean_Syntax_node1(x_22, x_586, x_602); +x_604 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__15; +lean_inc(x_528); lean_inc(x_22); -x_639 = l_Lean_Syntax_node1(x_22, x_622, x_638); -x_640 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__15; -lean_inc(x_552); +x_605 = l_Lean_Syntax_node2(x_22, x_604, x_528, x_603); +x_606 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__51; lean_inc(x_22); -x_641 = l_Lean_Syntax_node2(x_22, x_640, x_552, x_639); -x_642 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__51; +x_607 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_607, 0, x_22); +lean_ctor_set(x_607, 1, x_606); +x_608 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__35; lean_inc(x_22); -x_643 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_643, 0, x_22); -lean_ctor_set(x_643, 1, x_642); -x_644 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__35; +x_609 = l_Lean_Syntax_node3(x_22, x_608, x_526, x_605, x_607); lean_inc(x_22); -x_645 = l_Lean_Syntax_node3(x_22, x_644, x_550, x_641, x_643); +x_610 = l_Lean_Syntax_node1(x_22, x_459, x_609); lean_inc(x_22); -x_646 = l_Lean_Syntax_node1(x_22, x_483, x_645); +x_611 = l_Lean_Syntax_node2(x_22, x_478, x_524, x_610); +x_612 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__26; lean_inc(x_22); -x_647 = l_Lean_Syntax_node2(x_22, x_502, x_548, x_646); -x_648 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__26; +x_613 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_613, 0, x_22); +lean_ctor_set(x_613, 1, x_612); +x_614 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__29; +x_615 = l_Lean_addMacroScope(x_456, x_614, x_453); +x_616 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__28; +x_617 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__33; lean_inc(x_22); -x_649 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_649, 0, x_22); -lean_ctor_set(x_649, 1, x_648); -x_650 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__29; -x_651 = l_Lean_addMacroScope(x_480, x_650, x_477); -x_652 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__28; -x_653 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__33; +x_618 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_618, 0, x_22); +lean_ctor_set(x_618, 1, x_616); +lean_ctor_set(x_618, 2, x_615); +lean_ctor_set(x_618, 3, x_617); lean_inc(x_22); -x_654 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_654, 0, x_22); -lean_ctor_set(x_654, 1, x_652); -lean_ctor_set(x_654, 2, x_651); -lean_ctor_set(x_654, 3, x_653); +x_619 = l_Lean_Syntax_node1(x_22, x_459, x_503); +x_620 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__22; lean_inc(x_22); -x_655 = l_Lean_Syntax_node1(x_22, x_483, x_527); -x_656 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__22; +x_621 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_621, 0, x_22); +lean_ctor_set(x_621, 1, x_620); +x_622 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__23; +lean_inc(x_619); lean_inc(x_22); -x_657 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_657, 0, x_22); -lean_ctor_set(x_657, 1, x_656); -x_658 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__23; -lean_inc(x_655); +x_623 = l_Lean_Syntax_node2(x_22, x_622, x_621, x_619); +x_624 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__56; lean_inc(x_22); -x_659 = l_Lean_Syntax_node2(x_22, x_658, x_657, x_655); -x_660 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__60; +x_625 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_625, 0, x_22); +lean_ctor_set(x_625, 1, x_624); +x_626 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57; lean_inc(x_22); -x_661 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_661, 0, x_22); -lean_ctor_set(x_661, 1, x_660); -x_662 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__61; +x_627 = l_Lean_Syntax_node1(x_22, x_626, x_625); lean_inc(x_22); -x_663 = l_Lean_Syntax_node1(x_22, x_662, x_661); +x_628 = l_Lean_Syntax_node3(x_22, x_459, x_623, x_555, x_627); lean_inc(x_22); -x_664 = l_Lean_Syntax_node3(x_22, x_483, x_659, x_579, x_663); +x_629 = l_Lean_Syntax_node1(x_22, x_584, x_628); lean_inc(x_22); -x_665 = l_Lean_Syntax_node1(x_22, x_620, x_664); +x_630 = l_Lean_Syntax_node1(x_22, x_586, x_629); lean_inc(x_22); -x_666 = l_Lean_Syntax_node1(x_22, x_622, x_665); +x_631 = l_Lean_Syntax_node2(x_22, x_604, x_528, x_630); +x_632 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__13; +lean_inc(x_497); +lean_inc(x_461); lean_inc(x_22); -x_667 = l_Lean_Syntax_node2(x_22, x_640, x_552, x_666); -x_668 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__13; -lean_inc(x_521); -lean_inc(x_485); +x_633 = l_Lean_Syntax_node4(x_22, x_632, x_619, x_461, x_497, x_631); +x_634 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__11; +lean_inc(x_486); lean_inc(x_22); -x_669 = l_Lean_Syntax_node4(x_22, x_668, x_655, x_485, x_521, x_667); -x_670 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__11; -lean_inc(x_510); +x_635 = l_Lean_Syntax_node2(x_22, x_634, x_486, x_633); lean_inc(x_22); -x_671 = l_Lean_Syntax_node2(x_22, x_670, x_510, x_669); +x_636 = l_Lean_Syntax_node1(x_22, x_459, x_635); lean_inc(x_22); -x_672 = l_Lean_Syntax_node1(x_22, x_483, x_671); +x_637 = l_Lean_Syntax_node2(x_22, x_478, x_618, x_636); +x_638 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__2; lean_inc(x_22); -x_673 = l_Lean_Syntax_node2(x_22, x_502, x_654, x_672); -x_674 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__2; +x_639 = l_Lean_Syntax_node8(x_22, x_638, x_499, x_505, x_469, x_517, x_519, x_611, x_613, x_637); +lean_inc(x_461); lean_inc(x_22); -x_675 = l_Lean_Syntax_node8(x_22, x_674, x_523, x_529, x_493, x_541, x_543, x_647, x_649, x_673); -lean_inc(x_485); +x_640 = l_Lean_Syntax_node4(x_22, x_632, x_495, x_461, x_497, x_639); lean_inc(x_22); -x_676 = l_Lean_Syntax_node4(x_22, x_668, x_519, x_485, x_521, x_675); +x_641 = l_Lean_Syntax_node2(x_22, x_634, x_486, x_640); +x_642 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__19; +lean_inc_n(x_461, 2); lean_inc(x_22); -x_677 = l_Lean_Syntax_node2(x_22, x_670, x_510, x_676); -x_678 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__19; -lean_inc_n(x_485, 2); +x_643 = l_Lean_Syntax_node2(x_22, x_642, x_461, x_461); +x_644 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__16; +lean_inc(x_461); lean_inc(x_22); -x_679 = l_Lean_Syntax_node2(x_22, x_678, x_485, x_485); -x_680 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__16; -lean_inc(x_485); +x_645 = l_Lean_Syntax_node4(x_22, x_644, x_17, x_641, x_643, x_461); +x_646 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__2; +lean_inc(x_461); lean_inc(x_22); -x_681 = l_Lean_Syntax_node4(x_22, x_680, x_17, x_677, x_679, x_485); -x_682 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__2; -lean_inc(x_485); -lean_inc(x_22); -x_683 = l_Lean_Syntax_node6(x_22, x_682, x_489, x_491, x_485, x_485, x_507, x_681); -x_684 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__3; -x_685 = l_Lean_Syntax_node2(x_22, x_684, x_487, x_683); -x_686 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__5; -x_687 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Command_runLinters___spec__11(x_686, x_2, x_3, x_481); -x_688 = lean_ctor_get(x_687, 0); -lean_inc(x_688); -x_689 = lean_unbox(x_688); -lean_dec(x_688); -if (x_689 == 0) -{ -lean_object* x_690; lean_object* x_691; -x_690 = lean_ctor_get(x_687, 1); -lean_inc(x_690); -lean_dec(x_687); -x_691 = l_Lean_Elab_Command_elabCommand(x_685, x_2, x_3, x_690); -return x_691; -} -else -{ -lean_object* x_692; lean_object* x_693; lean_object* x_694; 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; -x_692 = lean_ctor_get(x_687, 1); -lean_inc(x_692); -if (lean_is_exclusive(x_687)) { - lean_ctor_release(x_687, 0); - lean_ctor_release(x_687, 1); - x_693 = x_687; +x_647 = l_Lean_Syntax_node6(x_22, x_646, x_465, x_467, x_461, x_461, x_483, x_645); +x_648 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__3; +x_649 = l_Lean_Syntax_node2(x_22, x_648, x_463, x_647); +x_650 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__5; +x_651 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Command_runLinters___spec__11(x_650, x_2, x_3, x_457); +x_652 = lean_ctor_get(x_651, 0); +lean_inc(x_652); +x_653 = lean_unbox(x_652); +lean_dec(x_652); +if (x_653 == 0) +{ +lean_object* x_654; lean_object* x_655; +x_654 = lean_ctor_get(x_651, 1); +lean_inc(x_654); +lean_dec(x_651); +x_655 = l_Lean_Elab_Command_elabCommand(x_649, x_2, x_3, x_654); +return x_655; +} +else +{ +lean_object* x_656; lean_object* x_657; lean_object* x_658; lean_object* x_659; lean_object* x_660; lean_object* x_661; lean_object* x_662; lean_object* x_663; lean_object* x_664; lean_object* x_665; +x_656 = lean_ctor_get(x_651, 1); +lean_inc(x_656); +if (lean_is_exclusive(x_651)) { + lean_ctor_release(x_651, 0); + lean_ctor_release(x_651, 1); + x_657 = x_651; } else { - lean_dec_ref(x_687); - x_693 = lean_box(0); -} -lean_inc(x_685); -x_694 = l_Lean_MessageData_ofSyntax(x_685); -x_695 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__7; -if (lean_is_scalar(x_693)) { - x_696 = lean_alloc_ctor(7, 2, 0); + lean_dec_ref(x_651); + x_657 = lean_box(0); +} +lean_inc(x_649); +x_658 = l_Lean_MessageData_ofSyntax(x_649); +x_659 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__7; +if (lean_is_scalar(x_657)) { + x_660 = lean_alloc_ctor(7, 2, 0); } else { - x_696 = x_693; - lean_ctor_set_tag(x_696, 7); + x_660 = x_657; + lean_ctor_set_tag(x_660, 7); } -lean_ctor_set(x_696, 0, x_695); -lean_ctor_set(x_696, 1, x_694); -x_697 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__12; -x_698 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_698, 0, x_696); -lean_ctor_set(x_698, 1, x_697); -x_699 = l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__7(x_686, x_698, x_2, x_3, x_692); -x_700 = lean_ctor_get(x_699, 1); -lean_inc(x_700); -lean_dec(x_699); -x_701 = l_Lean_Elab_Command_elabCommand(x_685, x_2, x_3, x_700); -return x_701; +lean_ctor_set(x_660, 0, x_659); +lean_ctor_set(x_660, 1, x_658); +x_661 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__12; +x_662 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_662, 0, x_660); +lean_ctor_set(x_662, 1, x_661); +x_663 = l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__7(x_650, x_662, x_2, x_3, x_656); +x_664 = lean_ctor_get(x_663, 1); +lean_inc(x_664); +lean_dec(x_663); +x_665 = l_Lean_Elab_Command_elabCommand(x_649, x_2, x_3, x_664); +return x_665; } } } else { -lean_object* x_702; lean_object* x_703; uint8_t x_704; lean_object* x_705; lean_object* x_706; lean_object* x_707; 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_object* x_721; lean_object* x_722; lean_object* x_723; lean_object* x_724; lean_object* x_725; lean_object* x_726; lean_object* x_727; lean_object* x_728; lean_object* x_729; lean_object* x_730; lean_object* x_731; lean_object* x_732; 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; 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_object* x_751; lean_object* x_752; lean_object* x_753; lean_object* x_754; lean_object* x_755; lean_object* x_756; lean_object* x_757; lean_object* x_758; lean_object* x_759; lean_object* x_760; lean_object* x_761; lean_object* x_762; lean_object* x_763; lean_object* x_764; lean_object* x_765; lean_object* x_766; lean_object* x_767; lean_object* x_768; lean_object* x_769; lean_object* x_770; lean_object* x_771; lean_object* x_772; lean_object* x_773; lean_object* x_774; lean_object* x_775; lean_object* x_776; lean_object* x_777; lean_object* x_778; lean_object* x_779; lean_object* x_780; 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_object* x_788; lean_object* x_789; lean_object* x_790; lean_object* x_791; lean_object* x_792; lean_object* x_793; lean_object* x_794; 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_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_object* x_809; lean_object* x_810; lean_object* x_811; lean_object* x_812; lean_object* x_813; 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_object* x_820; lean_object* x_821; lean_object* x_822; lean_object* x_823; lean_object* x_824; 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; lean_object* x_833; lean_object* x_834; 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_845; lean_object* x_846; 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_object* x_855; lean_object* x_856; lean_object* x_857; lean_object* x_858; lean_object* x_859; 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_object* x_873; lean_object* x_874; lean_object* x_875; lean_object* x_876; lean_object* x_877; lean_object* x_878; lean_object* x_879; lean_object* x_880; lean_object* x_881; lean_object* x_882; lean_object* x_883; lean_object* x_884; 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; 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_object* x_903; lean_object* x_904; lean_object* x_905; lean_object* x_906; lean_object* x_907; lean_object* x_908; lean_object* x_909; lean_object* x_910; lean_object* x_911; lean_object* x_912; lean_object* x_913; lean_object* x_914; lean_object* x_915; lean_object* x_916; lean_object* x_917; lean_object* x_918; lean_object* x_919; lean_object* x_920; uint8_t x_921; -x_702 = lean_ctor_get(x_17, 0); -x_703 = lean_ctor_get(x_17, 1); -lean_inc(x_703); -lean_inc(x_702); +lean_object* x_666; lean_object* x_667; uint8_t x_668; lean_object* x_669; lean_object* x_670; lean_object* x_671; lean_object* x_672; 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; lean_object* x_681; lean_object* x_682; 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_693; lean_object* x_694; 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_object* x_703; lean_object* x_704; lean_object* x_705; lean_object* x_706; lean_object* x_707; 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_object* x_721; lean_object* x_722; lean_object* x_723; lean_object* x_724; lean_object* x_725; lean_object* x_726; lean_object* x_727; lean_object* x_728; lean_object* x_729; lean_object* x_730; lean_object* x_731; lean_object* x_732; 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; 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_object* x_751; lean_object* x_752; lean_object* x_753; lean_object* x_754; lean_object* x_755; lean_object* x_756; lean_object* x_757; lean_object* x_758; lean_object* x_759; lean_object* x_760; lean_object* x_761; lean_object* x_762; lean_object* x_763; lean_object* x_764; lean_object* x_765; lean_object* x_766; lean_object* x_767; lean_object* x_768; lean_object* x_769; lean_object* x_770; lean_object* x_771; lean_object* x_772; lean_object* x_773; lean_object* x_774; lean_object* x_775; lean_object* x_776; lean_object* x_777; lean_object* x_778; lean_object* x_779; lean_object* x_780; 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_object* x_788; lean_object* x_789; lean_object* x_790; lean_object* x_791; lean_object* x_792; lean_object* x_793; lean_object* x_794; 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_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_object* x_809; lean_object* x_810; lean_object* x_811; lean_object* x_812; lean_object* x_813; 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_object* x_820; lean_object* x_821; lean_object* x_822; lean_object* x_823; lean_object* x_824; 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; lean_object* x_833; lean_object* x_834; 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_845; lean_object* x_846; 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_object* x_855; lean_object* x_856; lean_object* x_857; lean_object* x_858; lean_object* x_859; 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; uint8_t x_873; +x_666 = lean_ctor_get(x_17, 0); +x_667 = lean_ctor_get(x_17, 1); +lean_inc(x_667); +lean_inc(x_666); lean_dec(x_17); -x_704 = 0; -x_705 = l_Lean_SourceInfo_fromRef(x_702, x_704); -x_706 = l_Lean_Elab_Command_getCurrMacroScope(x_2, x_3, x_703); -x_707 = lean_ctor_get(x_706, 0); -lean_inc(x_707); -x_708 = lean_ctor_get(x_706, 1); -lean_inc(x_708); -if (lean_is_exclusive(x_706)) { - lean_ctor_release(x_706, 0); - lean_ctor_release(x_706, 1); - x_709 = x_706; -} else { - lean_dec_ref(x_706); - x_709 = lean_box(0); -} -x_710 = l_Lean_Elab_Command_getMainModule___rarg(x_3, x_708); -x_711 = lean_ctor_get(x_710, 0); -lean_inc(x_711); -x_712 = lean_ctor_get(x_710, 1); -lean_inc(x_712); -if (lean_is_exclusive(x_710)) { - lean_ctor_release(x_710, 0); - lean_ctor_release(x_710, 1); - x_713 = x_710; -} else { - lean_dec_ref(x_710); - x_713 = lean_box(0); -} -x_714 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__14; -x_715 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__15; -lean_inc(x_705); -x_716 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_716, 0, x_705); -lean_ctor_set(x_716, 1, x_714); -lean_ctor_set(x_716, 2, x_715); -x_717 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__5; -lean_inc_n(x_716, 6); -lean_inc(x_705); -x_718 = l_Lean_Syntax_node6(x_705, x_717, x_716, x_716, x_716, x_716, x_716, x_716); -x_719 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__4; -lean_inc(x_716); -lean_inc(x_705); -x_720 = l_Lean_Syntax_node1(x_705, x_719, x_716); -x_721 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__1; -lean_inc(x_705); -if (lean_is_scalar(x_713)) { - x_722 = lean_alloc_ctor(2, 2, 0); -} else { - x_722 = x_713; - lean_ctor_set_tag(x_722, 2); -} -lean_ctor_set(x_722, 0, x_705); -lean_ctor_set(x_722, 1, x_721); -x_723 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__9; -lean_inc(x_705); -if (lean_is_scalar(x_709)) { - x_724 = lean_alloc_ctor(2, 2, 0); -} else { - x_724 = x_709; - lean_ctor_set_tag(x_724, 2); -} -lean_ctor_set(x_724, 0, x_705); -lean_ctor_set(x_724, 1, x_723); -x_725 = l_Lean_Elab_Deriving_DecEq_mkDecEqHeader___closed__2; -lean_inc(x_707); -lean_inc(x_711); -x_726 = l_Lean_addMacroScope(x_711, x_725, x_707); -x_727 = lean_box(0); -x_728 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__7; -x_729 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__9; -lean_inc(x_705); -x_730 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_730, 0, x_705); -lean_ctor_set(x_730, 1, x_728); -lean_ctor_set(x_730, 2, x_726); -lean_ctor_set(x_730, 3, x_729); -x_731 = lean_mk_syntax_ident(x_1); -lean_inc(x_705); -x_732 = l_Lean_Syntax_node1(x_705, x_714, x_731); -x_733 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__18; -lean_inc(x_705); -x_734 = l_Lean_Syntax_node2(x_705, x_733, x_730, x_732); -x_735 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__10; -lean_inc(x_724); -lean_inc(x_705); -x_736 = l_Lean_Syntax_node2(x_705, x_735, x_724, x_734); -x_737 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__6; -lean_inc(x_716); -lean_inc(x_705); -x_738 = l_Lean_Syntax_node2(x_705, x_737, x_716, x_736); -x_739 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__16; -lean_inc(x_705); -x_740 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_740, 0, x_705); -lean_ctor_set(x_740, 1, x_739); -x_741 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__10; -lean_inc(x_705); -x_742 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_742, 0, x_705); -lean_ctor_set(x_742, 1, x_741); -x_743 = l_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm___closed__10; -lean_inc(x_707); -lean_inc(x_711); -x_744 = l_Lean_addMacroScope(x_711, x_743, x_707); -x_745 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__14; -lean_inc(x_705); -x_746 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_746, 0, x_705); +x_668 = 0; +x_669 = l_Lean_SourceInfo_fromRef(x_666, x_668); +x_670 = l_Lean_Elab_Command_getCurrMacroScope(x_2, x_3, x_667); +x_671 = lean_ctor_get(x_670, 0); +lean_inc(x_671); +x_672 = lean_ctor_get(x_670, 1); +lean_inc(x_672); +if (lean_is_exclusive(x_670)) { + lean_ctor_release(x_670, 0); + lean_ctor_release(x_670, 1); + x_673 = x_670; +} else { + lean_dec_ref(x_670); + x_673 = lean_box(0); +} +x_674 = l_Lean_Elab_Command_getMainModule___rarg(x_3, x_672); +x_675 = lean_ctor_get(x_674, 0); +lean_inc(x_675); +x_676 = lean_ctor_get(x_674, 1); +lean_inc(x_676); +if (lean_is_exclusive(x_674)) { + lean_ctor_release(x_674, 0); + lean_ctor_release(x_674, 1); + x_677 = x_674; +} else { + lean_dec_ref(x_674); + x_677 = lean_box(0); +} +x_678 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__14; +x_679 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__15; +lean_inc(x_669); +x_680 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_680, 0, x_669); +lean_ctor_set(x_680, 1, x_678); +lean_ctor_set(x_680, 2, x_679); +x_681 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__5; +lean_inc_n(x_680, 6); +lean_inc(x_669); +x_682 = l_Lean_Syntax_node6(x_669, x_681, x_680, x_680, x_680, x_680, x_680, x_680); +x_683 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__4; +lean_inc(x_680); +lean_inc(x_669); +x_684 = l_Lean_Syntax_node1(x_669, x_683, x_680); +x_685 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__1; +lean_inc(x_669); +if (lean_is_scalar(x_677)) { + x_686 = lean_alloc_ctor(2, 2, 0); +} else { + x_686 = x_677; + lean_ctor_set_tag(x_686, 2); +} +lean_ctor_set(x_686, 0, x_669); +lean_ctor_set(x_686, 1, x_685); +x_687 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__9; +lean_inc(x_669); +if (lean_is_scalar(x_673)) { + x_688 = lean_alloc_ctor(2, 2, 0); +} else { + x_688 = x_673; + lean_ctor_set_tag(x_688, 2); +} +lean_ctor_set(x_688, 0, x_669); +lean_ctor_set(x_688, 1, x_687); +x_689 = l_Lean_Elab_Deriving_DecEq_mkDecEqHeader___closed__2; +lean_inc(x_671); +lean_inc(x_675); +x_690 = l_Lean_addMacroScope(x_675, x_689, x_671); +x_691 = lean_box(0); +x_692 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__7; +x_693 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__9; +lean_inc(x_669); +x_694 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_694, 0, x_669); +lean_ctor_set(x_694, 1, x_692); +lean_ctor_set(x_694, 2, x_690); +lean_ctor_set(x_694, 3, x_693); +x_695 = lean_mk_syntax_ident(x_1); +lean_inc(x_669); +x_696 = l_Lean_Syntax_node1(x_669, x_678, x_695); +x_697 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__18; +lean_inc(x_669); +x_698 = l_Lean_Syntax_node2(x_669, x_697, x_694, x_696); +x_699 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__10; +lean_inc(x_688); +lean_inc(x_669); +x_700 = l_Lean_Syntax_node2(x_669, x_699, x_688, x_698); +x_701 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__6; +lean_inc(x_680); +lean_inc(x_669); +x_702 = l_Lean_Syntax_node2(x_669, x_701, x_680, x_700); +x_703 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__16; +lean_inc(x_669); +x_704 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_704, 0, x_669); +lean_ctor_set(x_704, 1, x_703); +x_705 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__10; +lean_inc(x_669); +x_706 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_706, 0, x_669); +lean_ctor_set(x_706, 1, x_705); +x_707 = l_Lean_Elab_Deriving_DecEq_mkEnumOfNatThm___closed__10; +lean_inc(x_671); +lean_inc(x_675); +x_708 = l_Lean_addMacroScope(x_675, x_707, x_671); +x_709 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__14; +lean_inc(x_669); +x_710 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_710, 0, x_669); +lean_ctor_set(x_710, 1, x_709); +lean_ctor_set(x_710, 2, x_708); +lean_ctor_set(x_710, 3, x_691); +x_711 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__17; +lean_inc(x_671); +lean_inc(x_675); +x_712 = l_Lean_addMacroScope(x_675, x_711, x_671); +x_713 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__16; +lean_inc(x_669); +x_714 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_714, 0, x_669); +lean_ctor_set(x_714, 1, x_713); +lean_ctor_set(x_714, 2, x_712); +lean_ctor_set(x_714, 3, x_691); +lean_inc(x_669); +x_715 = l_Lean_Syntax_node2(x_669, x_678, x_710, x_714); +x_716 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__8; +lean_inc(x_669); +x_717 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_717, 0, x_669); +lean_ctor_set(x_717, 1, x_716); +x_718 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__3; +lean_inc(x_669); +x_719 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_719, 0, x_669); +lean_ctor_set(x_719, 1, x_718); +x_720 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__8; +lean_inc(x_671); +lean_inc(x_675); +x_721 = l_Lean_addMacroScope(x_675, x_720, x_671); +x_722 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__7; +lean_inc(x_669); +x_723 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_723, 0, x_669); +lean_ctor_set(x_723, 1, x_722); +lean_ctor_set(x_723, 2, x_721); +lean_ctor_set(x_723, 3, x_691); +x_724 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__5; +lean_inc(x_723); +lean_inc(x_669); +x_725 = l_Lean_Syntax_node1(x_669, x_724, x_723); +x_726 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__20; +lean_inc(x_671); +lean_inc(x_675); +x_727 = l_Lean_addMacroScope(x_675, x_726, x_671); +x_728 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__19; +lean_inc(x_669); +x_729 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_729, 0, x_669); +lean_ctor_set(x_729, 1, x_728); +lean_ctor_set(x_729, 2, x_727); +lean_ctor_set(x_729, 3, x_691); +x_730 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__12; +lean_inc(x_669); +x_731 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_731, 0, x_669); +lean_ctor_set(x_731, 1, x_730); +x_732 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__23; +lean_inc(x_671); +lean_inc(x_675); +x_733 = l_Lean_addMacroScope(x_675, x_732, x_671); +x_734 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__22; +lean_inc(x_669); +x_735 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_735, 0, x_669); +lean_ctor_set(x_735, 1, x_734); +lean_ctor_set(x_735, 2, x_733); +lean_ctor_set(x_735, 3, x_691); +x_736 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__11; +lean_inc(x_669); +x_737 = l_Lean_Syntax_node3(x_669, x_736, x_729, x_731, x_735); +x_738 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__13; +lean_inc(x_669); +x_739 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_739, 0, x_669); +lean_ctor_set(x_739, 1, x_738); +x_740 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__3; +lean_inc(x_671); +lean_inc(x_675); +x_741 = l_Lean_addMacroScope(x_675, x_740, x_671); +x_742 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__2; +x_743 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__25; +lean_inc(x_669); +x_744 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_744, 0, x_669); +lean_ctor_set(x_744, 1, x_742); +lean_ctor_set(x_744, 2, x_741); +lean_ctor_set(x_744, 3, x_743); +x_745 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__36; +lean_inc(x_669); +x_746 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_746, 0, x_669); lean_ctor_set(x_746, 1, x_745); -lean_ctor_set(x_746, 2, x_744); -lean_ctor_set(x_746, 3, x_727); -x_747 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__17; -lean_inc(x_707); -lean_inc(x_711); -x_748 = l_Lean_addMacroScope(x_711, x_747, x_707); -x_749 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__16; -lean_inc(x_705); -x_750 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_750, 0, x_705); +x_747 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__16; +lean_inc(x_669); +x_748 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_748, 0, x_669); +lean_ctor_set(x_748, 1, x_747); +x_749 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__26; +lean_inc(x_669); +x_750 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_750, 0, x_669); lean_ctor_set(x_750, 1, x_749); -lean_ctor_set(x_750, 2, x_748); -lean_ctor_set(x_750, 3, x_727); -lean_inc(x_705); -x_751 = l_Lean_Syntax_node2(x_705, x_714, x_746, x_750); -x_752 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__8; -lean_inc(x_705); -x_753 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_753, 0, x_705); -lean_ctor_set(x_753, 1, x_752); -x_754 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__3; -lean_inc(x_705); -x_755 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_755, 0, x_705); -lean_ctor_set(x_755, 1, x_754); -x_756 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__8; -lean_inc(x_707); -lean_inc(x_711); -x_757 = l_Lean_addMacroScope(x_711, x_756, x_707); -x_758 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__7; -lean_inc(x_705); -x_759 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_759, 0, x_705); -lean_ctor_set(x_759, 1, x_758); -lean_ctor_set(x_759, 2, x_757); -lean_ctor_set(x_759, 3, x_727); -x_760 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__5; -lean_inc(x_759); -lean_inc(x_705); -x_761 = l_Lean_Syntax_node1(x_705, x_760, x_759); -x_762 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__20; -lean_inc(x_707); -lean_inc(x_711); -x_763 = l_Lean_addMacroScope(x_711, x_762, x_707); -x_764 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__19; -lean_inc(x_705); +x_751 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__5; +lean_inc(x_669); +x_752 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_752, 0, x_669); +lean_ctor_set(x_752, 1, x_751); +x_753 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__1; +lean_inc(x_669); +x_754 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_754, 0, x_669); +lean_ctor_set(x_754, 1, x_753); +x_755 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__34; +lean_inc(x_671); +lean_inc(x_675); +x_756 = l_Lean_addMacroScope(x_675, x_755, x_671); +x_757 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__33; +lean_inc(x_669); +x_758 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_758, 0, x_669); +lean_ctor_set(x_758, 1, x_757); +lean_ctor_set(x_758, 2, x_756); +lean_ctor_set(x_758, 3, x_691); +x_759 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__8; +lean_inc(x_758); +lean_inc(x_669); +x_760 = l_Lean_Syntax_node1(x_669, x_759, x_758); +x_761 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__37; +lean_inc(x_671); +lean_inc(x_675); +x_762 = l_Lean_addMacroScope(x_675, x_761, x_671); +x_763 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__36; +x_764 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__39; +lean_inc(x_669); x_765 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_765, 0, x_705); -lean_ctor_set(x_765, 1, x_764); -lean_ctor_set(x_765, 2, x_763); -lean_ctor_set(x_765, 3, x_727); -x_766 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__12; -lean_inc(x_705); -x_767 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_767, 0, x_705); -lean_ctor_set(x_767, 1, x_766); -x_768 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__23; -lean_inc(x_707); -lean_inc(x_711); -x_769 = l_Lean_addMacroScope(x_711, x_768, x_707); -x_770 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__22; -lean_inc(x_705); -x_771 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_771, 0, x_705); -lean_ctor_set(x_771, 1, x_770); -lean_ctor_set(x_771, 2, x_769); -lean_ctor_set(x_771, 3, x_727); -x_772 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__11; -lean_inc(x_705); -x_773 = l_Lean_Syntax_node3(x_705, x_772, x_765, x_767, x_771); -x_774 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__13; -lean_inc(x_705); +lean_ctor_set(x_765, 0, x_669); +lean_ctor_set(x_765, 1, x_763); +lean_ctor_set(x_765, 2, x_762); +lean_ctor_set(x_765, 3, x_764); +lean_inc(x_723); +lean_inc(x_669); +x_766 = l_Lean_Syntax_node2(x_669, x_678, x_13, x_723); +lean_inc(x_669); +x_767 = l_Lean_Syntax_node2(x_669, x_697, x_765, x_766); +x_768 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__6; +lean_inc(x_704); +lean_inc_n(x_680, 2); +lean_inc(x_669); +x_769 = l_Lean_Syntax_node5(x_669, x_768, x_760, x_680, x_680, x_704, x_767); +x_770 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__4; +lean_inc(x_669); +x_771 = l_Lean_Syntax_node1(x_669, x_770, x_769); +x_772 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__31; +lean_inc(x_669); +x_773 = l_Lean_Syntax_node2(x_669, x_772, x_754, x_771); +x_774 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__22; +lean_inc(x_669); x_775 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_775, 0, x_705); +lean_ctor_set(x_775, 0, x_669); lean_ctor_set(x_775, 1, x_774); -x_776 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__3; -lean_inc(x_707); -lean_inc(x_711); -x_777 = l_Lean_addMacroScope(x_711, x_776, x_707); -x_778 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___closed__2; -x_779 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__25; -lean_inc(x_705); -x_780 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_780, 0, x_705); -lean_ctor_set(x_780, 1, x_778); -lean_ctor_set(x_780, 2, x_777); -lean_ctor_set(x_780, 3, x_779); -x_781 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__36; -lean_inc(x_705); -x_782 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_782, 0, x_705); -lean_ctor_set(x_782, 1, x_781); -x_783 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__16; -lean_inc(x_705); -x_784 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_784, 0, x_705); -lean_ctor_set(x_784, 1, x_783); -x_785 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__26; -lean_inc(x_705); +x_776 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__42; +lean_inc(x_669); +x_777 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_777, 0, x_669); +lean_ctor_set(x_777, 1, x_776); +x_778 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__45; +lean_inc(x_669); +x_779 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_779, 0, x_669); +lean_ctor_set(x_779, 1, x_778); +x_780 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__47; +lean_inc(x_680); +lean_inc(x_669); +x_781 = l_Lean_Syntax_node2(x_669, x_780, x_680, x_16); +x_782 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__6; +lean_inc(x_669); +x_783 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_783, 0, x_669); +lean_ctor_set(x_783, 1, x_782); +lean_inc(x_781); +lean_inc(x_669); +x_784 = l_Lean_Syntax_node3(x_669, x_678, x_781, x_783, x_781); +x_785 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__48; +lean_inc(x_669); x_786 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_786, 0, x_705); +lean_ctor_set(x_786, 0, x_669); lean_ctor_set(x_786, 1, x_785); -x_787 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__5; -lean_inc(x_705); -x_788 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_788, 0, x_705); -lean_ctor_set(x_788, 1, x_787); -x_789 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__32; -lean_inc(x_705); +x_787 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__44; +lean_inc(x_669); +x_788 = l_Lean_Syntax_node3(x_669, x_787, x_779, x_784, x_786); +x_789 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__51; +lean_inc(x_669); x_790 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_790, 0, x_705); +lean_ctor_set(x_790, 0, x_669); lean_ctor_set(x_790, 1, x_789); -x_791 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__1; -lean_inc(x_705); -x_792 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_792, 0, x_705); -lean_ctor_set(x_792, 1, x_791); -x_793 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__35; -lean_inc(x_707); -lean_inc(x_711); -x_794 = l_Lean_addMacroScope(x_711, x_793, x_707); -x_795 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__34; -lean_inc(x_705); -x_796 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_796, 0, x_705); -lean_ctor_set(x_796, 1, x_795); -lean_ctor_set(x_796, 2, x_794); -lean_ctor_set(x_796, 3, x_727); -x_797 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__8; -lean_inc(x_796); -lean_inc(x_705); -x_798 = l_Lean_Syntax_node1(x_705, x_797, x_796); -x_799 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__38; -lean_inc(x_707); -lean_inc(x_711); -x_800 = l_Lean_addMacroScope(x_711, x_799, x_707); -x_801 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__37; -x_802 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__40; -lean_inc(x_705); -x_803 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_803, 0, x_705); -lean_ctor_set(x_803, 1, x_801); -lean_ctor_set(x_803, 2, x_800); -lean_ctor_set(x_803, 3, x_802); -lean_inc(x_759); -lean_inc(x_705); -x_804 = l_Lean_Syntax_node2(x_705, x_714, x_13, x_759); -lean_inc(x_705); -x_805 = l_Lean_Syntax_node2(x_705, x_733, x_803, x_804); -x_806 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__6; -lean_inc(x_740); -lean_inc_n(x_716, 2); -lean_inc(x_705); -x_807 = l_Lean_Syntax_node5(x_705, x_806, x_798, x_716, x_716, x_740, x_805); -x_808 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__4; -lean_inc(x_705); -x_809 = l_Lean_Syntax_node1(x_705, x_808, x_807); -x_810 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__22; -lean_inc(x_705); +lean_inc(x_669); +x_791 = l_Lean_Syntax_node1(x_669, x_678, x_758); +x_792 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__53; +lean_inc(x_680); +lean_inc(x_669); +x_793 = l_Lean_Syntax_node2(x_669, x_792, x_791, x_680); +x_794 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__50; +lean_inc(x_669); +x_795 = l_Lean_Syntax_node2(x_669, x_794, x_790, x_793); +lean_inc(x_669); +x_796 = l_Lean_Syntax_node1(x_669, x_678, x_795); +x_797 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__41; +lean_inc(x_680); +lean_inc(x_669); +x_798 = l_Lean_Syntax_node4(x_669, x_797, x_777, x_680, x_788, x_796); +x_799 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__49; +lean_inc(x_669); +x_800 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_800, 0, x_669); +lean_ctor_set(x_800, 1, x_799); +x_801 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__50; +lean_inc(x_669); +x_802 = l_Lean_Syntax_node1(x_669, x_801, x_800); +lean_inc_n(x_775, 2); +lean_inc(x_669); +x_803 = l_Lean_Syntax_node5(x_669, x_678, x_773, x_775, x_798, x_775, x_802); +x_804 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__21; +lean_inc(x_669); +x_805 = l_Lean_Syntax_node1(x_669, x_804, x_803); +x_806 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__19; +lean_inc(x_669); +x_807 = l_Lean_Syntax_node1(x_669, x_806, x_805); +x_808 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__29; +lean_inc(x_752); +lean_inc(x_669); +x_809 = l_Lean_Syntax_node2(x_669, x_808, x_752, x_807); +x_810 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__11; +lean_inc(x_669); x_811 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_811, 0, x_705); +lean_ctor_set(x_811, 0, x_669); lean_ctor_set(x_811, 1, x_810); -x_812 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__43; -lean_inc(x_705); -x_813 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_813, 0, x_705); -lean_ctor_set(x_813, 1, x_812); -x_814 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__48; -lean_inc(x_705); -x_815 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_815, 0, x_705); -lean_ctor_set(x_815, 1, x_814); -x_816 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__47; -lean_inc(x_705); -x_817 = l_Lean_Syntax_node1(x_705, x_816, x_815); -x_818 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__42; -lean_inc(x_705); -x_819 = l_Lean_Syntax_node2(x_705, x_818, x_813, x_817); -x_820 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__2; -lean_inc(x_811); -lean_inc(x_705); -x_821 = l_Lean_Syntax_node4(x_705, x_820, x_792, x_809, x_811, x_819); -x_822 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__31; -lean_inc(x_705); -x_823 = l_Lean_Syntax_node2(x_705, x_822, x_790, x_821); -x_824 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__46; -lean_inc(x_705); -x_825 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_825, 0, x_705); -lean_ctor_set(x_825, 1, x_824); -x_826 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__49; -lean_inc(x_705); +x_812 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__55; +lean_inc(x_669); +x_813 = l_Lean_Syntax_node1(x_669, x_812, x_811); +lean_inc(x_669); +x_814 = l_Lean_Syntax_node1(x_669, x_678, x_813); +lean_inc(x_669); +x_815 = l_Lean_Syntax_node1(x_669, x_804, x_814); +lean_inc(x_669); +x_816 = l_Lean_Syntax_node1(x_669, x_806, x_815); +lean_inc(x_669); +x_817 = l_Lean_Syntax_node2(x_669, x_808, x_752, x_816); +lean_inc(x_669); +x_818 = l_Lean_Syntax_node2(x_669, x_678, x_809, x_817); +x_819 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__27; +lean_inc(x_669); +x_820 = l_Lean_Syntax_node2(x_669, x_819, x_750, x_818); +lean_inc(x_669); +x_821 = l_Lean_Syntax_node1(x_669, x_678, x_820); +lean_inc(x_669); +x_822 = l_Lean_Syntax_node1(x_669, x_804, x_821); +lean_inc(x_669); +x_823 = l_Lean_Syntax_node1(x_669, x_806, x_822); +x_824 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__15; +lean_inc(x_748); +lean_inc(x_669); +x_825 = l_Lean_Syntax_node2(x_669, x_824, x_748, x_823); +x_826 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__51; +lean_inc(x_669); x_827 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_827, 0, x_705); +lean_ctor_set(x_827, 0, x_669); lean_ctor_set(x_827, 1, x_826); -x_828 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__51; -lean_inc(x_716); -lean_inc(x_705); -x_829 = l_Lean_Syntax_node2(x_705, x_828, x_716, x_16); -x_830 = l_List_forIn_loop___at_Lean_Elab_Deriving_DecEq_mkMatch_mkAlts___spec__6___lambda__1___closed__6; -lean_inc(x_705); -x_831 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_831, 0, x_705); -lean_ctor_set(x_831, 1, x_830); -lean_inc(x_829); -lean_inc(x_705); -x_832 = l_Lean_Syntax_node3(x_705, x_714, x_829, x_831, x_829); -x_833 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__52; -lean_inc(x_705); -x_834 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_834, 0, x_705); -lean_ctor_set(x_834, 1, x_833); -x_835 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__48; -lean_inc(x_705); -x_836 = l_Lean_Syntax_node3(x_705, x_835, x_827, x_832, x_834); -x_837 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__55; -lean_inc(x_705); -x_838 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_838, 0, x_705); -lean_ctor_set(x_838, 1, x_837); -lean_inc(x_705); -x_839 = l_Lean_Syntax_node1(x_705, x_714, x_796); -x_840 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57; -lean_inc(x_716); -lean_inc(x_705); -x_841 = l_Lean_Syntax_node2(x_705, x_840, x_839, x_716); -x_842 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__54; -lean_inc(x_705); -x_843 = l_Lean_Syntax_node2(x_705, x_842, x_838, x_841); -lean_inc(x_705); -x_844 = l_Lean_Syntax_node1(x_705, x_714, x_843); -x_845 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__45; -lean_inc(x_716); -lean_inc(x_705); -x_846 = l_Lean_Syntax_node4(x_705, x_845, x_825, x_716, x_836, x_844); -x_847 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__49; -lean_inc(x_705); -x_848 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_848, 0, x_705); -lean_ctor_set(x_848, 1, x_847); -x_849 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__50; -lean_inc(x_705); -x_850 = l_Lean_Syntax_node1(x_705, x_849, x_848); -lean_inc_n(x_811, 2); -lean_inc(x_705); -x_851 = l_Lean_Syntax_node5(x_705, x_714, x_823, x_811, x_846, x_811, x_850); -x_852 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__21; -lean_inc(x_705); -x_853 = l_Lean_Syntax_node1(x_705, x_852, x_851); -x_854 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__19; -lean_inc(x_705); -x_855 = l_Lean_Syntax_node1(x_705, x_854, x_853); -x_856 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__29; -lean_inc(x_788); -lean_inc(x_705); -x_857 = l_Lean_Syntax_node2(x_705, x_856, x_788, x_855); -x_858 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__3___closed__11; -lean_inc(x_705); -x_859 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_859, 0, x_705); -lean_ctor_set(x_859, 1, x_858); -x_860 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__59; -lean_inc(x_705); -x_861 = l_Lean_Syntax_node1(x_705, x_860, x_859); -lean_inc(x_705); -x_862 = l_Lean_Syntax_node1(x_705, x_714, x_861); -lean_inc(x_705); -x_863 = l_Lean_Syntax_node1(x_705, x_852, x_862); -lean_inc(x_705); -x_864 = l_Lean_Syntax_node1(x_705, x_854, x_863); -lean_inc(x_705); -x_865 = l_Lean_Syntax_node2(x_705, x_856, x_788, x_864); -lean_inc(x_705); -x_866 = l_Lean_Syntax_node2(x_705, x_714, x_857, x_865); -x_867 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__27; -lean_inc(x_705); -x_868 = l_Lean_Syntax_node2(x_705, x_867, x_786, x_866); -lean_inc(x_705); -x_869 = l_Lean_Syntax_node1(x_705, x_714, x_868); -lean_inc(x_705); -x_870 = l_Lean_Syntax_node1(x_705, x_852, x_869); -lean_inc(x_705); -x_871 = l_Lean_Syntax_node1(x_705, x_854, x_870); -x_872 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__15; -lean_inc(x_784); -lean_inc(x_705); -x_873 = l_Lean_Syntax_node2(x_705, x_872, x_784, x_871); -x_874 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__51; -lean_inc(x_705); -x_875 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_875, 0, x_705); -lean_ctor_set(x_875, 1, x_874); -x_876 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__35; -lean_inc(x_705); -x_877 = l_Lean_Syntax_node3(x_705, x_876, x_782, x_873, x_875); -lean_inc(x_705); -x_878 = l_Lean_Syntax_node1(x_705, x_714, x_877); -lean_inc(x_705); -x_879 = l_Lean_Syntax_node2(x_705, x_733, x_780, x_878); -x_880 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__26; -lean_inc(x_705); -x_881 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_881, 0, x_705); -lean_ctor_set(x_881, 1, x_880); -x_882 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__29; -x_883 = l_Lean_addMacroScope(x_711, x_882, x_707); -x_884 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__28; -x_885 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__33; -lean_inc(x_705); -x_886 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_886, 0, x_705); -lean_ctor_set(x_886, 1, x_884); -lean_ctor_set(x_886, 2, x_883); -lean_ctor_set(x_886, 3, x_885); -lean_inc(x_705); -x_887 = l_Lean_Syntax_node1(x_705, x_714, x_759); -x_888 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__22; -lean_inc(x_705); -x_889 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_889, 0, x_705); -lean_ctor_set(x_889, 1, x_888); -x_890 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__23; -lean_inc(x_887); -lean_inc(x_705); -x_891 = l_Lean_Syntax_node2(x_705, x_890, x_889, x_887); -x_892 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__60; -lean_inc(x_705); -x_893 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_893, 0, x_705); -lean_ctor_set(x_893, 1, x_892); -x_894 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__61; -lean_inc(x_705); -x_895 = l_Lean_Syntax_node1(x_705, x_894, x_893); -lean_inc(x_705); -x_896 = l_Lean_Syntax_node3(x_705, x_714, x_891, x_811, x_895); -lean_inc(x_705); -x_897 = l_Lean_Syntax_node1(x_705, x_852, x_896); -lean_inc(x_705); -x_898 = l_Lean_Syntax_node1(x_705, x_854, x_897); -lean_inc(x_705); -x_899 = l_Lean_Syntax_node2(x_705, x_872, x_784, x_898); -x_900 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__13; -lean_inc(x_753); -lean_inc(x_716); -lean_inc(x_705); -x_901 = l_Lean_Syntax_node4(x_705, x_900, x_887, x_716, x_753, x_899); -x_902 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__11; -lean_inc(x_742); -lean_inc(x_705); -x_903 = l_Lean_Syntax_node2(x_705, x_902, x_742, x_901); -lean_inc(x_705); -x_904 = l_Lean_Syntax_node1(x_705, x_714, x_903); -lean_inc(x_705); -x_905 = l_Lean_Syntax_node2(x_705, x_733, x_886, x_904); -x_906 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__2; -lean_inc(x_705); -x_907 = l_Lean_Syntax_node8(x_705, x_906, x_755, x_761, x_724, x_773, x_775, x_879, x_881, x_905); -lean_inc(x_716); -lean_inc(x_705); -x_908 = l_Lean_Syntax_node4(x_705, x_900, x_751, x_716, x_753, x_907); -lean_inc(x_705); -x_909 = l_Lean_Syntax_node2(x_705, x_902, x_742, x_908); -x_910 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__19; -lean_inc_n(x_716, 2); -lean_inc(x_705); -x_911 = l_Lean_Syntax_node2(x_705, x_910, x_716, x_716); -x_912 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__16; -lean_inc(x_716); -lean_inc(x_705); -x_913 = l_Lean_Syntax_node4(x_705, x_912, x_740, x_909, x_911, x_716); -x_914 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__2; -lean_inc(x_716); -lean_inc(x_705); -x_915 = l_Lean_Syntax_node6(x_705, x_914, x_720, x_722, x_716, x_716, x_738, x_913); -x_916 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__3; -x_917 = l_Lean_Syntax_node2(x_705, x_916, x_718, x_915); -x_918 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__5; -x_919 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Command_runLinters___spec__11(x_918, x_2, x_3, x_712); -x_920 = lean_ctor_get(x_919, 0); -lean_inc(x_920); -x_921 = lean_unbox(x_920); -lean_dec(x_920); -if (x_921 == 0) -{ -lean_object* x_922; lean_object* x_923; -x_922 = lean_ctor_get(x_919, 1); -lean_inc(x_922); -lean_dec(x_919); -x_923 = l_Lean_Elab_Command_elabCommand(x_917, x_2, x_3, x_922); -return x_923; -} -else -{ -lean_object* x_924; lean_object* x_925; lean_object* x_926; lean_object* x_927; lean_object* x_928; lean_object* x_929; lean_object* x_930; lean_object* x_931; lean_object* x_932; lean_object* x_933; -x_924 = lean_ctor_get(x_919, 1); -lean_inc(x_924); -if (lean_is_exclusive(x_919)) { - lean_ctor_release(x_919, 0); - lean_ctor_release(x_919, 1); - x_925 = x_919; -} else { - lean_dec_ref(x_919); - x_925 = lean_box(0); -} -lean_inc(x_917); -x_926 = l_Lean_MessageData_ofSyntax(x_917); -x_927 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__7; -if (lean_is_scalar(x_925)) { - x_928 = lean_alloc_ctor(7, 2, 0); -} else { - x_928 = x_925; - lean_ctor_set_tag(x_928, 7); -} -lean_ctor_set(x_928, 0, x_927); -lean_ctor_set(x_928, 1, x_926); -x_929 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__12; -x_930 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_930, 0, x_928); -lean_ctor_set(x_930, 1, x_929); -x_931 = l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__7(x_918, x_930, x_2, x_3, x_924); -x_932 = lean_ctor_get(x_931, 1); -lean_inc(x_932); -lean_dec(x_931); -x_933 = l_Lean_Elab_Command_elabCommand(x_917, x_2, x_3, x_932); -return x_933; -} -} -} -else -{ -uint8_t x_934; +x_828 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__35; +lean_inc(x_669); +x_829 = l_Lean_Syntax_node3(x_669, x_828, x_746, x_825, x_827); +lean_inc(x_669); +x_830 = l_Lean_Syntax_node1(x_669, x_678, x_829); +lean_inc(x_669); +x_831 = l_Lean_Syntax_node2(x_669, x_697, x_744, x_830); +x_832 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__26; +lean_inc(x_669); +x_833 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_833, 0, x_669); +lean_ctor_set(x_833, 1, x_832); +x_834 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__29; +x_835 = l_Lean_addMacroScope(x_675, x_834, x_671); +x_836 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__28; +x_837 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__33; +lean_inc(x_669); +x_838 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_838, 0, x_669); +lean_ctor_set(x_838, 1, x_836); +lean_ctor_set(x_838, 2, x_835); +lean_ctor_set(x_838, 3, x_837); +lean_inc(x_669); +x_839 = l_Lean_Syntax_node1(x_669, x_678, x_723); +x_840 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__22; +lean_inc(x_669); +x_841 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_841, 0, x_669); +lean_ctor_set(x_841, 1, x_840); +x_842 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__23; +lean_inc(x_839); +lean_inc(x_669); +x_843 = l_Lean_Syntax_node2(x_669, x_842, x_841, x_839); +x_844 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__56; +lean_inc(x_669); +x_845 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_845, 0, x_669); +lean_ctor_set(x_845, 1, x_844); +x_846 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57; +lean_inc(x_669); +x_847 = l_Lean_Syntax_node1(x_669, x_846, x_845); +lean_inc(x_669); +x_848 = l_Lean_Syntax_node3(x_669, x_678, x_843, x_775, x_847); +lean_inc(x_669); +x_849 = l_Lean_Syntax_node1(x_669, x_804, x_848); +lean_inc(x_669); +x_850 = l_Lean_Syntax_node1(x_669, x_806, x_849); +lean_inc(x_669); +x_851 = l_Lean_Syntax_node2(x_669, x_824, x_748, x_850); +x_852 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__13; +lean_inc(x_717); +lean_inc(x_680); +lean_inc(x_669); +x_853 = l_Lean_Syntax_node4(x_669, x_852, x_839, x_680, x_717, x_851); +x_854 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__11; +lean_inc(x_706); +lean_inc(x_669); +x_855 = l_Lean_Syntax_node2(x_669, x_854, x_706, x_853); +lean_inc(x_669); +x_856 = l_Lean_Syntax_node1(x_669, x_678, x_855); +lean_inc(x_669); +x_857 = l_Lean_Syntax_node2(x_669, x_697, x_838, x_856); +x_858 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__2___closed__2; +lean_inc(x_669); +x_859 = l_Lean_Syntax_node8(x_669, x_858, x_719, x_725, x_688, x_737, x_739, x_831, x_833, x_857); +lean_inc(x_680); +lean_inc(x_669); +x_860 = l_Lean_Syntax_node4(x_669, x_852, x_715, x_680, x_717, x_859); +lean_inc(x_669); +x_861 = l_Lean_Syntax_node2(x_669, x_854, x_706, x_860); +x_862 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__19; +lean_inc_n(x_680, 2); +lean_inc(x_669); +x_863 = l_Lean_Syntax_node2(x_669, x_862, x_680, x_680); +x_864 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__16; +lean_inc(x_680); +lean_inc(x_669); +x_865 = l_Lean_Syntax_node4(x_669, x_864, x_704, x_861, x_863, x_680); +x_866 = l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__2; +lean_inc(x_680); +lean_inc(x_669); +x_867 = l_Lean_Syntax_node6(x_669, x_866, x_684, x_686, x_680, x_680, x_702, x_865); +x_868 = l_Lean_Elab_Deriving_DecEq_mkAuxFunction___closed__3; +x_869 = l_Lean_Syntax_node2(x_669, x_868, x_682, x_867); +x_870 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__5; +x_871 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Command_runLinters___spec__11(x_870, x_2, x_3, x_676); +x_872 = lean_ctor_get(x_871, 0); +lean_inc(x_872); +x_873 = lean_unbox(x_872); +lean_dec(x_872); +if (x_873 == 0) +{ +lean_object* x_874; lean_object* x_875; +x_874 = lean_ctor_get(x_871, 1); +lean_inc(x_874); +lean_dec(x_871); +x_875 = l_Lean_Elab_Command_elabCommand(x_869, x_2, x_3, x_874); +return x_875; +} +else +{ +lean_object* x_876; lean_object* x_877; lean_object* x_878; lean_object* x_879; lean_object* x_880; lean_object* x_881; lean_object* x_882; lean_object* x_883; lean_object* x_884; lean_object* x_885; +x_876 = lean_ctor_get(x_871, 1); +lean_inc(x_876); +if (lean_is_exclusive(x_871)) { + lean_ctor_release(x_871, 0); + lean_ctor_release(x_871, 1); + x_877 = x_871; +} else { + lean_dec_ref(x_871); + x_877 = lean_box(0); +} +lean_inc(x_869); +x_878 = l_Lean_MessageData_ofSyntax(x_869); +x_879 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__7; +if (lean_is_scalar(x_877)) { + x_880 = lean_alloc_ctor(7, 2, 0); +} else { + x_880 = x_877; + lean_ctor_set_tag(x_880, 7); +} +lean_ctor_set(x_880, 0, x_879); +lean_ctor_set(x_880, 1, x_878); +x_881 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__12; +x_882 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_882, 0, x_880); +lean_ctor_set(x_882, 1, x_881); +x_883 = l_Lean_addTrace___at_Lean_Elab_Command_elabCommand___spec__7(x_870, x_882, x_2, x_3, x_876); +x_884 = lean_ctor_get(x_883, 1); +lean_inc(x_884); +lean_dec(x_883); +x_885 = l_Lean_Elab_Command_elabCommand(x_869, x_2, x_3, x_884); +return x_885; +} +} +} +else +{ +uint8_t x_886; lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_934 = !lean_is_exclusive(x_9); -if (x_934 == 0) +x_886 = !lean_is_exclusive(x_9); +if (x_886 == 0) { return x_9; } else { -lean_object* x_935; lean_object* x_936; lean_object* x_937; -x_935 = lean_ctor_get(x_9, 0); -x_936 = lean_ctor_get(x_9, 1); -lean_inc(x_936); -lean_inc(x_935); +lean_object* x_887; lean_object* x_888; lean_object* x_889; +x_887 = lean_ctor_get(x_9, 0); +x_888 = lean_ctor_get(x_9, 1); +lean_inc(x_888); +lean_inc(x_887); lean_dec(x_9); -x_937 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_937, 0, x_935); -lean_ctor_set(x_937, 1, x_936); -return x_937; +x_889 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_889, 0, x_887); +lean_ctor_set(x_889, 1, x_888); +return x_889; } } } else { -uint8_t x_938; +uint8_t x_890; lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_938 = !lean_is_exclusive(x_6); -if (x_938 == 0) +x_890 = !lean_is_exclusive(x_6); +if (x_890 == 0) { return x_6; } else { -lean_object* x_939; lean_object* x_940; lean_object* x_941; -x_939 = lean_ctor_get(x_6, 0); -x_940 = lean_ctor_get(x_6, 1); -lean_inc(x_940); -lean_inc(x_939); +lean_object* x_891; lean_object* x_892; lean_object* x_893; +x_891 = lean_ctor_get(x_6, 0); +x_892 = lean_ctor_get(x_6, 1); +lean_inc(x_892); +lean_inc(x_891); lean_dec(x_6); -x_941 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_941, 0, x_939); -lean_ctor_set(x_941, 1, x_940); -return x_941; +x_893 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_893, 0, x_891); +lean_ctor_set(x_893, 1, x_892); +return x_893; } } } @@ -15678,7 +15538,7 @@ lean_dec(x_1); return x_5; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__1() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__1() { _start: { lean_object* x_1; @@ -15686,7 +15546,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Deriving_DecEq_mkDecEqInstanceHandl return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__2() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -15696,27 +15556,27 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__3() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__2; +x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__2; x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__3; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__4() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__3; +x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__3; x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__4; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__5() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__5() { _start: { lean_object* x_1; @@ -15724,17 +15584,17 @@ x_1 = lean_mk_string_from_bytes("DecEq", 5); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__6() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__4; -x_2 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__5; +x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__4; +x_2 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__5; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__7() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__7() { _start: { lean_object* x_1; @@ -15742,17 +15602,17 @@ x_1 = lean_mk_string_from_bytes("initFn", 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__8() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__6; -x_2 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__7; +x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__6; +x_2 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__7; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__9() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__9() { _start: { lean_object* x_1; @@ -15760,57 +15620,57 @@ x_1 = lean_mk_string_from_bytes("_@", 2); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__10() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__8; -x_2 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__9; +x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__8; +x_2 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__9; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__11() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__10; +x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__10; x_2 = l_Lean_Elab_Deriving_DecEq_mkMatch_mkSameCtorRhs___lambda__1___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__12() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__11; +x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__11; x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__3; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__13() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__12; +x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__12; x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__4; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__14() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__13; -x_2 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__5; +x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__13; +x_2 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__5; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__15() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__15() { _start: { lean_object* x_1; @@ -15818,32 +15678,32 @@ x_1 = lean_mk_string_from_bytes("_hyg", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__16() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__14; -x_2 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__15; +x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__14; +x_2 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__15; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__17() { +static lean_object* _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__16; -x_2 = lean_unsigned_to_nat(4735u); +x_1 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__16; +x_2 = lean_unsigned_to_nat(4714u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; x_2 = l_Lean_Elab_Deriving_DecEq_mkDecEqHeader___closed__2; -x_3 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__1; +x_3 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__1; x_4 = l_Lean_Elab_registerDerivingHandler(x_2, x_3, x_1); if (lean_obj_tag(x_4) == 0) { @@ -15853,7 +15713,7 @@ lean_inc(x_5); lean_dec(x_4); x_6 = l_Lean_Elab_Deriving_DecEq_mkDecEqCmds___closed__5; x_7 = 0; -x_8 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__17; +x_8 = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__17; x_9 = l_Lean_registerTraceClass(x_6, x_7, x_8, x_5); return x_9; } @@ -16402,49 +16262,41 @@ l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__56 = _init_l_Lean_Elab_Deriving lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__56); l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57 = _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57(); lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__57); -l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__58 = _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__58(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__58); -l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__59 = _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__59(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__59); -l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__60 = _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__60(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__60); -l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__61 = _init_l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__61(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_mkDecEqEnum___closed__61); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__1 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__1(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__1); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__2 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__2(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__2); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__3 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__3(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__3); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__4 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__4(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__4); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__5 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__5(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__5); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__6 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__6(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__6); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__7 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__7(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__7); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__8 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__8(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__8); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__9 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__9(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__9); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__10 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__10(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__10); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__11 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__11(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__11); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__12 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__12(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__12); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__13 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__13(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__13); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__14 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__14(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__14); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__15 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__15(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__15); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__16 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__16(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__16); -l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__17 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__17(); -lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735____closed__17); -if (builtin) {res = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4735_(lean_io_mk_world()); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__1 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__1(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__1); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__2 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__2(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__2); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__3 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__3(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__3); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__4 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__4(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__4); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__5 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__5(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__5); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__6 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__6(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__6); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__7 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__7(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__7); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__8 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__8(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__8); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__9 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__9(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__9); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__10 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__10(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__10); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__11 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__11(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__11); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__12 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__12(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__12); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__13 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__13(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__13); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__14 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__14(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__14); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__15 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__15(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__15); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__16 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__16(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__16); +l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__17 = _init_l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__17(); +lean_mark_persistent(l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714____closed__17); +if (builtin) {res = l_Lean_Elab_Deriving_DecEq_initFn____x40_Lean_Elab_Deriving_DecEq___hyg_4714_(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/Deriving/FromToJson.c b/stage0/stdlib/Lean/Elab/Deriving/FromToJson.c index 401e5010f9d2..db84e3eecb25 100644 --- a/stage0/stdlib/Lean/Elab/Deriving/FromToJson.c +++ b/stage0/stdlib/Lean/Elab/Deriving/FromToJson.c @@ -59,7 +59,6 @@ LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Deriving_FromToJs LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_FromToJson_mkToJsonInstance___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapIdxM_map___at_Lean_Elab_Deriving_FromToJson_mkToJsonInstance___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_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Deriving_FromToJson_mkFromJsonInstance___spec__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* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_FromToJson_mkToJsonInstance(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Deriving_FromToJson_mkToJsonInstance_mkAlts___spec__5___lambda__1___closed__6; static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Deriving_FromToJson_mkFromJsonInstance_mkAlts___spec__7___lambda__1___closed__36; @@ -208,6 +207,7 @@ lean_object* l_Lean_FVarId_getDecl(lean_object*, lean_object*, lean_object*, lea LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Deriving_FromToJson_mkToJsonInstance___spec__3(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_mapMUnsafe_map___at_Lean_Elab_Deriving_FromToJson_mkToJsonInstance_mkAlts___spec__5___lambda__1___closed__8; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Deriving_FromToJson_mkToJsonInstanceHandler___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_quoteNameMk(lean_object*); static lean_object* l_Lean_Elab_Deriving_FromToJson_mkToJsonInstance___lambda__3___closed__38; LEAN_EXPORT lean_object* l_Lean_Elab_Deriving_FromToJson_mkFromJsonInstance___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -9437,7 +9437,7 @@ x_26 = 0; x_27 = lean_usize_of_nat(x_18); lean_dec(x_18); x_28 = lean_box(0); -x_29 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_16, x_26, x_27, x_28, x_2, x_3, x_17); +x_29 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_16, x_26, x_27, x_28, x_2, x_3, x_17); lean_dec(x_16); if (lean_obj_tag(x_29) == 0) { @@ -9542,7 +9542,7 @@ x_54 = 0; x_55 = lean_usize_of_nat(x_44); lean_dec(x_44); x_56 = lean_box(0); -x_57 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_42, x_54, x_55, x_56, x_2, x_3, x_43); +x_57 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_42, x_54, x_55, x_56, x_2, x_3, x_43); lean_dec(x_42); if (lean_obj_tag(x_57) == 0) { @@ -9701,7 +9701,7 @@ x_88 = 0; x_89 = lean_usize_of_nat(x_80); lean_dec(x_80); x_90 = lean_box(0); -x_91 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_78, x_88, x_89, x_90, x_2, x_3, x_79); +x_91 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_78, x_88, x_89, x_90, x_2, x_3, x_79); lean_dec(x_78); if (lean_obj_tag(x_91) == 0) { @@ -9806,7 +9806,7 @@ x_116 = 0; x_117 = lean_usize_of_nat(x_106); lean_dec(x_106); x_118 = lean_box(0); -x_119 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_104, x_116, x_117, x_118, x_2, x_3, x_105); +x_119 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_104, x_116, x_117, x_118, x_2, x_3, x_105); lean_dec(x_104); if (lean_obj_tag(x_119) == 0) { @@ -19152,7 +19152,7 @@ x_26 = 0; x_27 = lean_usize_of_nat(x_18); lean_dec(x_18); x_28 = lean_box(0); -x_29 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_16, x_26, x_27, x_28, x_2, x_3, x_17); +x_29 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_16, x_26, x_27, x_28, x_2, x_3, x_17); lean_dec(x_16); if (lean_obj_tag(x_29) == 0) { @@ -19257,7 +19257,7 @@ x_54 = 0; x_55 = lean_usize_of_nat(x_44); lean_dec(x_44); x_56 = lean_box(0); -x_57 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_42, x_54, x_55, x_56, x_2, x_3, x_43); +x_57 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_42, x_54, x_55, x_56, x_2, x_3, x_43); lean_dec(x_42); if (lean_obj_tag(x_57) == 0) { @@ -19416,7 +19416,7 @@ x_88 = 0; x_89 = lean_usize_of_nat(x_80); lean_dec(x_80); x_90 = lean_box(0); -x_91 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_78, x_88, x_89, x_90, x_2, x_3, x_79); +x_91 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_78, x_88, x_89, x_90, x_2, x_3, x_79); lean_dec(x_78); if (lean_obj_tag(x_91) == 0) { @@ -19521,7 +19521,7 @@ x_116 = 0; x_117 = lean_usize_of_nat(x_106); lean_dec(x_106); x_118 = lean_box(0); -x_119 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__18(x_104, x_116, x_117, x_118, x_2, x_3, x_105); +x_119 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__25(x_104, x_116, x_117, x_118, x_2, x_3, x_105); lean_dec(x_104); if (lean_obj_tag(x_119) == 0) { diff --git a/stage0/stdlib/Lean/Elab/Inductive.c b/stage0/stdlib/Lean/Elab/Inductive.c index 8086258eb89d..a37b12ee6430 100644 --- a/stage0/stdlib/Lean/Elab/Inductive.c +++ b/stage0/stdlib/Lean/Elab/Inductive.c @@ -84,7 +84,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_mkResultUniverse(lean_object*, lean LEAN_EXPORT lean_object* l___private_Lean_Elab_Inductive_0__Lean_Elab_Command_computeFixedIndexBitMask_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_Lean_Elab_Command_accLevelAtCtor___closed__7; static lean_object* l_Lean_Elab_Command_shouldInferResultUniverse___closed__3; -lean_object* l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___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_Command_checkValidCtorModifier___rarg___lambda__3___closed__1; static lean_object* l_Lean_Elab_Command_accLevelAtCtor___closed__8; static lean_object* l___private_Lean_Elab_Inductive_0__Lean_Elab_Command_checkParamsAndResultType___lambda__1___closed__2; @@ -195,6 +194,7 @@ static lean_object* l___private_Lean_Elab_Inductive_0__Lean_Elab_Command_elabCto LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Inductive_0__Lean_Elab_Command_reorderCtorArgs___spec__4___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___private_Lean_Elab_Inductive_0__Lean_Elab_Command_elabHeader___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_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_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Inductive_0__Lean_Elab_Command_mkInductiveDecl___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_erase___at___private_Lean_Elab_Inductive_0__Lean_Elab_Command_reorderCtorArgs___spec__3(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_mapM_loop___at___private_Lean_Elab_Inductive_0__Lean_Elab_Command_elabCtors___spec__2___lambda__5(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*); @@ -2672,7 +2672,7 @@ if (x_13 == 0) lean_object* x_14; lean_object* x_15; lean_dec(x_2); lean_dec(x_1); -x_14 = lean_alloc_closure((void*)(l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1___rarg___boxed), 8, 1); +x_14 = lean_alloc_closure((void*)(l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__12___rarg___boxed), 8, 1); lean_closure_set(x_14, 0, x_3); x_15 = l_Lean_Elab_Term_withAutoBoundImplicitForbiddenPred___rarg(x_11, x_14, x_4, x_5, x_6, x_7, x_8, x_9, x_10); return x_15; diff --git a/stage0/stdlib/Lean/Elab/Level.c b/stage0/stdlib/Lean/Elab/Level.c index 1a81762e6d5a..ee91e7f5c58b 100644 --- a/stage0/stdlib/Lean/Elab/Level.c +++ b/stage0/stdlib/Lean/Elab/Level.c @@ -63,6 +63,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Level_mkFreshLevelMVar___boxed(lean_object* LEAN_EXPORT lean_object* l___private_Lean_Elab_Level_0__Lean_Elab_Level_checkUniverseOffset(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Level_instMonadNameGeneratorLevelElabM___lambda__1(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Level_elabLevel___closed__17; +lean_object* l_Lean_MessageData_ofSyntax(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_Elab_Level_instMonadOptionsLevelElabM___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Level_instMonadOptionsLevelElabM; @@ -91,6 +92,7 @@ static lean_object* l_Lean_Elab_Level_instMonadNameGeneratorLevelElabM___closed_ lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Level_0__Lean_Elab_Level_checkUniverseOffset___at_Lean_Elab_Level_elabLevel___spec__3___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Level_elabLevel___closed__20; +lean_object* lean_mk_syntax_ident(lean_object*); LEAN_EXPORT lean_object* l_Lean_mkFreshLMVarId___at_Lean_Elab_Level_mkFreshLevelMVar___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Level_instMonadNameGeneratorLevelElabM___lambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Level_instMonadRefLevelElabM; @@ -145,7 +147,6 @@ lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Level_elabLevel___closed__14; LEAN_EXPORT lean_object* l_Lean_Elab_Level_initFn____x40_Lean_Elab_Level___hyg_277_(lean_object*); static lean_object* l_Lean_Elab_Level_initFn____x40_Lean_Elab_Level___hyg_277____closed__6; -lean_object* l_Lean_MessageData_ofName(lean_object*); static lean_object* l_Lean_Elab_Level_elabLevel___closed__8; lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); static lean_object* l_Lean_Elab_Level_elabLevel___closed__6; @@ -1621,213 +1622,215 @@ if (x_55 == 0) { if (x_10 == 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; uint8_t 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; uint8_t x_63; lean_dec(x_54); lean_dec(x_53); lean_dec(x_52); lean_dec(x_8); -x_56 = l_Lean_MessageData_ofName(x_51); -x_57 = l_Lean_Elab_Level_elabLevel___closed__19; -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_Elab_Level_elabLevel___closed__21; -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_throwError___at_Lean_Elab_Level_elabLevel___spec__5(x_60, x_2, x_3); +x_56 = lean_mk_syntax_ident(x_51); +x_57 = l_Lean_MessageData_ofSyntax(x_56); +x_58 = l_Lean_Elab_Level_elabLevel___closed__19; +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_Level_elabLevel___closed__21; +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_Lean_Elab_Level_elabLevel___spec__5(x_61, x_2, x_3); lean_dec(x_2); -x_62 = !lean_is_exclusive(x_61); -if (x_62 == 0) +x_63 = !lean_is_exclusive(x_62); +if (x_63 == 0) { -return x_61; +return x_62; } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_63 = lean_ctor_get(x_61, 0); -x_64 = lean_ctor_get(x_61, 1); +lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_64 = lean_ctor_get(x_62, 0); +x_65 = lean_ctor_get(x_62, 1); +lean_inc(x_65); lean_inc(x_64); -lean_inc(x_63); -lean_dec(x_61); -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_dec(x_62); +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 { -lean_object* x_66; uint8_t x_67; uint8_t x_68; -x_66 = l_Lean_Elab_Level_elabLevel___closed__22; -x_67 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_8, x_66); +lean_object* x_67; uint8_t x_68; uint8_t x_69; +x_67 = l_Lean_Elab_Level_elabLevel___closed__22; +x_68 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_8, x_67); lean_dec(x_8); lean_inc(x_51); -x_68 = l_Lean_Elab_isValidAutoBoundLevelName(x_51, x_67); -if (x_68 == 0) +x_69 = l_Lean_Elab_isValidAutoBoundLevelName(x_51, x_68); +if (x_69 == 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_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; uint8_t x_77; lean_dec(x_54); lean_dec(x_53); lean_dec(x_52); -x_69 = l_Lean_MessageData_ofName(x_51); -x_70 = l_Lean_Elab_Level_elabLevel___closed__19; -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_Elab_Level_elabLevel___closed__21; +x_70 = lean_mk_syntax_ident(x_51); +x_71 = l_Lean_MessageData_ofSyntax(x_70); +x_72 = l_Lean_Elab_Level_elabLevel___closed__19; 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_throwError___at_Lean_Elab_Level_elabLevel___spec__5(x_73, x_2, x_3); +lean_ctor_set(x_73, 0, x_72); +lean_ctor_set(x_73, 1, x_71); +x_74 = l_Lean_Elab_Level_elabLevel___closed__21; +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_throwError___at_Lean_Elab_Level_elabLevel___spec__5(x_75, x_2, x_3); lean_dec(x_2); -x_75 = !lean_is_exclusive(x_74); -if (x_75 == 0) +x_77 = !lean_is_exclusive(x_76); +if (x_77 == 0) { -return x_74; +return x_76; } else { -lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_76 = lean_ctor_get(x_74, 0); -x_77 = lean_ctor_get(x_74, 1); -lean_inc(x_77); -lean_inc(x_76); -lean_dec(x_74); -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_object* x_78; lean_object* x_79; lean_object* x_80; +x_78 = lean_ctor_get(x_76, 0); +x_79 = lean_ctor_get(x_76, 1); +lean_inc(x_79); +lean_inc(x_78); +lean_dec(x_76); +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_79; -x_79 = !lean_is_exclusive(x_3); -if (x_79 == 0) +uint8_t x_81; +x_81 = !lean_is_exclusive(x_3); +if (x_81 == 0) { -lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; -x_80 = lean_ctor_get(x_3, 2); -lean_dec(x_80); -x_81 = lean_ctor_get(x_3, 1); -lean_dec(x_81); -x_82 = lean_ctor_get(x_3, 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; +x_82 = lean_ctor_get(x_3, 2); lean_dec(x_82); +x_83 = lean_ctor_get(x_3, 1); +lean_dec(x_83); +x_84 = lean_ctor_get(x_3, 0); +lean_dec(x_84); lean_inc(x_51); -x_83 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_83, 0, x_51); -lean_ctor_set(x_83, 1, x_54); -lean_ctor_set(x_3, 2, x_83); -x_84 = lean_box(0); -x_85 = l_Lean_Elab_Level_elabLevel___lambda__1(x_51, x_84, x_2, x_3); +x_85 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_85, 0, x_51); +lean_ctor_set(x_85, 1, x_54); +lean_ctor_set(x_3, 2, x_85); +x_86 = lean_box(0); +x_87 = l_Lean_Elab_Level_elabLevel___lambda__1(x_51, x_86, x_2, x_3); lean_dec(x_2); -return x_85; +return x_87; } else { -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_dec(x_3); lean_inc(x_51); -x_86 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_86, 0, x_51); -lean_ctor_set(x_86, 1, x_54); -x_87 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_87, 0, x_52); -lean_ctor_set(x_87, 1, x_53); -lean_ctor_set(x_87, 2, x_86); -x_88 = lean_box(0); -x_89 = l_Lean_Elab_Level_elabLevel___lambda__1(x_51, x_88, x_2, x_87); +x_88 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_88, 0, x_51); +lean_ctor_set(x_88, 1, x_54); +x_89 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_89, 0, x_52); +lean_ctor_set(x_89, 1, x_53); +lean_ctor_set(x_89, 2, x_88); +x_90 = lean_box(0); +x_91 = l_Lean_Elab_Level_elabLevel___lambda__1(x_51, x_90, x_2, x_89); lean_dec(x_2); -return x_89; +return x_91; } } } } else { -lean_object* x_90; lean_object* x_91; +lean_object* x_92; lean_object* x_93; lean_dec(x_54); lean_dec(x_53); lean_dec(x_52); lean_dec(x_8); -x_90 = lean_box(0); -x_91 = l_Lean_Elab_Level_elabLevel___lambda__1(x_51, x_90, x_2, x_3); +x_92 = lean_box(0); +x_93 = l_Lean_Elab_Level_elabLevel___lambda__1(x_51, x_92, x_2, x_3); lean_dec(x_2); -return x_91; +return x_93; } } } else { -lean_object* x_92; +lean_object* x_94; lean_dec(x_8); lean_dec(x_4); -x_92 = l_Lean_Syntax_isNatLit_x3f(x_1); +x_94 = l_Lean_Syntax_isNatLit_x3f(x_1); lean_dec(x_1); -if (lean_obj_tag(x_92) == 0) +if (lean_obj_tag(x_94) == 0) { -lean_object* x_93; -x_93 = l_Lean_Elab_throwIllFormedSyntax___at_Lean_Elab_Level_elabLevel___spec__2(x_2, x_3); -return x_93; +lean_object* x_95; +x_95 = l_Lean_Elab_throwIllFormedSyntax___at_Lean_Elab_Level_elabLevel___spec__2(x_2, x_3); +return x_95; } else { -lean_object* x_94; lean_object* x_95; -x_94 = lean_ctor_get(x_92, 0); -lean_inc(x_94); -lean_dec(x_92); -lean_inc(x_94); -x_95 = l___private_Lean_Elab_Level_0__Lean_Elab_Level_checkUniverseOffset___at_Lean_Elab_Level_elabLevel___spec__3(x_94, x_2, x_3); +lean_object* x_96; lean_object* x_97; +x_96 = lean_ctor_get(x_94, 0); +lean_inc(x_96); +lean_dec(x_94); +lean_inc(x_96); +x_97 = l___private_Lean_Elab_Level_0__Lean_Elab_Level_checkUniverseOffset___at_Lean_Elab_Level_elabLevel___spec__3(x_96, x_2, x_3); lean_dec(x_2); -if (lean_obj_tag(x_95) == 0) +if (lean_obj_tag(x_97) == 0) { -uint8_t x_96; -x_96 = !lean_is_exclusive(x_95); -if (x_96 == 0) +uint8_t x_98; +x_98 = !lean_is_exclusive(x_97); +if (x_98 == 0) { -lean_object* x_97; lean_object* x_98; -x_97 = lean_ctor_get(x_95, 0); -lean_dec(x_97); -x_98 = l_Lean_Level_ofNat(x_94); -lean_dec(x_94); -lean_ctor_set(x_95, 0, x_98); -return x_95; +lean_object* x_99; lean_object* x_100; +x_99 = lean_ctor_get(x_97, 0); +lean_dec(x_99); +x_100 = l_Lean_Level_ofNat(x_96); +lean_dec(x_96); +lean_ctor_set(x_97, 0, x_100); +return x_97; } else { -lean_object* x_99; lean_object* x_100; lean_object* x_101; -x_99 = lean_ctor_get(x_95, 1); -lean_inc(x_99); -lean_dec(x_95); -x_100 = l_Lean_Level_ofNat(x_94); -lean_dec(x_94); -x_101 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_101, 0, x_100); -lean_ctor_set(x_101, 1, x_99); -return x_101; +lean_object* x_101; lean_object* x_102; lean_object* x_103; +x_101 = lean_ctor_get(x_97, 1); +lean_inc(x_101); +lean_dec(x_97); +x_102 = l_Lean_Level_ofNat(x_96); +lean_dec(x_96); +x_103 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_103, 0, x_102); +lean_ctor_set(x_103, 1, x_101); +return x_103; } } else { -uint8_t x_102; -lean_dec(x_94); -x_102 = !lean_is_exclusive(x_95); -if (x_102 == 0) +uint8_t x_104; +lean_dec(x_96); +x_104 = !lean_is_exclusive(x_97); +if (x_104 == 0) { -return x_95; +return x_97; } else { -lean_object* x_103; lean_object* x_104; lean_object* x_105; -x_103 = lean_ctor_get(x_95, 0); -x_104 = lean_ctor_get(x_95, 1); -lean_inc(x_104); -lean_inc(x_103); -lean_dec(x_95); -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; +lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_105 = lean_ctor_get(x_97, 0); +x_106 = lean_ctor_get(x_97, 1); +lean_inc(x_106); +lean_inc(x_105); +lean_dec(x_97); +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; } } } @@ -1835,1115 +1838,1117 @@ return x_105; } else { -lean_object* x_106; +lean_object* x_108; lean_dec(x_8); lean_dec(x_4); lean_dec(x_1); -x_106 = l_Lean_Elab_Level_mkFreshLevelMVar(x_2, x_3); +x_108 = l_Lean_Elab_Level_mkFreshLevelMVar(x_2, x_3); lean_dec(x_2); -return x_106; +return x_108; } } 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_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_dec(x_8); lean_dec(x_4); -x_107 = lean_unsigned_to_nat(1u); -x_108 = l_Lean_Syntax_getArg(x_1, x_107); +x_109 = lean_unsigned_to_nat(1u); +x_110 = l_Lean_Syntax_getArg(x_1, x_109); lean_dec(x_1); -x_109 = l_Lean_Syntax_getArgs(x_108); -lean_dec(x_108); -x_110 = l_Lean_instInhabitedSyntax; -x_111 = l_Array_back___rarg(x_110, x_109); +x_111 = l_Lean_Syntax_getArgs(x_110); +lean_dec(x_110); +x_112 = l_Lean_instInhabitedSyntax; +x_113 = l_Array_back___rarg(x_112, x_111); lean_inc(x_2); -x_112 = l_Lean_Elab_Level_elabLevel(x_111, x_2, x_3); -if (lean_obj_tag(x_112) == 0) -{ -uint8_t x_113; -x_113 = !lean_is_exclusive(x_112); -if (x_113 == 0) -{ -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; uint8_t x_124; -x_114 = lean_ctor_get(x_112, 0); -x_115 = lean_ctor_get(x_112, 1); -x_116 = lean_array_get_size(x_109); -x_117 = lean_nat_sub(x_116, x_107); -lean_dec(x_116); -x_118 = lean_unsigned_to_nat(0u); -x_119 = l_Array_toSubarray___rarg(x_109, x_118, x_117); -x_120 = lean_ctor_get(x_119, 0); -lean_inc(x_120); -x_121 = lean_ctor_get(x_119, 2); -lean_inc(x_121); -x_122 = lean_ctor_get(x_119, 1); +x_114 = l_Lean_Elab_Level_elabLevel(x_113, x_2, x_3); +if (lean_obj_tag(x_114) == 0) +{ +uint8_t x_115; +x_115 = !lean_is_exclusive(x_114); +if (x_115 == 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; lean_object* x_125; uint8_t x_126; +x_116 = lean_ctor_get(x_114, 0); +x_117 = lean_ctor_get(x_114, 1); +x_118 = lean_array_get_size(x_111); +x_119 = lean_nat_sub(x_118, x_109); +lean_dec(x_118); +x_120 = lean_unsigned_to_nat(0u); +x_121 = l_Array_toSubarray___rarg(x_111, x_120, x_119); +x_122 = lean_ctor_get(x_121, 0); lean_inc(x_122); -lean_dec(x_119); -x_123 = lean_array_get_size(x_120); -x_124 = lean_nat_dec_le(x_121, x_123); -if (x_124 == 0) -{ -uint8_t x_125; +x_123 = lean_ctor_get(x_121, 2); +lean_inc(x_123); +x_124 = lean_ctor_get(x_121, 1); +lean_inc(x_124); lean_dec(x_121); -x_125 = lean_nat_dec_lt(x_122, x_123); -if (x_125 == 0) +x_125 = lean_array_get_size(x_122); +x_126 = lean_nat_dec_le(x_123, x_125); +if (x_126 == 0) { +uint8_t x_127; lean_dec(x_123); +x_127 = lean_nat_dec_lt(x_124, x_125); +if (x_127 == 0) +{ +lean_dec(x_125); +lean_dec(x_124); lean_dec(x_122); -lean_dec(x_120); lean_dec(x_2); -return x_112; +return x_114; } else { -size_t x_126; size_t x_127; lean_object* x_128; -lean_free_object(x_112); -x_126 = lean_usize_of_nat(x_123); -lean_dec(x_123); -x_127 = lean_usize_of_nat(x_122); +size_t x_128; size_t x_129; lean_object* x_130; +lean_free_object(x_114); +x_128 = lean_usize_of_nat(x_125); +lean_dec(x_125); +x_129 = lean_usize_of_nat(x_124); +lean_dec(x_124); +x_130 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__6(x_122, x_128, x_129, x_116, x_2, x_117); lean_dec(x_122); -x_128 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__6(x_120, x_126, x_127, x_114, x_2, x_115); -lean_dec(x_120); -return x_128; +return x_130; } } else { -uint8_t x_129; -lean_dec(x_123); -x_129 = lean_nat_dec_lt(x_122, x_121); -if (x_129 == 0) +uint8_t x_131; +lean_dec(x_125); +x_131 = lean_nat_dec_lt(x_124, x_123); +if (x_131 == 0) { +lean_dec(x_124); +lean_dec(x_123); lean_dec(x_122); -lean_dec(x_121); -lean_dec(x_120); lean_dec(x_2); -return x_112; +return x_114; } else { -size_t x_130; size_t x_131; lean_object* x_132; -lean_free_object(x_112); -x_130 = lean_usize_of_nat(x_121); -lean_dec(x_121); -x_131 = lean_usize_of_nat(x_122); +size_t x_132; size_t x_133; lean_object* x_134; +lean_free_object(x_114); +x_132 = lean_usize_of_nat(x_123); +lean_dec(x_123); +x_133 = lean_usize_of_nat(x_124); +lean_dec(x_124); +x_134 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__6(x_122, x_132, x_133, x_116, x_2, x_117); lean_dec(x_122); -x_132 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__6(x_120, x_130, x_131, x_114, x_2, x_115); -lean_dec(x_120); -return x_132; -} -} -} -else -{ -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; uint8_t x_143; -x_133 = lean_ctor_get(x_112, 0); -x_134 = lean_ctor_get(x_112, 1); -lean_inc(x_134); -lean_inc(x_133); -lean_dec(x_112); -x_135 = lean_array_get_size(x_109); -x_136 = lean_nat_sub(x_135, x_107); -lean_dec(x_135); -x_137 = lean_unsigned_to_nat(0u); -x_138 = l_Array_toSubarray___rarg(x_109, x_137, x_136); -x_139 = lean_ctor_get(x_138, 0); -lean_inc(x_139); -x_140 = lean_ctor_get(x_138, 2); -lean_inc(x_140); -x_141 = lean_ctor_get(x_138, 1); -lean_inc(x_141); -lean_dec(x_138); -x_142 = lean_array_get_size(x_139); -x_143 = lean_nat_dec_le(x_140, x_142); -if (x_143 == 0) +return x_134; +} +} +} +else { -uint8_t x_144; +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; +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_array_get_size(x_111); +x_138 = lean_nat_sub(x_137, x_109); +lean_dec(x_137); +x_139 = lean_unsigned_to_nat(0u); +x_140 = l_Array_toSubarray___rarg(x_111, x_139, x_138); +x_141 = lean_ctor_get(x_140, 0); +lean_inc(x_141); +x_142 = lean_ctor_get(x_140, 2); +lean_inc(x_142); +x_143 = lean_ctor_get(x_140, 1); +lean_inc(x_143); lean_dec(x_140); -x_144 = lean_nat_dec_lt(x_141, x_142); -if (x_144 == 0) +x_144 = lean_array_get_size(x_141); +x_145 = lean_nat_dec_le(x_142, x_144); +if (x_145 == 0) { -lean_object* x_145; +uint8_t x_146; lean_dec(x_142); +x_146 = lean_nat_dec_lt(x_143, x_144); +if (x_146 == 0) +{ +lean_object* x_147; +lean_dec(x_144); +lean_dec(x_143); lean_dec(x_141); -lean_dec(x_139); lean_dec(x_2); -x_145 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_145, 0, x_133); -lean_ctor_set(x_145, 1, x_134); -return x_145; +x_147 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_147, 0, x_135); +lean_ctor_set(x_147, 1, x_136); +return x_147; } else { -size_t x_146; size_t x_147; lean_object* x_148; -x_146 = lean_usize_of_nat(x_142); -lean_dec(x_142); -x_147 = lean_usize_of_nat(x_141); +size_t x_148; size_t x_149; lean_object* x_150; +x_148 = lean_usize_of_nat(x_144); +lean_dec(x_144); +x_149 = lean_usize_of_nat(x_143); +lean_dec(x_143); +x_150 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__6(x_141, x_148, x_149, x_135, x_2, x_136); lean_dec(x_141); -x_148 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__6(x_139, x_146, x_147, x_133, x_2, x_134); -lean_dec(x_139); -return x_148; +return x_150; } } else { -uint8_t x_149; -lean_dec(x_142); -x_149 = lean_nat_dec_lt(x_141, x_140); -if (x_149 == 0) +uint8_t x_151; +lean_dec(x_144); +x_151 = lean_nat_dec_lt(x_143, x_142); +if (x_151 == 0) { -lean_object* x_150; +lean_object* x_152; +lean_dec(x_143); +lean_dec(x_142); lean_dec(x_141); -lean_dec(x_140); -lean_dec(x_139); lean_dec(x_2); -x_150 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_150, 0, x_133); -lean_ctor_set(x_150, 1, x_134); -return x_150; +x_152 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_152, 0, x_135); +lean_ctor_set(x_152, 1, x_136); +return x_152; } else { -size_t x_151; size_t x_152; lean_object* x_153; -x_151 = lean_usize_of_nat(x_140); -lean_dec(x_140); -x_152 = lean_usize_of_nat(x_141); +size_t x_153; size_t x_154; lean_object* x_155; +x_153 = lean_usize_of_nat(x_142); +lean_dec(x_142); +x_154 = lean_usize_of_nat(x_143); +lean_dec(x_143); +x_155 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__6(x_141, x_153, x_154, x_135, x_2, x_136); lean_dec(x_141); -x_153 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__6(x_139, x_151, x_152, x_133, x_2, x_134); -lean_dec(x_139); -return x_153; +return x_155; } } } } else { -uint8_t x_154; -lean_dec(x_109); +uint8_t x_156; +lean_dec(x_111); lean_dec(x_2); -x_154 = !lean_is_exclusive(x_112); -if (x_154 == 0) +x_156 = !lean_is_exclusive(x_114); +if (x_156 == 0) { -return x_112; +return x_114; } else { -lean_object* x_155; lean_object* x_156; lean_object* x_157; -x_155 = lean_ctor_get(x_112, 0); -x_156 = lean_ctor_get(x_112, 1); -lean_inc(x_156); -lean_inc(x_155); -lean_dec(x_112); -x_157 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_157, 0, x_155); -lean_ctor_set(x_157, 1, x_156); -return x_157; +lean_object* x_157; lean_object* x_158; lean_object* x_159; +x_157 = lean_ctor_get(x_114, 0); +x_158 = lean_ctor_get(x_114, 1); +lean_inc(x_158); +lean_inc(x_157); +lean_dec(x_114); +x_159 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_159, 0, x_157); +lean_ctor_set(x_159, 1, x_158); +return x_159; } } } } else { -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_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_dec(x_8); lean_dec(x_4); -x_158 = lean_unsigned_to_nat(1u); -x_159 = l_Lean_Syntax_getArg(x_1, x_158); +x_160 = lean_unsigned_to_nat(1u); +x_161 = l_Lean_Syntax_getArg(x_1, x_160); lean_dec(x_1); -x_160 = l_Lean_Syntax_getArgs(x_159); -lean_dec(x_159); -x_161 = l_Lean_instInhabitedSyntax; -x_162 = l_Array_back___rarg(x_161, x_160); +x_162 = l_Lean_Syntax_getArgs(x_161); +lean_dec(x_161); +x_163 = l_Lean_instInhabitedSyntax; +x_164 = l_Array_back___rarg(x_163, x_162); lean_inc(x_2); -x_163 = l_Lean_Elab_Level_elabLevel(x_162, x_2, x_3); -if (lean_obj_tag(x_163) == 0) -{ -uint8_t x_164; -x_164 = !lean_is_exclusive(x_163); -if (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; uint8_t x_175; -x_165 = lean_ctor_get(x_163, 0); -x_166 = lean_ctor_get(x_163, 1); -x_167 = lean_array_get_size(x_160); -x_168 = lean_nat_sub(x_167, x_158); -lean_dec(x_167); -x_169 = lean_unsigned_to_nat(0u); -x_170 = l_Array_toSubarray___rarg(x_160, x_169, x_168); -x_171 = lean_ctor_get(x_170, 0); -lean_inc(x_171); -x_172 = lean_ctor_get(x_170, 2); -lean_inc(x_172); -x_173 = lean_ctor_get(x_170, 1); +x_165 = l_Lean_Elab_Level_elabLevel(x_164, x_2, x_3); +if (lean_obj_tag(x_165) == 0) +{ +uint8_t x_166; +x_166 = !lean_is_exclusive(x_165); +if (x_166 == 0) +{ +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; uint8_t x_177; +x_167 = lean_ctor_get(x_165, 0); +x_168 = lean_ctor_get(x_165, 1); +x_169 = lean_array_get_size(x_162); +x_170 = lean_nat_sub(x_169, x_160); +lean_dec(x_169); +x_171 = lean_unsigned_to_nat(0u); +x_172 = l_Array_toSubarray___rarg(x_162, x_171, x_170); +x_173 = lean_ctor_get(x_172, 0); lean_inc(x_173); -lean_dec(x_170); -x_174 = lean_array_get_size(x_171); -x_175 = lean_nat_dec_le(x_172, x_174); -if (x_175 == 0) -{ -uint8_t x_176; +x_174 = lean_ctor_get(x_172, 2); +lean_inc(x_174); +x_175 = lean_ctor_get(x_172, 1); +lean_inc(x_175); lean_dec(x_172); -x_176 = lean_nat_dec_lt(x_173, x_174); -if (x_176 == 0) +x_176 = lean_array_get_size(x_173); +x_177 = lean_nat_dec_le(x_174, x_176); +if (x_177 == 0) { +uint8_t x_178; lean_dec(x_174); +x_178 = lean_nat_dec_lt(x_175, x_176); +if (x_178 == 0) +{ +lean_dec(x_176); +lean_dec(x_175); lean_dec(x_173); -lean_dec(x_171); lean_dec(x_2); -return x_163; +return x_165; } else { -size_t x_177; size_t x_178; lean_object* x_179; -lean_free_object(x_163); -x_177 = lean_usize_of_nat(x_174); -lean_dec(x_174); -x_178 = lean_usize_of_nat(x_173); +size_t x_179; size_t x_180; lean_object* x_181; +lean_free_object(x_165); +x_179 = lean_usize_of_nat(x_176); +lean_dec(x_176); +x_180 = lean_usize_of_nat(x_175); +lean_dec(x_175); +x_181 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__7(x_173, x_179, x_180, x_167, x_2, x_168); lean_dec(x_173); -x_179 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__7(x_171, x_177, x_178, x_165, x_2, x_166); -lean_dec(x_171); -return x_179; +return x_181; } } else { -uint8_t x_180; -lean_dec(x_174); -x_180 = lean_nat_dec_lt(x_173, x_172); -if (x_180 == 0) +uint8_t x_182; +lean_dec(x_176); +x_182 = lean_nat_dec_lt(x_175, x_174); +if (x_182 == 0) { +lean_dec(x_175); +lean_dec(x_174); lean_dec(x_173); -lean_dec(x_172); -lean_dec(x_171); lean_dec(x_2); -return x_163; +return x_165; } else { -size_t x_181; size_t x_182; lean_object* x_183; -lean_free_object(x_163); -x_181 = lean_usize_of_nat(x_172); -lean_dec(x_172); -x_182 = lean_usize_of_nat(x_173); +size_t x_183; size_t x_184; lean_object* x_185; +lean_free_object(x_165); +x_183 = lean_usize_of_nat(x_174); +lean_dec(x_174); +x_184 = lean_usize_of_nat(x_175); +lean_dec(x_175); +x_185 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__7(x_173, x_183, x_184, x_167, x_2, x_168); lean_dec(x_173); -x_183 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__7(x_171, x_181, x_182, x_165, x_2, x_166); -lean_dec(x_171); -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; lean_object* x_191; lean_object* x_192; lean_object* x_193; uint8_t x_194; -x_184 = lean_ctor_get(x_163, 0); -x_185 = lean_ctor_get(x_163, 1); -lean_inc(x_185); -lean_inc(x_184); -lean_dec(x_163); -x_186 = lean_array_get_size(x_160); -x_187 = lean_nat_sub(x_186, x_158); -lean_dec(x_186); -x_188 = lean_unsigned_to_nat(0u); -x_189 = l_Array_toSubarray___rarg(x_160, x_188, x_187); -x_190 = lean_ctor_get(x_189, 0); -lean_inc(x_190); -x_191 = lean_ctor_get(x_189, 2); -lean_inc(x_191); -x_192 = lean_ctor_get(x_189, 1); -lean_inc(x_192); -lean_dec(x_189); -x_193 = lean_array_get_size(x_190); -x_194 = lean_nat_dec_le(x_191, x_193); -if (x_194 == 0) +return x_185; +} +} +} +else { -uint8_t x_195; +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; uint8_t x_196; +x_186 = lean_ctor_get(x_165, 0); +x_187 = lean_ctor_get(x_165, 1); +lean_inc(x_187); +lean_inc(x_186); +lean_dec(x_165); +x_188 = lean_array_get_size(x_162); +x_189 = lean_nat_sub(x_188, x_160); +lean_dec(x_188); +x_190 = lean_unsigned_to_nat(0u); +x_191 = l_Array_toSubarray___rarg(x_162, x_190, x_189); +x_192 = lean_ctor_get(x_191, 0); +lean_inc(x_192); +x_193 = lean_ctor_get(x_191, 2); +lean_inc(x_193); +x_194 = lean_ctor_get(x_191, 1); +lean_inc(x_194); lean_dec(x_191); -x_195 = lean_nat_dec_lt(x_192, x_193); -if (x_195 == 0) +x_195 = lean_array_get_size(x_192); +x_196 = lean_nat_dec_le(x_193, x_195); +if (x_196 == 0) { -lean_object* x_196; +uint8_t x_197; lean_dec(x_193); +x_197 = lean_nat_dec_lt(x_194, x_195); +if (x_197 == 0) +{ +lean_object* x_198; +lean_dec(x_195); +lean_dec(x_194); lean_dec(x_192); -lean_dec(x_190); lean_dec(x_2); -x_196 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_196, 0, x_184); -lean_ctor_set(x_196, 1, x_185); -return x_196; +x_198 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_198, 0, x_186); +lean_ctor_set(x_198, 1, x_187); +return x_198; } else { -size_t x_197; size_t x_198; lean_object* x_199; -x_197 = lean_usize_of_nat(x_193); -lean_dec(x_193); -x_198 = lean_usize_of_nat(x_192); +size_t x_199; size_t x_200; lean_object* x_201; +x_199 = lean_usize_of_nat(x_195); +lean_dec(x_195); +x_200 = lean_usize_of_nat(x_194); +lean_dec(x_194); +x_201 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__7(x_192, x_199, x_200, x_186, x_2, x_187); lean_dec(x_192); -x_199 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__7(x_190, x_197, x_198, x_184, x_2, x_185); -lean_dec(x_190); -return x_199; +return x_201; } } else { -uint8_t x_200; -lean_dec(x_193); -x_200 = lean_nat_dec_lt(x_192, x_191); -if (x_200 == 0) +uint8_t x_202; +lean_dec(x_195); +x_202 = lean_nat_dec_lt(x_194, x_193); +if (x_202 == 0) { -lean_object* x_201; +lean_object* x_203; +lean_dec(x_194); +lean_dec(x_193); lean_dec(x_192); -lean_dec(x_191); -lean_dec(x_190); lean_dec(x_2); -x_201 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_201, 0, x_184); -lean_ctor_set(x_201, 1, x_185); -return x_201; +x_203 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_203, 0, x_186); +lean_ctor_set(x_203, 1, x_187); +return x_203; } else { -size_t x_202; size_t x_203; lean_object* x_204; -x_202 = lean_usize_of_nat(x_191); -lean_dec(x_191); -x_203 = lean_usize_of_nat(x_192); +size_t x_204; size_t x_205; lean_object* x_206; +x_204 = lean_usize_of_nat(x_193); +lean_dec(x_193); +x_205 = lean_usize_of_nat(x_194); +lean_dec(x_194); +x_206 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__7(x_192, x_204, x_205, x_186, x_2, x_187); lean_dec(x_192); -x_204 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__7(x_190, x_202, x_203, x_184, x_2, x_185); -lean_dec(x_190); -return x_204; +return x_206; } } } } else { -uint8_t x_205; -lean_dec(x_160); +uint8_t x_207; +lean_dec(x_162); lean_dec(x_2); -x_205 = !lean_is_exclusive(x_163); -if (x_205 == 0) +x_207 = !lean_is_exclusive(x_165); +if (x_207 == 0) { -return x_163; +return x_165; } else { -lean_object* x_206; lean_object* x_207; lean_object* x_208; -x_206 = lean_ctor_get(x_163, 0); -x_207 = lean_ctor_get(x_163, 1); -lean_inc(x_207); -lean_inc(x_206); -lean_dec(x_163); -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; +lean_object* x_208; lean_object* x_209; lean_object* x_210; +x_208 = lean_ctor_get(x_165, 0); +x_209 = lean_ctor_get(x_165, 1); +lean_inc(x_209); +lean_inc(x_208); +lean_dec(x_165); +x_210 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_210, 0, x_208); +lean_ctor_set(x_210, 1, x_209); +return x_210; } } } } else { -lean_object* x_209; lean_object* x_210; +lean_object* x_211; lean_object* x_212; lean_dec(x_8); lean_dec(x_4); -x_209 = lean_unsigned_to_nat(1u); -x_210 = l_Lean_Syntax_getArg(x_1, x_209); +x_211 = lean_unsigned_to_nat(1u); +x_212 = l_Lean_Syntax_getArg(x_1, x_211); lean_dec(x_1); -x_1 = x_210; +x_1 = x_212; goto _start; } } else { -lean_object* x_212; lean_object* x_213; uint8_t x_214; lean_object* x_215; lean_object* x_216; -x_212 = lean_ctor_get(x_2, 0); -x_213 = lean_ctor_get(x_2, 1); -x_214 = lean_ctor_get_uint8(x_2, sizeof(void*)*2); -lean_inc(x_213); -lean_inc(x_212); +lean_object* x_214; lean_object* x_215; uint8_t x_216; lean_object* x_217; lean_object* x_218; +x_214 = lean_ctor_get(x_2, 0); +x_215 = lean_ctor_get(x_2, 1); +x_216 = lean_ctor_get_uint8(x_2, sizeof(void*)*2); +lean_inc(x_215); +lean_inc(x_214); lean_dec(x_2); -x_215 = l_Lean_replaceRef(x_1, x_213); -lean_dec(x_213); -lean_inc(x_212); -x_216 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_216, 0, x_212); -lean_ctor_set(x_216, 1, x_215); -lean_ctor_set_uint8(x_216, sizeof(void*)*2, x_214); +x_217 = l_Lean_replaceRef(x_1, x_215); +lean_dec(x_215); +lean_inc(x_214); +x_218 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_218, 0, x_214); +lean_ctor_set(x_218, 1, x_217); +lean_ctor_set_uint8(x_218, sizeof(void*)*2, x_216); if (x_6 == 0) { -lean_object* x_217; uint8_t x_218; -x_217 = l_Lean_Elab_Level_elabLevel___closed__5; -x_218 = lean_name_eq(x_4, x_217); -if (x_218 == 0) -{ lean_object* x_219; uint8_t x_220; -x_219 = l_Lean_Elab_Level_elabLevel___closed__7; +x_219 = l_Lean_Elab_Level_elabLevel___closed__5; x_220 = lean_name_eq(x_4, x_219); if (x_220 == 0) { lean_object* x_221; uint8_t x_222; -x_221 = l_Lean_Elab_Level_elabLevel___closed__9; +x_221 = l_Lean_Elab_Level_elabLevel___closed__7; x_222 = lean_name_eq(x_4, x_221); if (x_222 == 0) { lean_object* x_223; uint8_t x_224; -x_223 = l_Lean_Elab_Level_elabLevel___closed__11; +x_223 = l_Lean_Elab_Level_elabLevel___closed__9; x_224 = lean_name_eq(x_4, x_223); if (x_224 == 0) { lean_object* x_225; uint8_t x_226; -x_225 = l_Lean_Elab_Level_elabLevel___closed__13; +x_225 = l_Lean_Elab_Level_elabLevel___closed__11; x_226 = lean_name_eq(x_4, x_225); if (x_226 == 0) { lean_object* x_227; uint8_t x_228; -lean_dec(x_212); -x_227 = l_Lean_Elab_Level_elabLevel___closed__15; +x_227 = l_Lean_Elab_Level_elabLevel___closed__13; x_228 = lean_name_eq(x_4, x_227); -lean_dec(x_4); if (x_228 == 0) { -lean_object* x_229; lean_object* x_230; +lean_object* x_229; uint8_t x_230; +lean_dec(x_214); +x_229 = l_Lean_Elab_Level_elabLevel___closed__15; +x_230 = lean_name_eq(x_4, x_229); +lean_dec(x_4); +if (x_230 == 0) +{ +lean_object* x_231; lean_object* x_232; lean_dec(x_1); -x_229 = l_Lean_Elab_Level_elabLevel___closed__17; -x_230 = l_Lean_throwError___at_Lean_Elab_Level_elabLevel___spec__1(x_229, x_216, x_3); -lean_dec(x_216); -return x_230; -} -else -{ -lean_object* x_231; lean_object* x_232; lean_object* x_233; -x_231 = lean_unsigned_to_nat(0u); -x_232 = l_Lean_Syntax_getArg(x_1, x_231); -lean_inc(x_216); -x_233 = l_Lean_Elab_Level_elabLevel(x_232, x_216, x_3); -if (lean_obj_tag(x_233) == 0) -{ -lean_object* x_234; lean_object* x_235; lean_object* x_236; lean_object* x_237; lean_object* x_238; -x_234 = lean_ctor_get(x_233, 0); -lean_inc(x_234); -x_235 = lean_ctor_get(x_233, 1); -lean_inc(x_235); -lean_dec(x_233); -x_236 = lean_unsigned_to_nat(2u); -x_237 = l_Lean_Syntax_getArg(x_1, x_236); +x_231 = l_Lean_Elab_Level_elabLevel___closed__17; +x_232 = l_Lean_throwError___at_Lean_Elab_Level_elabLevel___spec__1(x_231, x_218, x_3); +lean_dec(x_218); +return x_232; +} +else +{ +lean_object* x_233; lean_object* x_234; lean_object* x_235; +x_233 = lean_unsigned_to_nat(0u); +x_234 = l_Lean_Syntax_getArg(x_1, x_233); +lean_inc(x_218); +x_235 = l_Lean_Elab_Level_elabLevel(x_234, x_218, x_3); +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, 0); +lean_inc(x_236); +x_237 = lean_ctor_get(x_235, 1); +lean_inc(x_237); +lean_dec(x_235); +x_238 = lean_unsigned_to_nat(2u); +x_239 = l_Lean_Syntax_getArg(x_1, x_238); lean_dec(x_1); -x_238 = l_Lean_Syntax_isNatLit_x3f(x_237); -lean_dec(x_237); -if (lean_obj_tag(x_238) == 0) +x_240 = l_Lean_Syntax_isNatLit_x3f(x_239); +lean_dec(x_239); +if (lean_obj_tag(x_240) == 0) { -lean_object* x_239; -lean_dec(x_234); -x_239 = l_Lean_Elab_throwIllFormedSyntax___at_Lean_Elab_Level_elabLevel___spec__2(x_216, x_235); -return x_239; +lean_object* x_241; +lean_dec(x_236); +x_241 = l_Lean_Elab_throwIllFormedSyntax___at_Lean_Elab_Level_elabLevel___spec__2(x_218, x_237); +return x_241; } else { -lean_object* x_240; lean_object* x_241; -x_240 = lean_ctor_get(x_238, 0); -lean_inc(x_240); -lean_dec(x_238); -lean_inc(x_240); -x_241 = l___private_Lean_Elab_Level_0__Lean_Elab_Level_checkUniverseOffset___at_Lean_Elab_Level_elabLevel___spec__3(x_240, x_216, x_235); -lean_dec(x_216); -if (lean_obj_tag(x_241) == 0) -{ -lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; -x_242 = lean_ctor_get(x_241, 1); +lean_object* x_242; lean_object* x_243; +x_242 = lean_ctor_get(x_240, 0); lean_inc(x_242); -if (lean_is_exclusive(x_241)) { - lean_ctor_release(x_241, 0); - lean_ctor_release(x_241, 1); - x_243 = x_241; +lean_dec(x_240); +lean_inc(x_242); +x_243 = l___private_Lean_Elab_Level_0__Lean_Elab_Level_checkUniverseOffset___at_Lean_Elab_Level_elabLevel___spec__3(x_242, x_218, x_237); +lean_dec(x_218); +if (lean_obj_tag(x_243) == 0) +{ +lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; +x_244 = lean_ctor_get(x_243, 1); +lean_inc(x_244); +if (lean_is_exclusive(x_243)) { + lean_ctor_release(x_243, 0); + lean_ctor_release(x_243, 1); + x_245 = x_243; } else { - lean_dec_ref(x_241); - x_243 = lean_box(0); + lean_dec_ref(x_243); + x_245 = lean_box(0); } -x_244 = l_Lean_Level_addOffsetAux(x_240, x_234); -if (lean_is_scalar(x_243)) { - x_245 = lean_alloc_ctor(0, 2, 0); +x_246 = l_Lean_Level_addOffsetAux(x_242, x_236); +if (lean_is_scalar(x_245)) { + x_247 = lean_alloc_ctor(0, 2, 0); } else { - x_245 = x_243; + x_247 = x_245; } -lean_ctor_set(x_245, 0, x_244); -lean_ctor_set(x_245, 1, x_242); -return x_245; +lean_ctor_set(x_247, 0, x_246); +lean_ctor_set(x_247, 1, x_244); +return x_247; } else { -lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; -lean_dec(x_240); -lean_dec(x_234); -x_246 = lean_ctor_get(x_241, 0); -lean_inc(x_246); -x_247 = lean_ctor_get(x_241, 1); -lean_inc(x_247); -if (lean_is_exclusive(x_241)) { - lean_ctor_release(x_241, 0); - lean_ctor_release(x_241, 1); - x_248 = x_241; +lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; +lean_dec(x_242); +lean_dec(x_236); +x_248 = lean_ctor_get(x_243, 0); +lean_inc(x_248); +x_249 = lean_ctor_get(x_243, 1); +lean_inc(x_249); +if (lean_is_exclusive(x_243)) { + lean_ctor_release(x_243, 0); + lean_ctor_release(x_243, 1); + x_250 = x_243; } else { - lean_dec_ref(x_241); - x_248 = lean_box(0); + lean_dec_ref(x_243); + x_250 = lean_box(0); } -if (lean_is_scalar(x_248)) { - x_249 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_250)) { + x_251 = lean_alloc_ctor(1, 2, 0); } else { - x_249 = x_248; + x_251 = x_250; } -lean_ctor_set(x_249, 0, x_246); -lean_ctor_set(x_249, 1, x_247); -return x_249; +lean_ctor_set(x_251, 0, x_248); +lean_ctor_set(x_251, 1, x_249); +return x_251; } } } else { -lean_object* x_250; lean_object* x_251; lean_object* x_252; lean_object* x_253; -lean_dec(x_216); +lean_object* x_252; lean_object* x_253; lean_object* x_254; lean_object* x_255; +lean_dec(x_218); lean_dec(x_1); -x_250 = lean_ctor_get(x_233, 0); -lean_inc(x_250); -x_251 = lean_ctor_get(x_233, 1); -lean_inc(x_251); -if (lean_is_exclusive(x_233)) { - lean_ctor_release(x_233, 0); - lean_ctor_release(x_233, 1); - x_252 = x_233; +x_252 = lean_ctor_get(x_235, 0); +lean_inc(x_252); +x_253 = lean_ctor_get(x_235, 1); +lean_inc(x_253); +if (lean_is_exclusive(x_235)) { + lean_ctor_release(x_235, 0); + lean_ctor_release(x_235, 1); + x_254 = x_235; } else { - lean_dec_ref(x_233); - x_252 = lean_box(0); + lean_dec_ref(x_235); + x_254 = lean_box(0); } -if (lean_is_scalar(x_252)) { - x_253 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_254)) { + x_255 = lean_alloc_ctor(1, 2, 0); } else { - x_253 = x_252; + x_255 = x_254; } -lean_ctor_set(x_253, 0, x_250); -lean_ctor_set(x_253, 1, x_251); -return x_253; +lean_ctor_set(x_255, 0, x_252); +lean_ctor_set(x_255, 1, x_253); +return x_255; } } } else { -lean_object* x_254; lean_object* x_255; lean_object* x_256; lean_object* x_257; uint8_t x_258; +lean_object* x_256; lean_object* x_257; lean_object* x_258; lean_object* x_259; uint8_t x_260; lean_dec(x_4); -x_254 = l_Lean_Syntax_getId(x_1); +x_256 = l_Lean_Syntax_getId(x_1); lean_dec(x_1); -x_255 = lean_ctor_get(x_3, 0); -lean_inc(x_255); -x_256 = lean_ctor_get(x_3, 1); -lean_inc(x_256); -x_257 = lean_ctor_get(x_3, 2); +x_257 = lean_ctor_get(x_3, 0); lean_inc(x_257); -x_258 = l_List_elem___at_Lean_NameHashSet_insert___spec__2(x_254, x_257); -if (x_258 == 0) -{ -if (x_214 == 0) -{ -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; +x_258 = lean_ctor_get(x_3, 1); +lean_inc(x_258); +x_259 = lean_ctor_get(x_3, 2); +lean_inc(x_259); +x_260 = l_List_elem___at_Lean_NameHashSet_insert___spec__2(x_256, x_259); +if (x_260 == 0) +{ +if (x_216 == 0) +{ +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_dec(x_259); +lean_dec(x_258); lean_dec(x_257); -lean_dec(x_256); -lean_dec(x_255); -lean_dec(x_212); -x_259 = l_Lean_MessageData_ofName(x_254); -x_260 = l_Lean_Elab_Level_elabLevel___closed__19; -x_261 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_261, 0, x_260); -lean_ctor_set(x_261, 1, x_259); -x_262 = l_Lean_Elab_Level_elabLevel___closed__21; -x_263 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_263, 0, x_261); -lean_ctor_set(x_263, 1, x_262); -x_264 = l_Lean_throwError___at_Lean_Elab_Level_elabLevel___spec__5(x_263, x_216, x_3); -lean_dec(x_216); -x_265 = lean_ctor_get(x_264, 0); -lean_inc(x_265); -x_266 = lean_ctor_get(x_264, 1); -lean_inc(x_266); -if (lean_is_exclusive(x_264)) { - lean_ctor_release(x_264, 0); - lean_ctor_release(x_264, 1); - x_267 = x_264; +lean_dec(x_214); +x_261 = lean_mk_syntax_ident(x_256); +x_262 = l_Lean_MessageData_ofSyntax(x_261); +x_263 = l_Lean_Elab_Level_elabLevel___closed__19; +x_264 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_264, 0, x_263); +lean_ctor_set(x_264, 1, x_262); +x_265 = l_Lean_Elab_Level_elabLevel___closed__21; +x_266 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_266, 0, x_264); +lean_ctor_set(x_266, 1, x_265); +x_267 = l_Lean_throwError___at_Lean_Elab_Level_elabLevel___spec__5(x_266, x_218, x_3); +lean_dec(x_218); +x_268 = lean_ctor_get(x_267, 0); +lean_inc(x_268); +x_269 = lean_ctor_get(x_267, 1); +lean_inc(x_269); +if (lean_is_exclusive(x_267)) { + lean_ctor_release(x_267, 0); + lean_ctor_release(x_267, 1); + x_270 = x_267; } else { - lean_dec_ref(x_264); - x_267 = lean_box(0); + lean_dec_ref(x_267); + x_270 = lean_box(0); } -if (lean_is_scalar(x_267)) { - x_268 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_270)) { + x_271 = lean_alloc_ctor(1, 2, 0); } else { - x_268 = x_267; + x_271 = x_270; } -lean_ctor_set(x_268, 0, x_265); -lean_ctor_set(x_268, 1, x_266); -return x_268; +lean_ctor_set(x_271, 0, x_268); +lean_ctor_set(x_271, 1, x_269); +return x_271; } else { -lean_object* x_269; uint8_t x_270; uint8_t x_271; -x_269 = l_Lean_Elab_Level_elabLevel___closed__22; -x_270 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_212, x_269); -lean_dec(x_212); -lean_inc(x_254); -x_271 = l_Lean_Elab_isValidAutoBoundLevelName(x_254, x_270); -if (x_271 == 0) +lean_object* x_272; uint8_t x_273; uint8_t x_274; +x_272 = l_Lean_Elab_Level_elabLevel___closed__22; +x_273 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_214, x_272); +lean_dec(x_214); +lean_inc(x_256); +x_274 = l_Lean_Elab_isValidAutoBoundLevelName(x_256, x_273); +if (x_274 == 0) { -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_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; lean_object* x_283; lean_object* x_284; lean_object* x_285; +lean_dec(x_259); +lean_dec(x_258); lean_dec(x_257); -lean_dec(x_256); -lean_dec(x_255); -x_272 = l_Lean_MessageData_ofName(x_254); -x_273 = l_Lean_Elab_Level_elabLevel___closed__19; -x_274 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_274, 0, x_273); -lean_ctor_set(x_274, 1, x_272); -x_275 = l_Lean_Elab_Level_elabLevel___closed__21; -x_276 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_276, 0, x_274); -lean_ctor_set(x_276, 1, x_275); -x_277 = l_Lean_throwError___at_Lean_Elab_Level_elabLevel___spec__5(x_276, x_216, x_3); -lean_dec(x_216); -x_278 = lean_ctor_get(x_277, 0); -lean_inc(x_278); -x_279 = lean_ctor_get(x_277, 1); -lean_inc(x_279); -if (lean_is_exclusive(x_277)) { - lean_ctor_release(x_277, 0); - lean_ctor_release(x_277, 1); - x_280 = x_277; +x_275 = lean_mk_syntax_ident(x_256); +x_276 = l_Lean_MessageData_ofSyntax(x_275); +x_277 = l_Lean_Elab_Level_elabLevel___closed__19; +x_278 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_278, 0, x_277); +lean_ctor_set(x_278, 1, x_276); +x_279 = l_Lean_Elab_Level_elabLevel___closed__21; +x_280 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_280, 0, x_278); +lean_ctor_set(x_280, 1, x_279); +x_281 = l_Lean_throwError___at_Lean_Elab_Level_elabLevel___spec__5(x_280, x_218, x_3); +lean_dec(x_218); +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_277); - x_280 = lean_box(0); + lean_dec_ref(x_281); + x_284 = lean_box(0); } -if (lean_is_scalar(x_280)) { - x_281 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_284)) { + x_285 = lean_alloc_ctor(1, 2, 0); } else { - x_281 = x_280; + x_285 = x_284; } -lean_ctor_set(x_281, 0, x_278); -lean_ctor_set(x_281, 1, x_279); -return x_281; +lean_ctor_set(x_285, 0, x_282); +lean_ctor_set(x_285, 1, x_283); +return x_285; } else { -lean_object* x_282; lean_object* x_283; lean_object* x_284; lean_object* x_285; lean_object* x_286; +lean_object* x_286; lean_object* x_287; lean_object* x_288; lean_object* x_289; lean_object* x_290; if (lean_is_exclusive(x_3)) { lean_ctor_release(x_3, 0); lean_ctor_release(x_3, 1); lean_ctor_release(x_3, 2); - x_282 = x_3; + x_286 = x_3; } else { lean_dec_ref(x_3); - x_282 = lean_box(0); -} -lean_inc(x_254); -x_283 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_283, 0, x_254); -lean_ctor_set(x_283, 1, x_257); -if (lean_is_scalar(x_282)) { - x_284 = lean_alloc_ctor(0, 3, 0); -} else { - x_284 = x_282; + x_286 = lean_box(0); } -lean_ctor_set(x_284, 0, x_255); -lean_ctor_set(x_284, 1, x_256); -lean_ctor_set(x_284, 2, x_283); -x_285 = lean_box(0); -x_286 = l_Lean_Elab_Level_elabLevel___lambda__1(x_254, x_285, x_216, x_284); -lean_dec(x_216); -return x_286; +lean_inc(x_256); +x_287 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_287, 0, x_256); +lean_ctor_set(x_287, 1, x_259); +if (lean_is_scalar(x_286)) { + x_288 = lean_alloc_ctor(0, 3, 0); +} else { + x_288 = x_286; +} +lean_ctor_set(x_288, 0, x_257); +lean_ctor_set(x_288, 1, x_258); +lean_ctor_set(x_288, 2, x_287); +x_289 = lean_box(0); +x_290 = l_Lean_Elab_Level_elabLevel___lambda__1(x_256, x_289, x_218, x_288); +lean_dec(x_218); +return x_290; } } } else { -lean_object* x_287; lean_object* x_288; +lean_object* x_291; lean_object* x_292; +lean_dec(x_259); +lean_dec(x_258); lean_dec(x_257); -lean_dec(x_256); -lean_dec(x_255); -lean_dec(x_212); -x_287 = lean_box(0); -x_288 = l_Lean_Elab_Level_elabLevel___lambda__1(x_254, x_287, x_216, x_3); -lean_dec(x_216); -return x_288; +lean_dec(x_214); +x_291 = lean_box(0); +x_292 = l_Lean_Elab_Level_elabLevel___lambda__1(x_256, x_291, x_218, x_3); +lean_dec(x_218); +return x_292; } } } else { -lean_object* x_289; -lean_dec(x_212); +lean_object* x_293; +lean_dec(x_214); lean_dec(x_4); -x_289 = l_Lean_Syntax_isNatLit_x3f(x_1); +x_293 = l_Lean_Syntax_isNatLit_x3f(x_1); lean_dec(x_1); -if (lean_obj_tag(x_289) == 0) +if (lean_obj_tag(x_293) == 0) { -lean_object* x_290; -x_290 = l_Lean_Elab_throwIllFormedSyntax___at_Lean_Elab_Level_elabLevel___spec__2(x_216, x_3); -return x_290; +lean_object* x_294; +x_294 = l_Lean_Elab_throwIllFormedSyntax___at_Lean_Elab_Level_elabLevel___spec__2(x_218, x_3); +return x_294; } else { -lean_object* x_291; lean_object* x_292; -x_291 = lean_ctor_get(x_289, 0); -lean_inc(x_291); -lean_dec(x_289); -lean_inc(x_291); -x_292 = l___private_Lean_Elab_Level_0__Lean_Elab_Level_checkUniverseOffset___at_Lean_Elab_Level_elabLevel___spec__3(x_291, x_216, x_3); -lean_dec(x_216); -if (lean_obj_tag(x_292) == 0) -{ -lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; -x_293 = lean_ctor_get(x_292, 1); -lean_inc(x_293); -if (lean_is_exclusive(x_292)) { - lean_ctor_release(x_292, 0); - lean_ctor_release(x_292, 1); - x_294 = x_292; +lean_object* x_295; lean_object* x_296; +x_295 = lean_ctor_get(x_293, 0); +lean_inc(x_295); +lean_dec(x_293); +lean_inc(x_295); +x_296 = l___private_Lean_Elab_Level_0__Lean_Elab_Level_checkUniverseOffset___at_Lean_Elab_Level_elabLevel___spec__3(x_295, x_218, x_3); +lean_dec(x_218); +if (lean_obj_tag(x_296) == 0) +{ +lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; +x_297 = lean_ctor_get(x_296, 1); +lean_inc(x_297); +if (lean_is_exclusive(x_296)) { + lean_ctor_release(x_296, 0); + lean_ctor_release(x_296, 1); + x_298 = x_296; } else { - lean_dec_ref(x_292); - x_294 = lean_box(0); + lean_dec_ref(x_296); + x_298 = lean_box(0); } -x_295 = l_Lean_Level_ofNat(x_291); -lean_dec(x_291); -if (lean_is_scalar(x_294)) { - x_296 = lean_alloc_ctor(0, 2, 0); +x_299 = l_Lean_Level_ofNat(x_295); +lean_dec(x_295); +if (lean_is_scalar(x_298)) { + x_300 = lean_alloc_ctor(0, 2, 0); } else { - x_296 = x_294; + x_300 = x_298; } -lean_ctor_set(x_296, 0, x_295); -lean_ctor_set(x_296, 1, x_293); -return x_296; +lean_ctor_set(x_300, 0, x_299); +lean_ctor_set(x_300, 1, x_297); +return x_300; } else { -lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; -lean_dec(x_291); -x_297 = lean_ctor_get(x_292, 0); -lean_inc(x_297); -x_298 = lean_ctor_get(x_292, 1); -lean_inc(x_298); -if (lean_is_exclusive(x_292)) { - lean_ctor_release(x_292, 0); - lean_ctor_release(x_292, 1); - x_299 = x_292; +lean_object* x_301; lean_object* x_302; lean_object* x_303; lean_object* x_304; +lean_dec(x_295); +x_301 = lean_ctor_get(x_296, 0); +lean_inc(x_301); +x_302 = lean_ctor_get(x_296, 1); +lean_inc(x_302); +if (lean_is_exclusive(x_296)) { + lean_ctor_release(x_296, 0); + lean_ctor_release(x_296, 1); + x_303 = x_296; } else { - lean_dec_ref(x_292); - x_299 = lean_box(0); + lean_dec_ref(x_296); + x_303 = lean_box(0); } -if (lean_is_scalar(x_299)) { - x_300 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_303)) { + x_304 = lean_alloc_ctor(1, 2, 0); } else { - x_300 = x_299; + x_304 = x_303; } -lean_ctor_set(x_300, 0, x_297); -lean_ctor_set(x_300, 1, x_298); -return x_300; +lean_ctor_set(x_304, 0, x_301); +lean_ctor_set(x_304, 1, x_302); +return x_304; } } } } else { -lean_object* x_301; -lean_dec(x_212); +lean_object* x_305; +lean_dec(x_214); lean_dec(x_4); lean_dec(x_1); -x_301 = l_Lean_Elab_Level_mkFreshLevelMVar(x_216, x_3); -lean_dec(x_216); -return x_301; +x_305 = l_Lean_Elab_Level_mkFreshLevelMVar(x_218, x_3); +lean_dec(x_218); +return x_305; } } 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_dec(x_212); +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_dec(x_214); lean_dec(x_4); -x_302 = lean_unsigned_to_nat(1u); -x_303 = l_Lean_Syntax_getArg(x_1, x_302); +x_306 = lean_unsigned_to_nat(1u); +x_307 = l_Lean_Syntax_getArg(x_1, x_306); lean_dec(x_1); -x_304 = l_Lean_Syntax_getArgs(x_303); -lean_dec(x_303); -x_305 = l_Lean_instInhabitedSyntax; -x_306 = l_Array_back___rarg(x_305, x_304); -lean_inc(x_216); -x_307 = l_Lean_Elab_Level_elabLevel(x_306, x_216, x_3); -if (lean_obj_tag(x_307) == 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_object* x_314; lean_object* x_315; lean_object* x_316; lean_object* x_317; lean_object* x_318; uint8_t x_319; -x_308 = lean_ctor_get(x_307, 0); -lean_inc(x_308); -x_309 = lean_ctor_get(x_307, 1); -lean_inc(x_309); -if (lean_is_exclusive(x_307)) { - lean_ctor_release(x_307, 0); - lean_ctor_release(x_307, 1); - x_310 = x_307; +x_308 = l_Lean_Syntax_getArgs(x_307); +lean_dec(x_307); +x_309 = l_Lean_instInhabitedSyntax; +x_310 = l_Array_back___rarg(x_309, x_308); +lean_inc(x_218); +x_311 = l_Lean_Elab_Level_elabLevel(x_310, x_218, x_3); +if (lean_obj_tag(x_311) == 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; uint8_t x_323; +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_307); - x_310 = lean_box(0); -} -x_311 = lean_array_get_size(x_304); -x_312 = lean_nat_sub(x_311, x_302); -lean_dec(x_311); -x_313 = lean_unsigned_to_nat(0u); -x_314 = l_Array_toSubarray___rarg(x_304, x_313, x_312); -x_315 = lean_ctor_get(x_314, 0); -lean_inc(x_315); -x_316 = lean_ctor_get(x_314, 2); -lean_inc(x_316); -x_317 = lean_ctor_get(x_314, 1); -lean_inc(x_317); -lean_dec(x_314); -x_318 = lean_array_get_size(x_315); -x_319 = lean_nat_dec_le(x_316, x_318); -if (x_319 == 0) -{ -uint8_t x_320; -lean_dec(x_316); -x_320 = lean_nat_dec_lt(x_317, x_318); -if (x_320 == 0) -{ -lean_object* x_321; -lean_dec(x_318); -lean_dec(x_317); + lean_dec_ref(x_311); + x_314 = lean_box(0); +} +x_315 = lean_array_get_size(x_308); +x_316 = lean_nat_sub(x_315, x_306); lean_dec(x_315); -lean_dec(x_216); -if (lean_is_scalar(x_310)) { - x_321 = lean_alloc_ctor(0, 2, 0); +x_317 = lean_unsigned_to_nat(0u); +x_318 = l_Array_toSubarray___rarg(x_308, x_317, x_316); +x_319 = lean_ctor_get(x_318, 0); +lean_inc(x_319); +x_320 = lean_ctor_get(x_318, 2); +lean_inc(x_320); +x_321 = lean_ctor_get(x_318, 1); +lean_inc(x_321); +lean_dec(x_318); +x_322 = lean_array_get_size(x_319); +x_323 = lean_nat_dec_le(x_320, x_322); +if (x_323 == 0) +{ +uint8_t x_324; +lean_dec(x_320); +x_324 = lean_nat_dec_lt(x_321, x_322); +if (x_324 == 0) +{ +lean_object* x_325; +lean_dec(x_322); +lean_dec(x_321); +lean_dec(x_319); +lean_dec(x_218); +if (lean_is_scalar(x_314)) { + x_325 = lean_alloc_ctor(0, 2, 0); } else { - x_321 = x_310; + x_325 = x_314; } -lean_ctor_set(x_321, 0, x_308); -lean_ctor_set(x_321, 1, x_309); -return x_321; +lean_ctor_set(x_325, 0, x_312); +lean_ctor_set(x_325, 1, x_313); +return x_325; } else { -size_t x_322; size_t x_323; lean_object* x_324; -lean_dec(x_310); -x_322 = lean_usize_of_nat(x_318); -lean_dec(x_318); -x_323 = lean_usize_of_nat(x_317); -lean_dec(x_317); -x_324 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__6(x_315, x_322, x_323, x_308, x_216, x_309); -lean_dec(x_315); -return x_324; +size_t x_326; size_t x_327; lean_object* x_328; +lean_dec(x_314); +x_326 = lean_usize_of_nat(x_322); +lean_dec(x_322); +x_327 = lean_usize_of_nat(x_321); +lean_dec(x_321); +x_328 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__6(x_319, x_326, x_327, x_312, x_218, x_313); +lean_dec(x_319); +return x_328; } } else { -uint8_t x_325; -lean_dec(x_318); -x_325 = lean_nat_dec_lt(x_317, x_316); -if (x_325 == 0) +uint8_t x_329; +lean_dec(x_322); +x_329 = lean_nat_dec_lt(x_321, x_320); +if (x_329 == 0) { -lean_object* x_326; -lean_dec(x_317); -lean_dec(x_316); -lean_dec(x_315); -lean_dec(x_216); -if (lean_is_scalar(x_310)) { - x_326 = lean_alloc_ctor(0, 2, 0); +lean_object* x_330; +lean_dec(x_321); +lean_dec(x_320); +lean_dec(x_319); +lean_dec(x_218); +if (lean_is_scalar(x_314)) { + x_330 = lean_alloc_ctor(0, 2, 0); } else { - x_326 = x_310; + x_330 = x_314; } -lean_ctor_set(x_326, 0, x_308); -lean_ctor_set(x_326, 1, x_309); -return x_326; +lean_ctor_set(x_330, 0, x_312); +lean_ctor_set(x_330, 1, x_313); +return x_330; } else { -size_t x_327; size_t x_328; lean_object* x_329; -lean_dec(x_310); -x_327 = lean_usize_of_nat(x_316); -lean_dec(x_316); -x_328 = lean_usize_of_nat(x_317); -lean_dec(x_317); -x_329 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__6(x_315, x_327, x_328, x_308, x_216, x_309); -lean_dec(x_315); -return x_329; +size_t x_331; size_t x_332; lean_object* x_333; +lean_dec(x_314); +x_331 = lean_usize_of_nat(x_320); +lean_dec(x_320); +x_332 = lean_usize_of_nat(x_321); +lean_dec(x_321); +x_333 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__6(x_319, x_331, x_332, x_312, x_218, x_313); +lean_dec(x_319); +return x_333; } } } else { -lean_object* x_330; lean_object* x_331; lean_object* x_332; lean_object* x_333; -lean_dec(x_304); -lean_dec(x_216); -x_330 = lean_ctor_get(x_307, 0); -lean_inc(x_330); -x_331 = lean_ctor_get(x_307, 1); -lean_inc(x_331); -if (lean_is_exclusive(x_307)) { - lean_ctor_release(x_307, 0); - lean_ctor_release(x_307, 1); - x_332 = x_307; +lean_object* x_334; lean_object* x_335; lean_object* x_336; lean_object* x_337; +lean_dec(x_308); +lean_dec(x_218); +x_334 = lean_ctor_get(x_311, 0); +lean_inc(x_334); +x_335 = lean_ctor_get(x_311, 1); +lean_inc(x_335); +if (lean_is_exclusive(x_311)) { + lean_ctor_release(x_311, 0); + lean_ctor_release(x_311, 1); + x_336 = x_311; } else { - lean_dec_ref(x_307); - x_332 = lean_box(0); + lean_dec_ref(x_311); + x_336 = lean_box(0); } -if (lean_is_scalar(x_332)) { - x_333 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_336)) { + x_337 = lean_alloc_ctor(1, 2, 0); } else { - x_333 = x_332; + x_337 = x_336; } -lean_ctor_set(x_333, 0, x_330); -lean_ctor_set(x_333, 1, x_331); -return x_333; +lean_ctor_set(x_337, 0, x_334); +lean_ctor_set(x_337, 1, x_335); +return x_337; } } } else { -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_dec(x_212); +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_dec(x_214); lean_dec(x_4); -x_334 = lean_unsigned_to_nat(1u); -x_335 = l_Lean_Syntax_getArg(x_1, x_334); +x_338 = lean_unsigned_to_nat(1u); +x_339 = l_Lean_Syntax_getArg(x_1, x_338); lean_dec(x_1); -x_336 = l_Lean_Syntax_getArgs(x_335); -lean_dec(x_335); -x_337 = l_Lean_instInhabitedSyntax; -x_338 = l_Array_back___rarg(x_337, x_336); -lean_inc(x_216); -x_339 = l_Lean_Elab_Level_elabLevel(x_338, x_216, x_3); -if (lean_obj_tag(x_339) == 0) -{ -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; lean_object* x_348; lean_object* x_349; lean_object* x_350; uint8_t x_351; -x_340 = lean_ctor_get(x_339, 0); -lean_inc(x_340); -x_341 = lean_ctor_get(x_339, 1); -lean_inc(x_341); -if (lean_is_exclusive(x_339)) { - lean_ctor_release(x_339, 0); - lean_ctor_release(x_339, 1); - x_342 = x_339; +x_340 = l_Lean_Syntax_getArgs(x_339); +lean_dec(x_339); +x_341 = l_Lean_instInhabitedSyntax; +x_342 = l_Array_back___rarg(x_341, x_340); +lean_inc(x_218); +x_343 = l_Lean_Elab_Level_elabLevel(x_342, x_218, x_3); +if (lean_obj_tag(x_343) == 0) +{ +lean_object* x_344; 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; uint8_t x_355; +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_339); - x_342 = lean_box(0); -} -x_343 = lean_array_get_size(x_336); -x_344 = lean_nat_sub(x_343, x_334); -lean_dec(x_343); -x_345 = lean_unsigned_to_nat(0u); -x_346 = l_Array_toSubarray___rarg(x_336, x_345, x_344); -x_347 = lean_ctor_get(x_346, 0); -lean_inc(x_347); -x_348 = lean_ctor_get(x_346, 2); -lean_inc(x_348); -x_349 = lean_ctor_get(x_346, 1); -lean_inc(x_349); -lean_dec(x_346); -x_350 = lean_array_get_size(x_347); -x_351 = lean_nat_dec_le(x_348, x_350); -if (x_351 == 0) -{ -uint8_t x_352; -lean_dec(x_348); -x_352 = lean_nat_dec_lt(x_349, x_350); -if (x_352 == 0) -{ -lean_object* x_353; -lean_dec(x_350); -lean_dec(x_349); + lean_dec_ref(x_343); + x_346 = lean_box(0); +} +x_347 = lean_array_get_size(x_340); +x_348 = lean_nat_sub(x_347, x_338); lean_dec(x_347); -lean_dec(x_216); -if (lean_is_scalar(x_342)) { - x_353 = lean_alloc_ctor(0, 2, 0); +x_349 = lean_unsigned_to_nat(0u); +x_350 = l_Array_toSubarray___rarg(x_340, x_349, x_348); +x_351 = lean_ctor_get(x_350, 0); +lean_inc(x_351); +x_352 = lean_ctor_get(x_350, 2); +lean_inc(x_352); +x_353 = lean_ctor_get(x_350, 1); +lean_inc(x_353); +lean_dec(x_350); +x_354 = lean_array_get_size(x_351); +x_355 = lean_nat_dec_le(x_352, x_354); +if (x_355 == 0) +{ +uint8_t x_356; +lean_dec(x_352); +x_356 = lean_nat_dec_lt(x_353, x_354); +if (x_356 == 0) +{ +lean_object* x_357; +lean_dec(x_354); +lean_dec(x_353); +lean_dec(x_351); +lean_dec(x_218); +if (lean_is_scalar(x_346)) { + x_357 = lean_alloc_ctor(0, 2, 0); } else { - x_353 = x_342; + x_357 = x_346; } -lean_ctor_set(x_353, 0, x_340); -lean_ctor_set(x_353, 1, x_341); -return x_353; +lean_ctor_set(x_357, 0, x_344); +lean_ctor_set(x_357, 1, x_345); +return x_357; } else { -size_t x_354; size_t x_355; lean_object* x_356; -lean_dec(x_342); -x_354 = lean_usize_of_nat(x_350); -lean_dec(x_350); -x_355 = lean_usize_of_nat(x_349); -lean_dec(x_349); -x_356 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__7(x_347, x_354, x_355, x_340, x_216, x_341); -lean_dec(x_347); -return x_356; +size_t x_358; size_t x_359; lean_object* x_360; +lean_dec(x_346); +x_358 = lean_usize_of_nat(x_354); +lean_dec(x_354); +x_359 = lean_usize_of_nat(x_353); +lean_dec(x_353); +x_360 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__7(x_351, x_358, x_359, x_344, x_218, x_345); +lean_dec(x_351); +return x_360; } } else { -uint8_t x_357; -lean_dec(x_350); -x_357 = lean_nat_dec_lt(x_349, x_348); -if (x_357 == 0) +uint8_t x_361; +lean_dec(x_354); +x_361 = lean_nat_dec_lt(x_353, x_352); +if (x_361 == 0) { -lean_object* x_358; -lean_dec(x_349); -lean_dec(x_348); -lean_dec(x_347); -lean_dec(x_216); -if (lean_is_scalar(x_342)) { - x_358 = lean_alloc_ctor(0, 2, 0); +lean_object* x_362; +lean_dec(x_353); +lean_dec(x_352); +lean_dec(x_351); +lean_dec(x_218); +if (lean_is_scalar(x_346)) { + x_362 = lean_alloc_ctor(0, 2, 0); } else { - x_358 = x_342; + x_362 = x_346; } -lean_ctor_set(x_358, 0, x_340); -lean_ctor_set(x_358, 1, x_341); -return x_358; +lean_ctor_set(x_362, 0, x_344); +lean_ctor_set(x_362, 1, x_345); +return x_362; } else { -size_t x_359; size_t x_360; lean_object* x_361; -lean_dec(x_342); -x_359 = lean_usize_of_nat(x_348); -lean_dec(x_348); -x_360 = lean_usize_of_nat(x_349); -lean_dec(x_349); -x_361 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__7(x_347, x_359, x_360, x_340, x_216, x_341); -lean_dec(x_347); -return x_361; +size_t x_363; size_t x_364; lean_object* x_365; +lean_dec(x_346); +x_363 = lean_usize_of_nat(x_352); +lean_dec(x_352); +x_364 = lean_usize_of_nat(x_353); +lean_dec(x_353); +x_365 = l_Array_foldrMUnsafe_fold___at_Lean_Elab_Level_elabLevel___spec__7(x_351, x_363, x_364, x_344, x_218, x_345); +lean_dec(x_351); +return x_365; } } } else { -lean_object* x_362; lean_object* x_363; lean_object* x_364; lean_object* x_365; -lean_dec(x_336); -lean_dec(x_216); -x_362 = lean_ctor_get(x_339, 0); -lean_inc(x_362); -x_363 = lean_ctor_get(x_339, 1); -lean_inc(x_363); -if (lean_is_exclusive(x_339)) { - lean_ctor_release(x_339, 0); - lean_ctor_release(x_339, 1); - x_364 = x_339; +lean_object* x_366; lean_object* x_367; lean_object* x_368; lean_object* x_369; +lean_dec(x_340); +lean_dec(x_218); +x_366 = lean_ctor_get(x_343, 0); +lean_inc(x_366); +x_367 = lean_ctor_get(x_343, 1); +lean_inc(x_367); +if (lean_is_exclusive(x_343)) { + lean_ctor_release(x_343, 0); + lean_ctor_release(x_343, 1); + x_368 = x_343; } else { - lean_dec_ref(x_339); - x_364 = lean_box(0); + lean_dec_ref(x_343); + x_368 = lean_box(0); } -if (lean_is_scalar(x_364)) { - x_365 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_368)) { + x_369 = lean_alloc_ctor(1, 2, 0); } else { - x_365 = x_364; + x_369 = x_368; } -lean_ctor_set(x_365, 0, x_362); -lean_ctor_set(x_365, 1, x_363); -return x_365; +lean_ctor_set(x_369, 0, x_366); +lean_ctor_set(x_369, 1, x_367); +return x_369; } } } else { -lean_object* x_366; lean_object* x_367; -lean_dec(x_212); +lean_object* x_370; lean_object* x_371; +lean_dec(x_214); lean_dec(x_4); -x_366 = lean_unsigned_to_nat(1u); -x_367 = l_Lean_Syntax_getArg(x_1, x_366); +x_370 = lean_unsigned_to_nat(1u); +x_371 = l_Lean_Syntax_getArg(x_1, x_370); lean_dec(x_1); -x_1 = x_367; -x_2 = x_216; +x_1 = x_371; +x_2 = x_218; goto _start; } } diff --git a/stage0/stdlib/Lean/Elab/MutualDef.c b/stage0/stdlib/Lean/Elab/MutualDef.c index dacf70f32c0e..c61b68582a57 100644 --- a/stage0/stdlib/Lean/Elab/MutualDef.c +++ b/stage0/stdlib/Lean/Elab/MutualDef.c @@ -16,7 +16,7 @@ extern "C" { LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___spec__3(lean_object*, lean_object*, size_t, size_t, lean_object*); lean_object* l_Lean_HashMapImp_find_x3f___at___private_Lean_Meta_Check_0__Lean_Meta_checkAux_check___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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*); +LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__3(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__6___closed__2; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkKinds___lambda__1___closed__1; @@ -31,11 +31,10 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Mutua 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_Lean_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__5___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_anyMUnsafe_any___at_Lean_Elab_Term_MutualClosure_getKindForLetRecs___spec__1___boxed(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__8___lambda__2___boxed(lean_object**); LEAN_EXPORT lean_object* l___private_Lean_Elab_InfoTree_Main_0__Lean_Elab_withSavedPartialInfoContext___at_Lean_Elab_Term_elabMutualDef___spec__2(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_getPendindMVarErrorMessage___spec__1___closed__1; lean_object* lean_format_pretty(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__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_Core_withRestoreOrSaveFull___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*, 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*); 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_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__4(lean_object*); @@ -69,7 +68,7 @@ lean_object* lean_mk_empty_array_with_capacity(lean_object*); lean_object* l_Lean_mkAppN(lean_object*, lean_object*); 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_EXPORT lean_object* l_Array_forInUnsafe_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_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___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*, 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__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* 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; LEAN_EXPORT lean_object* l_Lean_Elab_Term_checkForHiddenUnivLevels_visitLevel___lambda__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -83,7 +82,6 @@ static lean_object* l_Lean_Elab_instInhabitedDefViewElabHeader___closed__6; 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*); static lean_object* l_Lean_Elab_WF_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__6; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_elabMutualDef_processDeriving___spec__1(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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__3___boxed(lean_object**); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__3___rarg___lambda__1(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_panic___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__2(lean_object*); @@ -107,7 +105,7 @@ static lean_object* l_Nat_foldM_loop___at_Lean_Elab_Term_MutualClosure_pushMain_ 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_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__1(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_Elab_Tactic_instInhabitedTacticParsedSnapshot; -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___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*, 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__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_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__4___rarg(lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___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*); lean_object* l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(lean_object*, lean_object*); @@ -115,7 +113,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_ClosureState_newLetDecls 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_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__5___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Language_DynamicSnapshot_toTyped_x3f___rarg(lean_object*, lean_object*); -static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__7___closed__1; lean_object* l_Lean_Meta_isProp(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_isModified___rarg(lean_object*); lean_object* l_Lean_indentD(lean_object*); @@ -138,7 +135,7 @@ uint8_t l_List_elem___at_Lean_NameHashSet_insert___spec__2(lean_object*, lean_ob static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__3___closed__7; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_isTheorem___spec__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_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_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_registerFailedToInferDefTypeInfo(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__2___closed__4; lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); @@ -167,7 +164,7 @@ static lean_object* l_Nat_foldM_loop___at_Lean_Elab_Term_MutualClosure_pushMain_ lean_object* l_Lean_Elab_Term_elabTermEnsuringType(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* l_Lean_Expr_sort___override(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabModifiers___at_Lean_Elab_Command_elabMutualDef___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_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1___boxed(lean_object**); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___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_MessageData_ofList(lean_object*); lean_object* l_Lean_PersistentArray_push___rarg(lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); @@ -230,7 +227,7 @@ static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWher LEAN_EXPORT lean_object* l_Array_forInUnsafe_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___boxed(lean_object*, lean_object*, 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_TSepArray_getElems___rarg(lean_object*); lean_object* l_Lean_Expr_fvarId_x21(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___lambda__1(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_pickMaxFVar_x3f___boxed(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*); @@ -251,7 +248,7 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Mutua LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__4(lean_object*, size_t, size_t, 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_Array_mapMUnsafe_map___at_Lean_Elab_Term_MutualClosure_main___spec__3(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___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___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_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__5___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__5___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef___spec__5(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -301,7 +298,6 @@ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0_ LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___rarg(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_declValToTerminationHint___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Command_elabMutualDef___spec__17___boxed(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_elabHeaders___spec__8___lambda__6___closed__5; 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; 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*); @@ -339,6 +335,7 @@ static lean_object* l_Lean_Elab_Term_checkForHiddenUnivLevels_visitLevel___close lean_object* l_Lean_Kernel_enableDiag(lean_object*, uint8_t); 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*); 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*); +static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__3; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkLetRecsToLiftTypes(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*); @@ -352,7 +349,7 @@ uint8_t l_Lean_Kernel_isDiagnosticsEnabled(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_checkForHiddenUnivLevels_visitLevel___lambda__2(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_Term_MutualClosure_FixPoint_run___boxed(lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_elabMutualDef_processDeriving___spec__1___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___closed__2; static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__5___lambda__3___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -371,6 +368,7 @@ static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeader size_t lean_ptr_addr(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___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_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___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_List_mapM_loop___at_Lean_Elab_Term_elabMutualDef_go___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_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__5___lambda__3___closed__3; LEAN_EXPORT lean_object* l_Lean_RBNode_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_pushNewVars___spec__1(lean_object*, lean_object*); @@ -390,9 +388,8 @@ lean_object* l_Lean_Elab_Term_expandWhereDeclsOpt(lean_object*, lean_object*, le LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabMutualDef___spec__14(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_check___lambda__3(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___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___spec__5___closed__1; -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___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_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_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_object*); +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_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*); @@ -405,6 +402,7 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualD static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_removeUnusedVars___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__1(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_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__5; LEAN_EXPORT uint8_t l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_levelMVarToParamHeaders_process___spec__1___lambda__1(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_Array_sequenceMap_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -422,7 +420,7 @@ static lean_object* l_Lean_Elab_WF_elabTerminationHints___at___private_Lean_Elab static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_levelMVarToParamHeaders_process___spec__1___closed__1; 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*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_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___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*); @@ -451,7 +449,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_Mutua uint8_t l_Lean_Elab_DefKind_isTheorem(uint8_t); LEAN_EXPORT uint8_t l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_typeHasRecFun___lambda__2(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_checkForHiddenUnivLevels___closed__2; -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___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_io_add_heartbeats(uint64_t, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_checkForHiddenUnivLevels___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* l_Lean_mkHole(lean_object*, uint8_t); @@ -468,7 +466,6 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Mutu 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_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*); static lean_object* l_Lean_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__5___closed__13; -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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*, 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___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_EXPORT lean_object* l_Array_forInUnsafe_loop___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*, lean_object*, lean_object*); @@ -514,7 +511,6 @@ lean_object* l_Lean_RBNode_findCore___at_Lean_Elab_Structural_findRecArg_go___sp lean_object* l_Lean_Expr_forallE___override(lean_object*, lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Elab_elabAttrs___at_Lean_Elab_Command_elabMutualDef___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___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_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_Array_indexOfAux___at_Lean_LocalContext_erase___spec__3(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabModifiers___at_Lean_Elab_Command_elabMutualDef___spec__1___lambda__3___closed__4; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__7(lean_object*, lean_object*, lean_object*, size_t, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -524,7 +520,7 @@ static lean_object* l_Lean_addDeclarationRanges___at___private_Lean_Elab_MutualD LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__4(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_st_ref_get(lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___closed__1; -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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* 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*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__5___lambda__4___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -533,6 +529,7 @@ LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_Command_elabM LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_Command_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*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_pp_universes; LEAN_EXPORT lean_object* l_Lean_addTrace___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___spec__5(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_elabHeaders___spec__8___lambda__5___closed__7; uint8_t l_List_beq___at___private_Lean_Declaration_0__Lean_beqConstantVal____x40_Lean_Declaration___hyg_343____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__13(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_Syntax_getOptional_x3f(lean_object*); @@ -564,12 +561,12 @@ static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWher 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*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabMutualDef___spec__7(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__6___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_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6___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_Elab_Term_elabMutualDef_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*, lean_object*); static lean_object* l_Lean_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__5___closed__14; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues(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__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_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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*); uint8_t l_Lean_Syntax_isMissing(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_ClosureState_localDecls___default; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___closed__2; @@ -590,11 +587,11 @@ extern lean_object* l_Lean_instInhabitedExpr; static lean_object* l_List_forM___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkLetRecsToLiftTypes___spec__1___closed__2; LEAN_EXPORT lean_object* l_Lean_RBNode_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_InfoTree_substitute(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___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_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__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_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; -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__4___boxed(lean_object**); +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_getBodyTerm_x3f___closed__5; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Term_checkForHiddenUnivLevels_visit___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*, 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*); @@ -613,6 +610,7 @@ lean_object* l_Lean_Syntax_getSepArgs(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___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_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__12(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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__4; LEAN_EXPORT lean_object* l_List_mapTR_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendindMVarErrorMessage___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Expr_letE___override(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__10___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*); @@ -648,11 +646,11 @@ lean_object* l_Lean_addMessageContextPartial___at_Lean_Elab_Command_instAddMessa LEAN_EXPORT lean_object* l_Array_erase___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___spec__2(lean_object*, lean_object*); lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_isTheorem___boxed(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_LocalContext_contains(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_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__5___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_Term_checkForHiddenUnivLevels_visit___spec__4(lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2___boxed(lean_object**); 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*); @@ -661,6 +659,7 @@ extern lean_object* l_Lean_Elab_instInhabitedDefView; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendindMVarErrorMessage___closed__3; static lean_object* l_Lean_Elab_Command_elabMutualDef___lambda__3___closed__2; extern lean_object* l_Lean_diagnostics; +static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__6; 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_forInUnsafe_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*); @@ -680,7 +679,7 @@ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0_ LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Language_Snapshot_Diagnostics_empty; LEAN_EXPORT lean_object* l_Array_forInUnsafe_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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__3___closed__1; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__14___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_instInhabitedDefViewElabHeader; @@ -692,13 +691,12 @@ static lean_object* l_Lean_Elab_instInhabitedDefViewElabHeader___closed__2; lean_object* l_Lean_Meta_getZetaDeltaFVarIds___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendindMVarErrorMessage___closed__1; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Term_MutualClosure_getModifiersForLetRecs___spec__2___boxed(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__8___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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___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*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabMutualDef_go___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___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_getUsedFVarsMap___boxed(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__7___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__8(lean_object*, lean_object*, size_t, 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_Closure_mkLambda(lean_object*, lean_object*); size_t lean_usize_mod(size_t, size_t); -static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_pushLetRecs___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_expandWhereStructInst___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMutualDef___spec__15(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); @@ -714,9 +712,10 @@ static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeader lean_object* l_Lean_Meta_mkForallFVars_x27(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___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_elabFunValues___spec__9___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_inheritedTraceOptions; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withFunLocalDecls_loop(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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*); 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; lean_object* l_Lean_MessageData_ofExpr(lean_object*); @@ -727,7 +726,6 @@ LEAN_EXPORT lean_object* l_Lean_RBNode_find___at_Lean_Elab_Term_MutualClosure_Re LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Elab_Term_checkForHiddenUnivLevels_visit___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_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapM___at_Lean_Elab_Term_elabMutualDef___spec__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_throwError___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__7(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_elabHeaders___spec__8___lambda__6___closed__7; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_Command_elabMutualDef___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*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_Command_elabMutualDef___spec__12___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_forInUnsafe_loop___at_Lean_Elab_Term_elabMutualDef_processDeriving___spec__1___closed__6; @@ -757,14 +755,13 @@ LEAN_EXPORT lean_object* l_List_mapTR_loop___at___private_Lean_Elab_MutualDef_0_ 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___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_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__3___closed__4; -LEAN_EXPORT lean_object* l_Lean_Core_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_EXPORT lean_object* l_Lean_Core_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*); static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__5___rarg___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*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__2(lean_object*); 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*); -static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__3; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__5___lambda__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_Elab_Term_checkForHiddenUnivLevels_visitLevel___closed__12; lean_object* l_Lean_Meta_withLCtx___at___private_Lean_Meta_Basic_0__Lean_Meta_mkLeveErrorMessageCore___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -791,6 +788,7 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Mutua LEAN_EXPORT lean_object* l_Lean_RBNode_find___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__13(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_MutualClosure_main___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabMutualDef___spec__8(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__1; LEAN_EXPORT lean_object* l_Lean_RBNode_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_mapM_loop___at_Lean_Elab_Term_MutualClosure_main___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_Array_foldlMUnsafe_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_collectUsed___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -800,6 +798,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabH static lean_object* l_Lean_Elab_Term_checkForHiddenUnivLevels_visitLevel___closed__3; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendindMVarErrorMessage___closed__4; LEAN_EXPORT lean_object* l_List_foldlM___at_Lean_Elab_Term_MutualClosure_pushLetRecs___spec__1___lambda__1(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_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___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_forInUnsafe_loop___at_Lean_Elab_Term_checkForHiddenUnivLevels___spec__2___closed__5; static lean_object* l_Lean_Elab_WF_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4___closed__1; lean_object* l_Lean_Elab_addPreDefinitions(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -836,7 +835,7 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Term_checkForHidd lean_object* l_Lean_MessageData_ofLevel(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withFunLocalDecls_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_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_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___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*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___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_elabHeaders___lambda__1___boxed(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*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef_go___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -861,7 +860,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_checkForHiddenUnivLevels_visit___lambd static lean_object* l_Lean_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__5___closed__3; 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_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_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___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*); lean_object* l_Lean_Syntax_node1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___lambda__2(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__5; @@ -949,7 +947,7 @@ lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabSyntax___spec__14(le 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 lean_object* l_Std_Range_forIn_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___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_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef_go___spec__11___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_elabFunValues___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_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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 uint8_t l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_isTheorem(lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkModifiers___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -967,7 +965,6 @@ static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeader static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___lambda__1___closed__10; extern lean_object* l_Lean_Elab_Command_instInhabitedScope; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___spec__4(lean_object*, lean_object*, size_t, size_t, lean_object*); -static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__2; static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__5___rarg___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_fixpoint___boxed(lean_object*); lean_object* l_Lean_mkHashMapImp___rarg(lean_object*); @@ -998,7 +995,8 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Mutua static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__5___rarg___lambda__1(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*); 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_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__2; +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_object*, lean_object*); LEAN_EXPORT lean_object* l_List_foldlM___at_Lean_Elab_Term_MutualClosure_pushLetRecs___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_withLevelNames___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___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*); @@ -1013,7 +1011,7 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualD LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_getUsedFVarsMap(lean_object*); lean_object* l_Lean_Language_SnapshotTask_get___rarg(lean_object*); uint8_t l_Lean_Elab_Modifiers_isNonrec(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__7(lean_object*, 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_checkKinds___closed__2; LEAN_EXPORT lean_object* l_Array_forInUnsafe_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*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___closed__6; @@ -1028,12 +1026,14 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Mutu LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_updateUsedVarsOf(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___closed__1; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___closed__3; +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__5___rarg___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabMutualDef_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_object*, lean_object*, 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_object* l_List_redLength___rarg(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*); +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___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*, 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___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosureFor___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_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*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1044,6 +1044,7 @@ static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_elabMutualDef_p LEAN_EXPORT lean_object* l_Array_forInUnsafe_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___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_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_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___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_object*, uint8_t, 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_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_getAttributeImpl(lean_object*, lean_object*); @@ -1075,7 +1076,6 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Mutua static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__3___closed__4; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_checkForHiddenUnivLevels___spec__2___closed__4; LEAN_EXPORT lean_object* l_Lean_Expr_ReplaceImpl_replaceUnsafeM_visit___at_Lean_Elab_Term_MutualClosure_Replacement_apply___spec__2(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__8___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*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_Elab_WF_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_resetModified___boxed(lean_object*); @@ -1113,7 +1113,6 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDe static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___lambda__2___closed__8; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13(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_sequenceMap_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__2___boxed(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_elabHeaders___spec__8___lambda__6___closed__6; lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabSyntax___spec__10(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_expandWhereStructInst___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*); 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*); @@ -1142,7 +1141,7 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualD lean_object* l_Lean_Expr_collectFVars(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_isTheorem___spec__1(lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_RBNode_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__10(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__8___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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_find___at_Lean_Elab_Term_MutualClosure_Replacement_apply___spec__1___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Elab_instInhabitedDefViewElabHeader___closed__5; LEAN_EXPORT lean_object* l_List_foldlM___at_Lean_Elab_Term_MutualClosure_pushLetRecs___spec__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -4920,1277 +4919,776 @@ return x_27; } } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_11; -lean_inc(x_2); -x_11 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check(x_1, x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -if (lean_obj_tag(x_11) == 0) +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_17 = lean_array_get_size(x_1); +x_18 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_18, 0, x_2); +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_17); +lean_ctor_set(x_18, 5, x_6); +x_19 = lean_box(0); +x_20 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_20, 0, x_7); +lean_ctor_set(x_20, 1, x_18); +lean_ctor_set(x_20, 2, x_19); +lean_ctor_set(x_20, 3, x_19); +lean_inc(x_20); +x_21 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check(x_8, x_20, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +if (lean_obj_tag(x_21) == 0) { -uint8_t x_12; -x_12 = !lean_is_exclusive(x_11); -if (x_12 == 0) +uint8_t x_22; +x_22 = !lean_is_exclusive(x_21); +if (x_22 == 0) { -lean_object* x_13; -x_13 = lean_ctor_get(x_11, 0); -lean_dec(x_13); -lean_ctor_set(x_11, 0, x_2); -return x_11; +lean_object* x_23; +x_23 = lean_ctor_get(x_21, 0); +lean_dec(x_23); +lean_ctor_set(x_21, 0, x_20); +return x_21; } else { -lean_object* x_14; lean_object* x_15; -x_14 = lean_ctor_get(x_11, 1); -lean_inc(x_14); -lean_dec(x_11); -x_15 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_15, 0, x_2); -lean_ctor_set(x_15, 1, x_14); -return x_15; +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_20); +lean_ctor_set(x_25, 1, x_24); +return x_25; } } else { -uint8_t x_16; -lean_dec(x_2); -x_16 = !lean_is_exclusive(x_11); -if (x_16 == 0) +uint8_t x_26; +lean_dec(x_20); +x_26 = !lean_is_exclusive(x_21); +if (x_26 == 0) { -return x_11; +return x_21; } 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_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; } } } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20) { +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_21 = lean_array_get_size(x_1); -lean_dec(x_1); -x_22 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_22, 0, x_2); -lean_ctor_set(x_22, 1, x_3); -lean_ctor_set(x_22, 2, x_4); -lean_ctor_set(x_22, 3, x_5); -lean_ctor_set(x_22, 4, x_21); -lean_ctor_set(x_22, 5, x_6); -x_23 = lean_box(0); -x_24 = lean_ctor_get(x_7, 7); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_dec(x_8); +x_16 = l_Array_unzip___rarg(x_1); +lean_dec(x_1); +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_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_9); +x_19 = l_Lean_Elab_Term_addAutoBoundImplicits(x_18, 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; +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_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_20); +x_22 = l_Lean_Meta_mkForallFVars_x27(x_20, x_7, x_11, x_12, x_13, x_14, x_21); +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; lean_object* x_28; lean_object* x_29; +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_22, 1); lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) +lean_dec(x_22); +x_25 = l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_23, x_9, x_10, x_11, x_12, x_13, x_14, x_24); +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_Elab_Term_getLevelNames___rarg(x_10, x_11, x_12, x_13, x_14, x_27); +x_29 = lean_ctor_get(x_4, 5); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) { -lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_dec(x_12); -lean_dec(x_10); -lean_dec(x_9); -x_25 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_25, 0, x_7); -lean_ctor_set(x_25, 1, x_22); -lean_ctor_set(x_25, 2, x_23); -lean_ctor_set(x_25, 3, x_23); -x_26 = lean_box(0); -x_27 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_25, x_26, x_14, x_15, x_16, x_17, x_18, x_19, x_20); -lean_dec(x_8); -return x_27; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_6); +x_30 = lean_ctor_get(x_28, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_28, 1); +lean_inc(x_31); +lean_dec(x_28); +x_32 = lean_box(0); +x_33 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_20, x_2, x_3, x_30, x_17, x_26, x_4, x_5, x_32, x_9, x_10, x_11, x_12, x_13, x_14, x_31); +lean_dec(x_5); +lean_dec(x_20); +return x_33; } else { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_24); -if (x_28 == 0) +uint8_t x_34; +x_34 = !lean_is_exclusive(x_29); +if (x_34 == 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; uint8_t x_42; -x_29 = lean_ctor_get(x_24, 0); -lean_inc(x_10); -lean_inc(x_9); -x_30 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_9, x_10, x_14, x_15, x_16, x_17, x_18, x_19, x_20); -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 = lean_ctor_get(x_31, 0); -lean_inc(x_33); -x_34 = lean_ctor_get(x_31, 1); -lean_inc(x_34); -lean_dec(x_31); -x_35 = l_Lean_Core_getAndEmptyMessageLog___rarg(x_19, x_32); -x_36 = lean_ctor_get(x_35, 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; lean_object* x_43; lean_object* x_44; +x_35 = lean_ctor_get(x_29, 0); +lean_dec(x_35); +x_36 = lean_ctor_get(x_28, 0); lean_inc(x_36); -x_37 = lean_ctor_get(x_35, 1); +x_37 = lean_ctor_get(x_28, 1); lean_inc(x_37); -lean_dec(x_35); -x_38 = l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(x_36, x_37); +lean_dec(x_28); +lean_inc(x_26); +x_38 = l_Lean_Meta_getMVars(x_26, x_11, x_12, x_13, x_14, x_37); 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 = lean_st_ref_get(x_19, x_40); -x_42 = !lean_is_exclusive(x_41); -if (x_42 == 0) -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; uint8_t x_46; -x_43 = lean_ctor_get(x_41, 0); -x_44 = lean_ctor_get(x_41, 1); -x_45 = lean_io_get_num_heartbeats(x_44); -x_46 = !lean_is_exclusive(x_45); -if (x_46 == 0) -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_47 = lean_ctor_get(x_45, 0); -x_48 = lean_ctor_get(x_45, 1); -x_49 = lean_nat_sub(x_47, x_11); -lean_dec(x_47); -lean_ctor_set(x_45, 1, x_49); -lean_ctor_set(x_45, 0, x_43); -x_50 = lean_st_ref_get(x_17, x_48); -x_51 = !lean_is_exclusive(x_50); -if (x_51 == 0) -{ -lean_object* x_52; lean_object* x_53; lean_object* x_54; uint8_t x_55; -x_52 = lean_ctor_get(x_50, 0); -x_53 = lean_ctor_get(x_50, 1); -lean_ctor_set(x_50, 1, x_52); -lean_ctor_set(x_50, 0, x_45); -x_54 = lean_st_ref_get(x_15, x_53); -x_55 = !lean_is_exclusive(x_54); -if (x_55 == 0) -{ -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; lean_object* x_63; uint8_t x_64; -x_56 = lean_ctor_get(x_54, 0); -x_57 = lean_ctor_get(x_54, 1); -lean_ctor_set(x_54, 1, x_56); -lean_ctor_set(x_54, 0, x_50); -x_58 = 0; -x_59 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_59, 0, x_39); -lean_ctor_set(x_59, 1, x_23); -lean_ctor_set_uint8(x_59, sizeof(void*)*2, x_58); +x_41 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendindMVarErrorMessage(x_6); +lean_dec(x_6); +x_42 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_42, 0, x_41); +x_43 = l_Lean_MessageData_ofFormat(x_42); +lean_ctor_set(x_29, 0, x_43); +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_60 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_9, x_12); -lean_inc(x_34); -lean_inc(x_22); -x_61 = lean_alloc_ctor(0, 7, 0); -lean_ctor_set(x_61, 0, x_59); -lean_ctor_set(x_61, 1, x_22); -lean_ctor_set(x_61, 2, x_54); -lean_ctor_set(x_61, 3, x_33); -lean_ctor_set(x_61, 4, x_34); -lean_ctor_set(x_61, 5, x_9); -lean_ctor_set(x_61, 6, x_60); -lean_ctor_set(x_24, 0, x_61); -x_62 = lean_ctor_get(x_29, 1); -lean_inc(x_62); -lean_dec(x_29); -x_63 = lean_io_promise_resolve(x_24, x_62, x_57); -lean_dec(x_62); -x_64 = !lean_is_exclusive(x_63); -if (x_64 == 0) -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_65 = lean_ctor_get(x_63, 1); -x_66 = lean_ctor_get(x_63, 0); -lean_dec(x_66); -lean_ctor_set(x_63, 1, x_12); -lean_ctor_set(x_63, 0, x_23); -x_67 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_67, 0, x_63); -if (lean_obj_tag(x_34) == 0) +x_44 = l_Lean_Elab_Term_logUnassignedUsingErrorInfos(x_39, x_29, x_9, x_10, x_11, x_12, x_13, x_14, x_40); +lean_dec(x_39); +if (lean_obj_tag(x_44) == 0) { -lean_object* x_68; lean_object* x_69; lean_object* x_70; -lean_free_object(x_41); -lean_dec(x_10); -x_68 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_68, 0, x_7); -lean_ctor_set(x_68, 1, x_22); -lean_ctor_set(x_68, 2, x_23); -lean_ctor_set(x_68, 3, x_67); -x_69 = lean_box(0); -x_70 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_68, x_69, x_14, x_15, x_16, x_17, x_18, x_19, x_65); -lean_dec(x_8); -return x_70; +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_44, 1); +lean_inc(x_45); +lean_dec(x_44); +x_46 = lean_box(0); +x_47 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_20, x_2, x_3, x_36, x_17, x_26, x_4, x_5, x_46, x_9, x_10, x_11, x_12, x_13, x_14, x_45); +lean_dec(x_5); +lean_dec(x_20); +return x_47; } else { -uint8_t x_71; -x_71 = !lean_is_exclusive(x_34); -if (x_71 == 0) +uint8_t x_48; +lean_dec(x_36); +lean_dec(x_26); +lean_dec(x_20); +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_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_48 = !lean_is_exclusive(x_44); +if (x_48 == 0) { -lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; -x_72 = lean_ctor_get(x_34, 0); -lean_dec(x_72); -lean_ctor_set(x_41, 1, x_10); -lean_ctor_set(x_41, 0, x_23); -lean_ctor_set(x_34, 0, x_41); -x_73 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_73, 0, x_7); -lean_ctor_set(x_73, 1, x_22); -lean_ctor_set(x_73, 2, x_34); -lean_ctor_set(x_73, 3, x_67); -x_74 = lean_box(0); -x_75 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_73, x_74, x_14, x_15, x_16, x_17, x_18, x_19, x_65); -lean_dec(x_8); -return x_75; +return x_44; } else { -lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; -lean_dec(x_34); -lean_ctor_set(x_41, 1, x_10); -lean_ctor_set(x_41, 0, x_23); -x_76 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_76, 0, x_41); -x_77 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_77, 0, x_7); -lean_ctor_set(x_77, 1, x_22); -lean_ctor_set(x_77, 2, x_76); -lean_ctor_set(x_77, 3, x_67); -x_78 = lean_box(0); -x_79 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_77, x_78, x_14, x_15, x_16, x_17, x_18, x_19, x_65); -lean_dec(x_8); -return x_79; +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_44, 0); +x_50 = lean_ctor_get(x_44, 1); +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_44); +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_80; lean_object* x_81; lean_object* x_82; -x_80 = lean_ctor_get(x_63, 1); -lean_inc(x_80); -lean_dec(x_63); -x_81 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_81, 0, x_23); -lean_ctor_set(x_81, 1, x_12); -x_82 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_82, 0, x_81); -if (lean_obj_tag(x_34) == 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; +lean_dec(x_29); +x_52 = lean_ctor_get(x_28, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_28, 1); +lean_inc(x_53); +lean_dec(x_28); +lean_inc(x_26); +x_54 = l_Lean_Meta_getMVars(x_26, x_11, x_12, x_13, x_14, x_53); +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___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendindMVarErrorMessage(x_6); +lean_dec(x_6); +x_58 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_58, 0, x_57); +x_59 = l_Lean_MessageData_ofFormat(x_58); +x_60 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_60, 0, x_59); +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_61 = l_Lean_Elab_Term_logUnassignedUsingErrorInfos(x_55, x_60, x_9, x_10, x_11, x_12, x_13, x_14, x_56); +lean_dec(x_55); +if (lean_obj_tag(x_61) == 0) { -lean_object* x_83; lean_object* x_84; lean_object* x_85; -lean_free_object(x_41); -lean_dec(x_10); -x_83 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_83, 0, x_7); -lean_ctor_set(x_83, 1, x_22); -lean_ctor_set(x_83, 2, x_23); -lean_ctor_set(x_83, 3, x_82); -x_84 = lean_box(0); -x_85 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_83, x_84, x_14, x_15, x_16, x_17, x_18, x_19, x_80); -lean_dec(x_8); -return x_85; +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = lean_ctor_get(x_61, 1); +lean_inc(x_62); +lean_dec(x_61); +x_63 = lean_box(0); +x_64 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_20, x_2, x_3, x_52, x_17, x_26, x_4, x_5, x_63, x_9, x_10, x_11, x_12, x_13, x_14, x_62); +lean_dec(x_5); +lean_dec(x_20); +return x_64; } else { -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; -if (lean_is_exclusive(x_34)) { - lean_ctor_release(x_34, 0); - x_86 = x_34; +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_dec(x_52); +lean_dec(x_26); +lean_dec(x_20); +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_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_65 = lean_ctor_get(x_61, 0); +lean_inc(x_65); +x_66 = lean_ctor_get(x_61, 1); +lean_inc(x_66); +if (lean_is_exclusive(x_61)) { + lean_ctor_release(x_61, 0); + lean_ctor_release(x_61, 1); + x_67 = x_61; } else { - lean_dec_ref(x_34); - x_86 = lean_box(0); + lean_dec_ref(x_61); + x_67 = lean_box(0); } -lean_ctor_set(x_41, 1, x_10); -lean_ctor_set(x_41, 0, x_23); -if (lean_is_scalar(x_86)) { - x_87 = lean_alloc_ctor(1, 1, 0); +if (lean_is_scalar(x_67)) { + x_68 = lean_alloc_ctor(1, 2, 0); } else { - x_87 = x_86; + x_68 = x_67; +} +lean_ctor_set(x_68, 0, x_65); +lean_ctor_set(x_68, 1, x_66); +return x_68; } -lean_ctor_set(x_87, 0, x_41); -x_88 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_88, 0, x_7); -lean_ctor_set(x_88, 1, x_22); -lean_ctor_set(x_88, 2, x_87); -lean_ctor_set(x_88, 3, x_82); -x_89 = lean_box(0); -x_90 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_88, x_89, x_14, x_15, x_16, x_17, x_18, x_19, x_80); -lean_dec(x_8); -return x_90; } } } else { -lean_object* x_91; lean_object* x_92; lean_object* x_93; uint8_t 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_91 = lean_ctor_get(x_54, 0); -x_92 = lean_ctor_get(x_54, 1); -lean_inc(x_92); -lean_inc(x_91); -lean_dec(x_54); -x_93 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_93, 0, x_50); -lean_ctor_set(x_93, 1, x_91); -x_94 = 0; -x_95 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_95, 0, x_39); -lean_ctor_set(x_95, 1, x_23); -lean_ctor_set_uint8(x_95, sizeof(void*)*2, x_94); -lean_inc(x_12); -lean_inc(x_9); -x_96 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_9, x_12); -lean_inc(x_34); -lean_inc(x_22); -x_97 = lean_alloc_ctor(0, 7, 0); -lean_ctor_set(x_97, 0, x_95); -lean_ctor_set(x_97, 1, x_22); -lean_ctor_set(x_97, 2, x_93); -lean_ctor_set(x_97, 3, x_33); -lean_ctor_set(x_97, 4, x_34); -lean_ctor_set(x_97, 5, x_9); -lean_ctor_set(x_97, 6, x_96); -lean_ctor_set(x_24, 0, x_97); -x_98 = lean_ctor_get(x_29, 1); -lean_inc(x_98); -lean_dec(x_29); -x_99 = lean_io_promise_resolve(x_24, x_98, x_92); -lean_dec(x_98); -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); +uint8_t x_69; +lean_dec(x_20); +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); +lean_dec(x_3); +lean_dec(x_2); +x_69 = !lean_is_exclusive(x_22); +if (x_69 == 0) +{ +return x_22; } -if (lean_is_scalar(x_101)) { - x_102 = lean_alloc_ctor(0, 2, 0); -} else { - x_102 = x_101; +else +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_22, 0); +x_71 = lean_ctor_get(x_22, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_22); +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_ctor_set(x_102, 0, x_23); -lean_ctor_set(x_102, 1, x_12); -x_103 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_103, 0, x_102); -if (lean_obj_tag(x_34) == 0) +} +} +else { -lean_object* x_104; lean_object* x_105; lean_object* x_106; -lean_free_object(x_41); +uint8_t x_73; +lean_dec(x_17); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); lean_dec(x_10); -x_104 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_104, 0, x_7); -lean_ctor_set(x_104, 1, x_22); -lean_ctor_set(x_104, 2, x_23); -lean_ctor_set(x_104, 3, x_103); -x_105 = lean_box(0); -x_106 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_104, x_105, x_14, x_15, x_16, x_17, x_18, x_19, x_100); -lean_dec(x_8); -return x_106; +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_73 = !lean_is_exclusive(x_19); +if (x_73 == 0) +{ +return x_19; } else { -lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; -if (lean_is_exclusive(x_34)) { - lean_ctor_release(x_34, 0); - x_107 = x_34; -} else { - lean_dec_ref(x_34); - x_107 = lean_box(0); -} -lean_ctor_set(x_41, 1, x_10); -lean_ctor_set(x_41, 0, x_23); -if (lean_is_scalar(x_107)) { - x_108 = lean_alloc_ctor(1, 1, 0); -} else { - x_108 = x_107; +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_19, 0); +x_75 = lean_ctor_get(x_19, 1); +lean_inc(x_75); +lean_inc(x_74); +lean_dec(x_19); +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_ctor_set(x_108, 0, x_41); -x_109 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_109, 0, x_7); -lean_ctor_set(x_109, 1, x_22); -lean_ctor_set(x_109, 2, x_108); -lean_ctor_set(x_109, 3, x_103); -x_110 = lean_box(0); -x_111 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_109, x_110, x_14, x_15, x_16, x_17, x_18, x_19, x_100); -lean_dec(x_8); -return x_111; } } } -else +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_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; uint8_t 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; -x_112 = lean_ctor_get(x_50, 0); -x_113 = lean_ctor_get(x_50, 1); -lean_inc(x_113); -lean_inc(x_112); -lean_dec(x_50); -x_114 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_114, 0, x_45); -lean_ctor_set(x_114, 1, x_112); -x_115 = lean_st_ref_get(x_15, x_113); -x_116 = lean_ctor_get(x_115, 0); -lean_inc(x_116); -x_117 = lean_ctor_get(x_115, 1); -lean_inc(x_117); -if (lean_is_exclusive(x_115)) { - lean_ctor_release(x_115, 0); - lean_ctor_release(x_115, 1); - x_118 = x_115; -} else { - lean_dec_ref(x_115); - x_118 = lean_box(0); -} -if (lean_is_scalar(x_118)) { - x_119 = lean_alloc_ctor(0, 2, 0); -} else { - x_119 = x_118; -} -lean_ctor_set(x_119, 0, x_114); -lean_ctor_set(x_119, 1, x_116); -x_120 = 0; -x_121 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_121, 0, x_39); -lean_ctor_set(x_121, 1, x_23); -lean_ctor_set_uint8(x_121, sizeof(void*)*2, x_120); +uint8_t x_16; uint8_t x_17; lean_object* x_18; +lean_dec(x_7); +x_16 = 1; +x_17 = 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_122 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_9, x_12); -lean_inc(x_34); -lean_inc(x_22); -x_123 = lean_alloc_ctor(0, 7, 0); -lean_ctor_set(x_123, 0, x_121); -lean_ctor_set(x_123, 1, x_22); -lean_ctor_set(x_123, 2, x_119); -lean_ctor_set(x_123, 3, x_33); -lean_ctor_set(x_123, 4, x_34); -lean_ctor_set(x_123, 5, x_9); -lean_ctor_set(x_123, 6, x_122); -lean_ctor_set(x_24, 0, x_123); -x_124 = lean_ctor_get(x_29, 1); -lean_inc(x_124); -lean_dec(x_29); -x_125 = lean_io_promise_resolve(x_24, x_124, x_117); -lean_dec(x_124); -x_126 = lean_ctor_get(x_125, 1); -lean_inc(x_126); -if (lean_is_exclusive(x_125)) { - lean_ctor_release(x_125, 0); - lean_ctor_release(x_125, 1); - x_127 = x_125; -} else { - lean_dec_ref(x_125); - x_127 = lean_box(0); +x_18 = l_Lean_Elab_Term_synthesizeSyntheticMVars(x_16, x_17, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; uint8_t x_20; +x_19 = lean_ctor_get(x_18, 1); +lean_inc(x_19); +lean_dec(x_18); +lean_inc(x_4); +x_20 = l_Lean_Elab_DefView_isInstance(x_4); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_box(0); +x_22 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_8, x_21, x_9, x_10, x_11, x_12, x_13, x_14, x_19); +return x_22; } -if (lean_is_scalar(x_127)) { - x_128 = lean_alloc_ctor(0, 2, 0); -} else { - x_128 = x_127; +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___closed__1; +x_24 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___closed__2; +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +x_25 = l_Lean_Meta_transform___at_Lean_Meta_zetaReduce___spec__1(x_8, x_23, x_24, x_17, x_17, x_11, x_12, x_13, x_14, x_19); +if (lean_obj_tag(x_25) == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* 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 = lean_box(0); +x_29 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_26, x_28, x_9, x_10, x_11, x_12, x_13, x_14, x_27); +return x_29; } -lean_ctor_set(x_128, 0, x_23); -lean_ctor_set(x_128, 1, x_12); -x_129 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_129, 0, x_128); -if (lean_obj_tag(x_34) == 0) +else { -lean_object* x_130; lean_object* x_131; lean_object* x_132; -lean_free_object(x_41); +uint8_t x_30; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); lean_dec(x_10); -x_130 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_130, 0, x_7); -lean_ctor_set(x_130, 1, x_22); -lean_ctor_set(x_130, 2, x_23); -lean_ctor_set(x_130, 3, x_129); -x_131 = lean_box(0); -x_132 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_130, x_131, x_14, x_15, x_16, x_17, x_18, x_19, x_126); -lean_dec(x_8); -return x_132; +lean_dec(x_9); +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_25); +if (x_30 == 0) +{ +return x_25; } else { -lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; -if (lean_is_exclusive(x_34)) { - lean_ctor_release(x_34, 0); - x_133 = x_34; -} else { - lean_dec_ref(x_34); - x_133 = lean_box(0); -} -lean_ctor_set(x_41, 1, x_10); -lean_ctor_set(x_41, 0, x_23); -if (lean_is_scalar(x_133)) { - x_134 = lean_alloc_ctor(1, 1, 0); -} else { - x_134 = x_133; +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_ctor_set(x_134, 0, x_41); -x_135 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_135, 0, x_7); -lean_ctor_set(x_135, 1, x_22); -lean_ctor_set(x_135, 2, x_134); -lean_ctor_set(x_135, 3, x_129); -x_136 = lean_box(0); -x_137 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_135, x_136, x_14, x_15, x_16, x_17, x_18, x_19, x_126); -lean_dec(x_8); -return x_137; } } } 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; 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; uint8_t 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; -x_138 = lean_ctor_get(x_45, 0); -x_139 = lean_ctor_get(x_45, 1); -lean_inc(x_139); -lean_inc(x_138); -lean_dec(x_45); -x_140 = lean_nat_sub(x_138, x_11); -lean_dec(x_138); -x_141 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_141, 0, x_43); -lean_ctor_set(x_141, 1, x_140); -x_142 = lean_st_ref_get(x_17, x_139); -x_143 = lean_ctor_get(x_142, 0); -lean_inc(x_143); -x_144 = lean_ctor_get(x_142, 1); -lean_inc(x_144); -if (lean_is_exclusive(x_142)) { - lean_ctor_release(x_142, 0); - lean_ctor_release(x_142, 1); - x_145 = x_142; -} else { - lean_dec_ref(x_142); - x_145 = lean_box(0); -} -if (lean_is_scalar(x_145)) { - x_146 = lean_alloc_ctor(0, 2, 0); -} else { - x_146 = x_145; -} -lean_ctor_set(x_146, 0, x_141); -lean_ctor_set(x_146, 1, x_143); -x_147 = lean_st_ref_get(x_15, x_144); -x_148 = lean_ctor_get(x_147, 0); -lean_inc(x_148); -x_149 = lean_ctor_get(x_147, 1); -lean_inc(x_149); -if (lean_is_exclusive(x_147)) { - lean_ctor_release(x_147, 0); - lean_ctor_release(x_147, 1); - x_150 = x_147; -} else { - lean_dec_ref(x_147); - x_150 = lean_box(0); -} -if (lean_is_scalar(x_150)) { - x_151 = lean_alloc_ctor(0, 2, 0); -} else { - x_151 = x_150; -} -lean_ctor_set(x_151, 0, x_146); -lean_ctor_set(x_151, 1, x_148); -x_152 = 0; -x_153 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_153, 0, x_39); -lean_ctor_set(x_153, 1, x_23); -lean_ctor_set_uint8(x_153, sizeof(void*)*2, x_152); -lean_inc(x_12); -lean_inc(x_9); -x_154 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_9, x_12); -lean_inc(x_34); -lean_inc(x_22); -x_155 = lean_alloc_ctor(0, 7, 0); -lean_ctor_set(x_155, 0, x_153); -lean_ctor_set(x_155, 1, x_22); -lean_ctor_set(x_155, 2, x_151); -lean_ctor_set(x_155, 3, x_33); -lean_ctor_set(x_155, 4, x_34); -lean_ctor_set(x_155, 5, x_9); -lean_ctor_set(x_155, 6, x_154); -lean_ctor_set(x_24, 0, x_155); -x_156 = lean_ctor_get(x_29, 1); -lean_inc(x_156); -lean_dec(x_29); -x_157 = lean_io_promise_resolve(x_24, x_156, x_149); -lean_dec(x_156); -x_158 = lean_ctor_get(x_157, 1); -lean_inc(x_158); -if (lean_is_exclusive(x_157)) { - lean_ctor_release(x_157, 0); - lean_ctor_release(x_157, 1); - x_159 = x_157; -} else { - lean_dec_ref(x_157); - x_159 = lean_box(0); -} -if (lean_is_scalar(x_159)) { - x_160 = lean_alloc_ctor(0, 2, 0); -} else { - x_160 = x_159; -} -lean_ctor_set(x_160, 0, x_23); -lean_ctor_set(x_160, 1, x_12); -x_161 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_161, 0, x_160); -if (lean_obj_tag(x_34) == 0) -{ -lean_object* x_162; lean_object* x_163; lean_object* x_164; -lean_free_object(x_41); +uint8_t x_34; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); lean_dec(x_10); -x_162 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_162, 0, x_7); -lean_ctor_set(x_162, 1, x_22); -lean_ctor_set(x_162, 2, x_23); -lean_ctor_set(x_162, 3, x_161); -x_163 = lean_box(0); -x_164 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_162, x_163, x_14, x_15, x_16, x_17, x_18, x_19, x_158); +lean_dec(x_9); lean_dec(x_8); -return x_164; -} -else +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_34 = !lean_is_exclusive(x_18); +if (x_34 == 0) { -lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; -if (lean_is_exclusive(x_34)) { - lean_ctor_release(x_34, 0); - x_165 = x_34; -} else { - lean_dec_ref(x_34); - x_165 = lean_box(0); -} -lean_ctor_set(x_41, 1, x_10); -lean_ctor_set(x_41, 0, x_23); -if (lean_is_scalar(x_165)) { - x_166 = lean_alloc_ctor(1, 1, 0); -} else { - x_166 = x_165; -} -lean_ctor_set(x_166, 0, x_41); -x_167 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_167, 0, x_7); -lean_ctor_set(x_167, 1, x_22); -lean_ctor_set(x_167, 2, x_166); -lean_ctor_set(x_167, 3, x_161); -x_168 = lean_box(0); -x_169 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_167, x_168, x_14, x_15, x_16, x_17, x_18, x_19, x_158); -lean_dec(x_8); -return x_169; -} -} +return x_18; } else { -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; uint8_t 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; -x_170 = lean_ctor_get(x_41, 0); -x_171 = lean_ctor_get(x_41, 1); -lean_inc(x_171); -lean_inc(x_170); -lean_dec(x_41); -x_172 = lean_io_get_num_heartbeats(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); -if (lean_is_exclusive(x_172)) { - lean_ctor_release(x_172, 0); - lean_ctor_release(x_172, 1); - x_175 = x_172; -} else { - lean_dec_ref(x_172); - x_175 = lean_box(0); -} -x_176 = lean_nat_sub(x_173, x_11); -lean_dec(x_173); -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_170); -lean_ctor_set(x_177, 1, x_176); -x_178 = lean_st_ref_get(x_17, x_174); -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); -} -if (lean_is_scalar(x_181)) { - x_182 = lean_alloc_ctor(0, 2, 0); -} else { - x_182 = x_181; +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_18, 0); +x_36 = lean_ctor_get(x_18, 1); +lean_inc(x_36); +lean_inc(x_35); +lean_dec(x_18); +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_ctor_set(x_182, 0, x_177); -lean_ctor_set(x_182, 1, x_179); -x_183 = lean_st_ref_get(x_15, x_180); -x_184 = lean_ctor_get(x_183, 0); -lean_inc(x_184); -x_185 = lean_ctor_get(x_183, 1); -lean_inc(x_185); -if (lean_is_exclusive(x_183)) { - lean_ctor_release(x_183, 0); - lean_ctor_release(x_183, 1); - x_186 = x_183; -} else { - lean_dec_ref(x_183); - x_186 = lean_box(0); -} -if (lean_is_scalar(x_186)) { - x_187 = lean_alloc_ctor(0, 2, 0); -} else { - x_187 = x_186; -} -lean_ctor_set(x_187, 0, x_182); -lean_ctor_set(x_187, 1, x_184); -x_188 = 0; -x_189 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_189, 0, x_39); -lean_ctor_set(x_189, 1, x_23); -lean_ctor_set_uint8(x_189, sizeof(void*)*2, x_188); -lean_inc(x_12); -lean_inc(x_9); -x_190 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_9, x_12); -lean_inc(x_34); -lean_inc(x_22); -x_191 = lean_alloc_ctor(0, 7, 0); -lean_ctor_set(x_191, 0, x_189); -lean_ctor_set(x_191, 1, x_22); -lean_ctor_set(x_191, 2, x_187); -lean_ctor_set(x_191, 3, x_33); -lean_ctor_set(x_191, 4, x_34); -lean_ctor_set(x_191, 5, x_9); -lean_ctor_set(x_191, 6, x_190); -lean_ctor_set(x_24, 0, x_191); -x_192 = lean_ctor_get(x_29, 1); -lean_inc(x_192); -lean_dec(x_29); -x_193 = lean_io_promise_resolve(x_24, x_192, x_185); -lean_dec(x_192); -x_194 = lean_ctor_get(x_193, 1); -lean_inc(x_194); -if (lean_is_exclusive(x_193)) { - lean_ctor_release(x_193, 0); - lean_ctor_release(x_193, 1); - x_195 = x_193; -} else { - lean_dec_ref(x_193); - x_195 = lean_box(0); } -if (lean_is_scalar(x_195)) { - x_196 = lean_alloc_ctor(0, 2, 0); -} else { - x_196 = x_195; } -lean_ctor_set(x_196, 0, x_23); -lean_ctor_set(x_196, 1, x_12); -x_197 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_197, 0, x_196); -if (lean_obj_tag(x_34) == 0) -{ -lean_object* x_198; lean_object* x_199; lean_object* x_200; -lean_dec(x_10); -x_198 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_198, 0, x_7); -lean_ctor_set(x_198, 1, x_22); -lean_ctor_set(x_198, 2, x_23); -lean_ctor_set(x_198, 3, x_197); -x_199 = lean_box(0); -x_200 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_198, x_199, x_14, x_15, x_16, x_17, x_18, x_19, x_194); -lean_dec(x_8); -return x_200; } -else +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* x_206; -if (lean_is_exclusive(x_34)) { - lean_ctor_release(x_34, 0); - x_201 = x_34; -} else { - lean_dec_ref(x_34); - x_201 = lean_box(0); -} -x_202 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_202, 0, x_23); -lean_ctor_set(x_202, 1, x_10); -if (lean_is_scalar(x_201)) { - x_203 = lean_alloc_ctor(1, 1, 0); -} else { - x_203 = x_201; -} -lean_ctor_set(x_203, 0, x_202); -x_204 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_204, 0, x_7); -lean_ctor_set(x_204, 1, x_22); -lean_ctor_set(x_204, 2, x_203); -lean_ctor_set(x_204, 3, x_197); -x_205 = lean_box(0); -x_206 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_204, x_205, x_14, x_15, x_16, x_17, x_18, x_19, x_194); -lean_dec(x_8); -return x_206; -} +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_registerFailedToInferDefTypeInfo(x_1, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_13 = lean_ctor_get(x_12, 1); +lean_inc(x_13); +lean_dec(x_12); +x_14 = l_Lean_Parser_Term_type; +x_15 = lean_apply_9(x_3, x_14, x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_13); +return x_15; } } -else +static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__1() { +_start: { -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; lean_object* x_219; 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; 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; uint8_t 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; -x_207 = lean_ctor_get(x_24, 0); -lean_inc(x_207); -lean_dec(x_24); -lean_inc(x_10); -lean_inc(x_9); -x_208 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_9, x_10, x_14, x_15, x_16, x_17, x_18, x_19, x_20); -x_209 = lean_ctor_get(x_208, 0); -lean_inc(x_209); -x_210 = lean_ctor_get(x_208, 1); -lean_inc(x_210); -lean_dec(x_208); -x_211 = lean_ctor_get(x_209, 0); -lean_inc(x_211); -x_212 = lean_ctor_get(x_209, 1); -lean_inc(x_212); -lean_dec(x_209); -x_213 = l_Lean_Core_getAndEmptyMessageLog___rarg(x_19, x_210); -x_214 = lean_ctor_get(x_213, 0); -lean_inc(x_214); -x_215 = lean_ctor_get(x_213, 1); -lean_inc(x_215); -lean_dec(x_213); -x_216 = l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(x_214, x_215); -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_219 = lean_st_ref_get(x_19, x_218); -x_220 = lean_ctor_get(x_219, 0); -lean_inc(x_220); -x_221 = lean_ctor_get(x_219, 1); -lean_inc(x_221); -if (lean_is_exclusive(x_219)) { - lean_ctor_release(x_219, 0); - lean_ctor_release(x_219, 1); - x_222 = x_219; -} else { - lean_dec_ref(x_219); - x_222 = lean_box(0); -} -x_223 = lean_io_get_num_heartbeats(x_221); -x_224 = lean_ctor_get(x_223, 0); -lean_inc(x_224); -x_225 = lean_ctor_get(x_223, 1); -lean_inc(x_225); -if (lean_is_exclusive(x_223)) { - lean_ctor_release(x_223, 0); - lean_ctor_release(x_223, 1); - x_226 = x_223; -} else { - lean_dec_ref(x_223); - x_226 = lean_box(0); -} -x_227 = lean_nat_sub(x_224, x_11); -lean_dec(x_224); -if (lean_is_scalar(x_226)) { - x_228 = lean_alloc_ctor(0, 2, 0); -} else { - x_228 = x_226; -} -lean_ctor_set(x_228, 0, x_220); -lean_ctor_set(x_228, 1, x_227); -x_229 = lean_st_ref_get(x_17, x_225); -x_230 = lean_ctor_get(x_229, 0); -lean_inc(x_230); -x_231 = lean_ctor_get(x_229, 1); -lean_inc(x_231); -if (lean_is_exclusive(x_229)) { - lean_ctor_release(x_229, 0); - lean_ctor_release(x_229, 1); - x_232 = x_229; -} else { - lean_dec_ref(x_229); - x_232 = lean_box(0); -} -if (lean_is_scalar(x_232)) { - x_233 = lean_alloc_ctor(0, 2, 0); -} else { - x_233 = x_232; -} -lean_ctor_set(x_233, 0, x_228); -lean_ctor_set(x_233, 1, x_230); -x_234 = lean_st_ref_get(x_15, x_231); -x_235 = lean_ctor_get(x_234, 0); -lean_inc(x_235); -x_236 = lean_ctor_get(x_234, 1); -lean_inc(x_236); -if (lean_is_exclusive(x_234)) { - lean_ctor_release(x_234, 0); - lean_ctor_release(x_234, 1); - x_237 = x_234; -} else { - lean_dec_ref(x_234); - x_237 = lean_box(0); +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Elab", 4); +return x_1; } -if (lean_is_scalar(x_237)) { - x_238 = lean_alloc_ctor(0, 2, 0); -} else { - x_238 = x_237; } -lean_ctor_set(x_238, 0, x_233); -lean_ctor_set(x_238, 1, x_235); -x_239 = 0; -x_240 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_240, 0, x_217); -lean_ctor_set(x_240, 1, x_23); -lean_ctor_set_uint8(x_240, sizeof(void*)*2, x_239); -lean_inc(x_12); -lean_inc(x_9); -x_241 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_9, x_12); -lean_inc(x_212); -lean_inc(x_22); -x_242 = lean_alloc_ctor(0, 7, 0); -lean_ctor_set(x_242, 0, x_240); -lean_ctor_set(x_242, 1, x_22); -lean_ctor_set(x_242, 2, x_238); -lean_ctor_set(x_242, 3, x_211); -lean_ctor_set(x_242, 4, x_212); -lean_ctor_set(x_242, 5, x_9); -lean_ctor_set(x_242, 6, x_241); -x_243 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_243, 0, x_242); -x_244 = lean_ctor_get(x_207, 1); -lean_inc(x_244); -lean_dec(x_207); -x_245 = lean_io_promise_resolve(x_243, x_244, x_236); -lean_dec(x_244); -x_246 = lean_ctor_get(x_245, 1); -lean_inc(x_246); -if (lean_is_exclusive(x_245)) { - lean_ctor_release(x_245, 0); - lean_ctor_release(x_245, 1); - x_247 = x_245; -} else { - lean_dec_ref(x_245); - x_247 = lean_box(0); +static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("definition", 10); +return x_1; } -if (lean_is_scalar(x_247)) { - x_248 = lean_alloc_ctor(0, 2, 0); -} else { - x_248 = x_247; } -lean_ctor_set(x_248, 0, x_23); -lean_ctor_set(x_248, 1, x_12); -x_249 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_249, 0, x_248); -if (lean_obj_tag(x_212) == 0) +static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__3() { +_start: { -lean_object* x_250; lean_object* x_251; lean_object* x_252; -lean_dec(x_222); -lean_dec(x_10); -x_250 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_250, 0, x_7); -lean_ctor_set(x_250, 1, x_22); -lean_ctor_set(x_250, 2, x_23); -lean_ctor_set(x_250, 3, x_249); -x_251 = lean_box(0); -x_252 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_250, x_251, x_14, x_15, x_16, x_17, x_18, x_19, x_246); -lean_dec(x_8); -return x_252; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__1; +x_2 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__2; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; } -else +} +static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__4() { +_start: { -lean_object* x_253; lean_object* x_254; lean_object* x_255; lean_object* x_256; lean_object* x_257; lean_object* x_258; -if (lean_is_exclusive(x_212)) { - lean_ctor_release(x_212, 0); - x_253 = x_212; -} else { - lean_dec_ref(x_212); - x_253 = lean_box(0); +lean_object* x_1; +x_1 = lean_mk_string_from_bytes(">> type: ", 9); +return x_1; } -if (lean_is_scalar(x_222)) { - x_254 = lean_alloc_ctor(0, 2, 0); -} else { - x_254 = x_222; } -lean_ctor_set(x_254, 0, x_23); -lean_ctor_set(x_254, 1, x_10); -if (lean_is_scalar(x_253)) { - x_255 = lean_alloc_ctor(1, 1, 0); -} else { - x_255 = x_253; +static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__4; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; } -lean_ctor_set(x_255, 0, x_254); -x_256 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_256, 0, x_7); -lean_ctor_set(x_256, 1, x_22); -lean_ctor_set(x_256, 2, x_255); -lean_ctor_set(x_256, 3, x_249); -x_257 = lean_box(0); -x_258 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(x_8, x_256, x_257, x_14, x_15, x_16, x_17, x_18, x_19, x_246); -lean_dec(x_8); -return x_258; } +static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__6() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("\n", 1); +return x_1; } } +static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__6; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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, lean_object* x_17, lean_object* x_18, lean_object* x_19) { +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -lean_dec(x_12); -x_20 = l_Array_unzip___rarg(x_1); -lean_dec(x_1); -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_18); -lean_inc(x_17); -lean_inc(x_16); +lean_object* x_14; +x_14 = lean_ctor_get(x_1, 5); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_1, 6); lean_inc(x_15); -lean_inc(x_13); -x_23 = l_Lean_Elab_Term_addAutoBoundImplicits(x_22, x_13, x_14, x_15, x_16, x_17, x_18, x_19); -if (lean_obj_tag(x_23) == 0) +x_16 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__3), 15, 6); +lean_closure_set(x_16, 0, x_6); +lean_closure_set(x_16, 1, x_2); +lean_closure_set(x_16, 2, x_3); +lean_closure_set(x_16, 3, x_1); +lean_closure_set(x_16, 4, x_4); +lean_closure_set(x_16, 5, x_5); +x_17 = 0; +lean_inc(x_15); +x_18 = l_Lean_mkHole(x_15, x_17); +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_19 = l_Lean_Elab_Term_elabType(x_18, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_19) == 0) { -lean_object* x_24; lean_object* x_25; lean_object* x_26; +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_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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__3; +x_23 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_22, x_7, x_8, x_9, x_10, x_11, x_12, x_21); 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_18); -lean_inc(x_17); -lean_inc(x_16); -lean_inc(x_15); -lean_inc(x_24); -x_26 = l_Lean_Meta_mkForallFVars_x27(x_24, x_11, x_15, x_16, x_17, x_18, x_25); -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; -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_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_27, x_13, x_14, x_15, x_16, x_17, x_18, 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 = l_Lean_Elab_Term_getLevelNames___rarg(x_14, x_15, x_16, x_17, x_18, x_31); -x_33 = lean_ctor_get(x_4, 5); -lean_inc(x_33); -if (lean_obj_tag(x_33) == 0) +x_25 = lean_unbox(x_24); +lean_dec(x_24); +if (x_25 == 0) { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_dec(x_10); -x_34 = lean_ctor_get(x_32, 0); -lean_inc(x_34); -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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__2(x_24, x_2, x_3, x_34, x_21, x_30, x_4, x_5, x_6, x_7, x_8, x_9, x_36, x_13, x_14, x_15, x_16, x_17, x_18, x_35); -lean_dec(x_8); -return x_37; +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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__4(x_20, x_15, x_16, x_27, x_7, x_8, x_9, x_10, x_11, x_12, x_26); +return x_28; } else { -uint8_t x_38; -x_38 = !lean_is_exclusive(x_33); -if (x_38 == 0) +uint8_t x_29; +x_29 = !lean_is_exclusive(x_23); +if (x_29 == 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_33, 0); -lean_dec(x_39); -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); -lean_inc(x_30); -x_42 = l_Lean_Meta_getMVars(x_30, x_15, x_16, x_17, x_18, x_41); -x_43 = lean_ctor_get(x_42, 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; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_30 = lean_ctor_get(x_23, 1); +x_31 = lean_ctor_get(x_23, 0); +lean_dec(x_31); +lean_inc(x_20); +x_32 = l_Lean_MessageData_ofExpr(x_20); +x_33 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__5; +lean_ctor_set_tag(x_23, 7); +lean_ctor_set(x_23, 1, x_32); +lean_ctor_set(x_23, 0, x_33); +x_34 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__7; +x_35 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_35, 0, x_23); +lean_ctor_set(x_35, 1, x_34); +lean_inc(x_20); +x_36 = l_Lean_Expr_mvarId_x21(x_20); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_36); +x_38 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_38, 0, x_35); +lean_ctor_set(x_38, 1, x_37); +x_39 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___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_Term_traceAtCmdPos___spec__2(x_22, x_40, x_7, x_8, x_9, x_10, x_11, x_12, x_30); +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_41); +x_44 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__4(x_20, x_15, x_16, x_42, x_7, x_8, x_9, x_10, x_11, x_12, x_43); lean_dec(x_42); -x_45 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendindMVarErrorMessage(x_10); -lean_dec(x_10); -x_46 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_46, 0, x_45); -x_47 = l_Lean_MessageData_ofFormat(x_46); -lean_ctor_set(x_33, 0, x_47); -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_48 = l_Lean_Elab_Term_logUnassignedUsingErrorInfos(x_43, x_33, x_13, x_14, x_15, x_16, x_17, x_18, x_44); -lean_dec(x_43); -if (lean_obj_tag(x_48) == 0) +return x_44; +} +else { -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 = lean_box(0); -x_51 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__2(x_24, x_2, x_3, x_40, x_21, x_30, x_4, x_5, x_6, x_7, x_8, x_9, x_50, x_13, x_14, x_15, x_16, x_17, x_18, x_49); -lean_dec(x_8); -return x_51; +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_45 = lean_ctor_get(x_23, 1); +lean_inc(x_45); +lean_dec(x_23); +lean_inc(x_20); +x_46 = l_Lean_MessageData_ofExpr(x_20); +x_47 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__5; +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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__7; +x_50 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_49); +lean_inc(x_20); +x_51 = l_Lean_Expr_mvarId_x21(x_20); +x_52 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_52, 0, x_51); +x_53 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_53, 0, x_50); +lean_ctor_set(x_53, 1, x_52); +x_54 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__2___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 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_22, x_55, x_7, x_8, x_9, x_10, x_11, x_12, x_45); +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_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__4(x_20, x_15, x_16, x_57, x_7, x_8, x_9, x_10, x_11, x_12, x_58); +lean_dec(x_57); +return x_59; +} +} } else { -uint8_t x_52; -lean_dec(x_40); -lean_dec(x_30); -lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_18); -lean_dec(x_17); +uint8_t 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); +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_52 = !lean_is_exclusive(x_48); -if (x_52 == 0) +x_60 = !lean_is_exclusive(x_19); +if (x_60 == 0) { -return x_48; +return x_19; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = lean_ctor_get(x_48, 0); -x_54 = lean_ctor_get(x_48, 1); -lean_inc(x_54); -lean_inc(x_53); -lean_dec(x_48); -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_61; lean_object* x_62; lean_object* x_63; +x_61 = lean_ctor_get(x_19, 0); +x_62 = lean_ctor_get(x_19, 1); +lean_inc(x_62); +lean_inc(x_61); +lean_dec(x_19); +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_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_dec(x_33); -x_56 = lean_ctor_get(x_32, 0); -lean_inc(x_56); -x_57 = lean_ctor_get(x_32, 1); -lean_inc(x_57); -lean_dec(x_32); -lean_inc(x_30); -x_58 = l_Lean_Meta_getMVars(x_30, x_15, x_16, x_17, x_18, x_57); -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___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendindMVarErrorMessage(x_10); -lean_dec(x_10); -x_62 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_62, 0, x_61); -x_63 = l_Lean_MessageData_ofFormat(x_62); -x_64 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_64, 0, x_63); -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_65 = l_Lean_Elab_Term_logUnassignedUsingErrorInfos(x_59, x_64, x_13, x_14, x_15, x_16, x_17, x_18, x_60); -lean_dec(x_59); +lean_object* x_64; lean_object* x_65; +x_64 = lean_ctor_get(x_14, 0); +lean_inc(x_64); +lean_dec(x_14); +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_64); +x_65 = l_Lean_Elab_Term_elabType(x_64, x_7, x_8, x_9, x_10, x_11, x_12, x_13); if (lean_obj_tag(x_65) == 0) { -lean_object* x_66; lean_object* x_67; lean_object* x_68; -x_66 = lean_ctor_get(x_65, 1); +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_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_67 = lean_box(0); -x_68 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__2(x_24, x_2, x_3, x_56, x_21, x_30, x_4, x_5, x_6, x_7, x_8, x_9, x_67, x_13, x_14, x_15, x_16, x_17, x_18, x_66); -lean_dec(x_8); -return x_68; -} -else -{ -lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -lean_dec(x_56); -lean_dec(x_30); -lean_dec(x_24); -lean_dec(x_21); -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_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_69 = lean_ctor_get(x_65, 0); +x_68 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_registerFailedToInferDefTypeInfo(x_66, x_64, x_7, x_8, x_9, x_10, x_11, x_12, x_67); +x_69 = lean_ctor_get(x_68, 1); lean_inc(x_69); -x_70 = lean_ctor_get(x_65, 1); -lean_inc(x_70); -if (lean_is_exclusive(x_65)) { - lean_ctor_release(x_65, 0); - lean_ctor_release(x_65, 1); - x_71 = x_65; -} else { - lean_dec_ref(x_65); - x_71 = lean_box(0); -} -if (lean_is_scalar(x_71)) { - x_72 = lean_alloc_ctor(1, 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; -} -} -} +lean_dec(x_68); +x_70 = l_Lean_Parser_Term_type; +x_71 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__3(x_6, x_2, x_3, x_1, x_4, x_5, x_70, x_66, x_7, x_8, x_9, x_10, x_11, x_12, x_69); +return x_71; } else { -uint8_t x_73; -lean_dec(x_24); -lean_dec(x_21); -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); +uint8_t x_72; +lean_dec(x_64); +lean_dec(x_12); +lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -6200,168 +5698,335 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_73 = !lean_is_exclusive(x_26); -if (x_73 == 0) +lean_dec(x_1); +x_72 = !lean_is_exclusive(x_65); +if (x_72 == 0) { -return x_26; +return x_65; } else { -lean_object* x_74; lean_object* x_75; lean_object* x_76; -x_74 = lean_ctor_get(x_26, 0); -x_75 = lean_ctor_get(x_26, 1); -lean_inc(x_75); +lean_object* x_73; lean_object* x_74; lean_object* x_75; +x_73 = lean_ctor_get(x_65, 0); +x_74 = lean_ctor_get(x_65, 1); lean_inc(x_74); -lean_dec(x_26); -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_inc(x_73); +lean_dec(x_65); +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 +} +} +static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__1() { +_start: { -uint8_t x_77; -lean_dec(x_21); -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_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_77 = !lean_is_exclusive(x_23); -if (x_77 == 0) +lean_object* x_1; +x_1 = l_Lean_Elab_Command_showPartialSyntaxErrors; +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: { -return x_23; +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_47; +x_17 = lean_io_get_num_heartbeats(x_16); +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +if (lean_is_exclusive(x_17)) { + lean_ctor_release(x_17, 0); + lean_ctor_release(x_17, 1); + x_20 = x_17; +} else { + lean_dec_ref(x_17); + x_20 = lean_box(0); } -else +x_47 = !lean_is_exclusive(x_14); +if (x_47 == 0) { -lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_78 = lean_ctor_get(x_23, 0); -x_79 = lean_ctor_get(x_23, 1); +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; uint8_t 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; lean_object* x_67; +x_48 = lean_ctor_get(x_14, 0); +x_49 = lean_ctor_get(x_14, 1); +x_50 = lean_ctor_get(x_14, 2); +x_51 = lean_ctor_get(x_14, 3); +x_52 = lean_ctor_get(x_14, 4); +x_53 = lean_ctor_get(x_14, 5); +x_54 = lean_ctor_get(x_14, 6); +x_55 = lean_ctor_get(x_14, 7); +x_56 = lean_ctor_get(x_14, 8); +x_57 = lean_ctor_get(x_14, 9); +x_58 = lean_ctor_get(x_14, 10); +x_59 = lean_ctor_get_uint8(x_14, sizeof(void*)*12); +x_60 = lean_ctor_get(x_14, 11); +x_61 = l_Lean_replaceRef(x_1, x_53); +lean_dec(x_53); +lean_inc(x_60); +lean_inc(x_58); +lean_inc(x_57); +lean_inc(x_56); +lean_inc(x_55); +lean_inc(x_54); +lean_inc(x_61); +lean_inc(x_52); +lean_inc(x_51); +lean_inc(x_50); +lean_inc(x_49); +lean_inc(x_48); +lean_ctor_set(x_14, 5, x_61); +lean_inc(x_14); +lean_inc(x_2); +x_62 = l_Lean_Elab_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__3(x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_15, x_19); +x_63 = lean_ctor_get(x_62, 1); +lean_inc(x_63); +lean_dec(x_62); +x_64 = lean_ctor_get(x_8, 2); +lean_inc(x_64); +x_65 = lean_ctor_get(x_64, 1); +lean_inc(x_65); +lean_dec(x_64); +x_66 = 2; +lean_inc(x_15); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_2); +x_67 = l_Lean_Elab_Term_applyAttributesAt(x_2, x_65, x_66, x_4, x_5, x_6, x_7, x_14, x_15, x_63); +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; uint8_t x_75; +x_68 = lean_ctor_get(x_67, 1); +lean_inc(x_68); +lean_dec(x_67); +x_69 = lean_ctor_get(x_8, 4); +lean_inc(x_69); +x_70 = l_Lean_Syntax_getArgs(x_69); +lean_dec(x_69); +lean_inc(x_2); +x_71 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5), 13, 5); +lean_closure_set(x_71, 0, x_8); +lean_closure_set(x_71, 1, x_9); +lean_closure_set(x_71, 2, x_2); +lean_closure_set(x_71, 3, x_10); +lean_closure_set(x_71, 4, x_11); +x_72 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBindersEx___rarg), 9, 2); +lean_closure_set(x_72, 0, x_70); +lean_closure_set(x_72, 1, x_71); +x_73 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withLevelNames___rarg), 9, 2); +lean_closure_set(x_73, 0, x_12); +lean_closure_set(x_73, 1, x_72); +x_74 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withAutoBoundImplicit___rarg), 8, 1); +lean_closure_set(x_74, 0, x_73); +x_75 = l_Lean_Syntax_hasMissing(x_1); +if (x_75 == 0) +{ +uint8_t x_76; lean_object* x_77; lean_object* x_78; +x_76 = 0; +x_77 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_77, 0, x_48); +lean_ctor_set(x_77, 1, x_49); +lean_ctor_set(x_77, 2, x_50); +lean_ctor_set(x_77, 3, x_51); +lean_ctor_set(x_77, 4, x_52); +lean_ctor_set(x_77, 5, x_61); +lean_ctor_set(x_77, 6, x_54); +lean_ctor_set(x_77, 7, x_55); +lean_ctor_set(x_77, 8, x_56); +lean_ctor_set(x_77, 9, x_57); +lean_ctor_set(x_77, 10, x_58); +lean_ctor_set(x_77, 11, x_60); +lean_ctor_set_uint8(x_77, sizeof(void*)*12, x_59); +lean_ctor_set_uint8(x_77, sizeof(void*)*12 + 1, x_76); +lean_inc(x_15); +x_78 = l_Lean_Elab_Term_withDeclName___rarg(x_2, x_74, x_4, x_5, x_6, x_7, x_77, x_15, x_68); +if (lean_obj_tag(x_78) == 0) +{ +lean_object* x_79; lean_object* x_80; +x_79 = lean_ctor_get(x_78, 0); lean_inc(x_79); -lean_inc(x_78); -lean_dec(x_23); -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; +x_80 = lean_ctor_get(x_78, 1); +lean_inc(x_80); +lean_dec(x_78); +x_21 = x_79; +x_22 = x_80; +goto block_46; +} +else +{ +uint8_t x_81; +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_15); +x_81 = !lean_is_exclusive(x_78); +if (x_81 == 0) +{ +return x_78; } +else +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_82 = lean_ctor_get(x_78, 0); +x_83 = lean_ctor_get(x_78, 1); +lean_inc(x_83); +lean_inc(x_82); +lean_dec(x_78); +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; } } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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) { -_start: +else { -uint8_t x_20; uint8_t x_21; lean_object* x_22; -lean_dec(x_11); -x_20 = 1; -x_21 = 0; -lean_inc(x_18); -lean_inc(x_17); -lean_inc(x_16); +lean_object* x_85; uint8_t x_86; +x_85 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__1; +x_86 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_50, x_85); +if (x_86 == 0) +{ +uint8_t x_87; lean_object* x_88; lean_object* x_89; +x_87 = 1; +x_88 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_88, 0, x_48); +lean_ctor_set(x_88, 1, x_49); +lean_ctor_set(x_88, 2, x_50); +lean_ctor_set(x_88, 3, x_51); +lean_ctor_set(x_88, 4, x_52); +lean_ctor_set(x_88, 5, x_61); +lean_ctor_set(x_88, 6, x_54); +lean_ctor_set(x_88, 7, x_55); +lean_ctor_set(x_88, 8, x_56); +lean_ctor_set(x_88, 9, x_57); +lean_ctor_set(x_88, 10, x_58); +lean_ctor_set(x_88, 11, x_60); +lean_ctor_set_uint8(x_88, sizeof(void*)*12, x_59); +lean_ctor_set_uint8(x_88, sizeof(void*)*12 + 1, x_87); lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -x_22 = l_Lean_Elab_Term_synthesizeSyntheticMVars(x_20, x_21, x_13, x_14, x_15, x_16, x_17, x_18, x_19); -if (lean_obj_tag(x_22) == 0) +x_89 = l_Lean_Elab_Term_withDeclName___rarg(x_2, x_74, x_4, x_5, x_6, x_7, x_88, x_15, x_68); +if (lean_obj_tag(x_89) == 0) { -lean_object* x_23; uint8_t x_24; -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -lean_dec(x_22); -lean_inc(x_4); -x_24 = l_Lean_Elab_DefView_isInstance(x_4); -if (x_24 == 0) +lean_object* x_90; lean_object* x_91; +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_21 = x_90; +x_22 = x_91; +goto block_46; +} +else { -lean_object* x_25; lean_object* x_26; -x_25 = lean_box(0); -x_26 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_12, x_25, x_13, x_14, x_15, x_16, x_17, x_18, x_23); -return x_26; +uint8_t x_92; +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_15); +x_92 = !lean_is_exclusive(x_89); +if (x_92 == 0) +{ +return x_89; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___closed__1; -x_28 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___closed__2; -lean_inc(x_18); -lean_inc(x_17); -lean_inc(x_16); +lean_object* x_93; lean_object* x_94; lean_object* x_95; +x_93 = lean_ctor_get(x_89, 0); +x_94 = lean_ctor_get(x_89, 1); +lean_inc(x_94); +lean_inc(x_93); +lean_dec(x_89); +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_object* x_97; lean_object* x_98; +x_96 = 0; +x_97 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_97, 0, x_48); +lean_ctor_set(x_97, 1, x_49); +lean_ctor_set(x_97, 2, x_50); +lean_ctor_set(x_97, 3, x_51); +lean_ctor_set(x_97, 4, x_52); +lean_ctor_set(x_97, 5, x_61); +lean_ctor_set(x_97, 6, x_54); +lean_ctor_set(x_97, 7, x_55); +lean_ctor_set(x_97, 8, x_56); +lean_ctor_set(x_97, 9, x_57); +lean_ctor_set(x_97, 10, x_58); +lean_ctor_set(x_97, 11, x_60); +lean_ctor_set_uint8(x_97, sizeof(void*)*12, x_59); +lean_ctor_set_uint8(x_97, sizeof(void*)*12 + 1, x_96); lean_inc(x_15); -x_29 = l_Lean_Meta_transform___at_Lean_Meta_zetaReduce___spec__1(x_12, x_27, x_28, x_21, x_21, x_15, x_16, x_17, x_18, x_23); -if (lean_obj_tag(x_29) == 0) +x_98 = l_Lean_Elab_Term_withDeclName___rarg(x_2, x_74, x_4, x_5, x_6, x_7, x_97, x_15, x_68); +if (lean_obj_tag(x_98) == 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_box(0); -x_33 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_30, x_32, x_13, x_14, x_15, x_16, x_17, x_18, x_31); -return x_33; +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_21 = x_99; +x_22 = x_100; +goto block_46; } else { -uint8_t x_34; +uint8_t x_101; +lean_dec(x_20); 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_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_34 = !lean_is_exclusive(x_29); -if (x_34 == 0) +x_101 = !lean_is_exclusive(x_98); +if (x_101 == 0) { -return x_29; +return x_98; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_29, 0); -x_36 = lean_ctor_get(x_29, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_29); -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_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_38; +uint8_t x_105; +lean_dec(x_61); +lean_dec(x_60); +lean_dec(x_58); +lean_dec(x_57); +lean_dec(x_56); +lean_dec(x_55); +lean_dec(x_54); +lean_dec(x_52); +lean_dec(x_51); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_20); 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_8); @@ -6369,311 +6034,340 @@ 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_38 = !lean_is_exclusive(x_22); -if (x_38 == 0) +x_105 = !lean_is_exclusive(x_67); +if (x_105 == 0) { -return x_22; +return x_67; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_39 = lean_ctor_get(x_22, 0); -x_40 = lean_ctor_get(x_22, 1); -lean_inc(x_40); -lean_inc(x_39); -lean_dec(x_22); -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_object* x_106; lean_object* x_107; lean_object* x_108; +x_106 = lean_ctor_get(x_67, 0); +x_107 = lean_ctor_get(x_67, 1); +lean_inc(x_107); +lean_inc(x_106); +lean_dec(x_67); +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_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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: +else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_registerFailedToInferDefTypeInfo(x_1, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -x_13 = lean_ctor_get(x_12, 1); -lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_Parser_Term_type; -x_15 = lean_apply_9(x_3, x_14, x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_13); -return x_15; -} -} -static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__1() { -_start: +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; uint8_t 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; uint8_t x_129; lean_object* x_130; +x_109 = lean_ctor_get(x_14, 0); +x_110 = lean_ctor_get(x_14, 1); +x_111 = lean_ctor_get(x_14, 2); +x_112 = lean_ctor_get(x_14, 3); +x_113 = lean_ctor_get(x_14, 4); +x_114 = lean_ctor_get(x_14, 5); +x_115 = lean_ctor_get(x_14, 6); +x_116 = lean_ctor_get(x_14, 7); +x_117 = lean_ctor_get(x_14, 8); +x_118 = lean_ctor_get(x_14, 9); +x_119 = lean_ctor_get(x_14, 10); +x_120 = lean_ctor_get_uint8(x_14, sizeof(void*)*12); +x_121 = lean_ctor_get(x_14, 11); +x_122 = lean_ctor_get_uint8(x_14, sizeof(void*)*12 + 1); +lean_inc(x_121); +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_113); +lean_inc(x_112); +lean_inc(x_111); +lean_inc(x_110); +lean_inc(x_109); +lean_dec(x_14); +x_123 = l_Lean_replaceRef(x_1, x_114); +lean_dec(x_114); +lean_inc(x_121); +lean_inc(x_119); +lean_inc(x_118); +lean_inc(x_117); +lean_inc(x_116); +lean_inc(x_115); +lean_inc(x_123); +lean_inc(x_113); +lean_inc(x_112); +lean_inc(x_111); +lean_inc(x_110); +lean_inc(x_109); +x_124 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_124, 0, x_109); +lean_ctor_set(x_124, 1, x_110); +lean_ctor_set(x_124, 2, x_111); +lean_ctor_set(x_124, 3, x_112); +lean_ctor_set(x_124, 4, x_113); +lean_ctor_set(x_124, 5, x_123); +lean_ctor_set(x_124, 6, x_115); +lean_ctor_set(x_124, 7, x_116); +lean_ctor_set(x_124, 8, x_117); +lean_ctor_set(x_124, 9, x_118); +lean_ctor_set(x_124, 10, x_119); +lean_ctor_set(x_124, 11, x_121); +lean_ctor_set_uint8(x_124, sizeof(void*)*12, x_120); +lean_ctor_set_uint8(x_124, sizeof(void*)*12 + 1, x_122); +lean_inc(x_124); +lean_inc(x_2); +x_125 = l_Lean_Elab_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__3(x_2, x_3, x_4, x_5, x_6, x_7, x_124, x_15, x_19); +x_126 = lean_ctor_get(x_125, 1); +lean_inc(x_126); +lean_dec(x_125); +x_127 = lean_ctor_get(x_8, 2); +lean_inc(x_127); +x_128 = lean_ctor_get(x_127, 1); +lean_inc(x_128); +lean_dec(x_127); +x_129 = 2; +lean_inc(x_15); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_2); +x_130 = l_Lean_Elab_Term_applyAttributesAt(x_2, x_128, x_129, x_4, x_5, x_6, x_7, x_124, x_15, x_126); +if (lean_obj_tag(x_130) == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Elab", 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__2() { -_start: +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_ctor_get(x_130, 1); +lean_inc(x_131); +lean_dec(x_130); +x_132 = lean_ctor_get(x_8, 4); +lean_inc(x_132); +x_133 = l_Lean_Syntax_getArgs(x_132); +lean_dec(x_132); +lean_inc(x_2); +x_134 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5), 13, 5); +lean_closure_set(x_134, 0, x_8); +lean_closure_set(x_134, 1, x_9); +lean_closure_set(x_134, 2, x_2); +lean_closure_set(x_134, 3, x_10); +lean_closure_set(x_134, 4, x_11); +x_135 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBindersEx___rarg), 9, 2); +lean_closure_set(x_135, 0, x_133); +lean_closure_set(x_135, 1, x_134); +x_136 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withLevelNames___rarg), 9, 2); +lean_closure_set(x_136, 0, x_12); +lean_closure_set(x_136, 1, x_135); +x_137 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withAutoBoundImplicit___rarg), 8, 1); +lean_closure_set(x_137, 0, x_136); +x_138 = l_Lean_Syntax_hasMissing(x_1); +if (x_138 == 0) +{ +uint8_t x_139; lean_object* x_140; lean_object* x_141; +x_139 = 0; +x_140 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_140, 0, x_109); +lean_ctor_set(x_140, 1, x_110); +lean_ctor_set(x_140, 2, x_111); +lean_ctor_set(x_140, 3, x_112); +lean_ctor_set(x_140, 4, x_113); +lean_ctor_set(x_140, 5, x_123); +lean_ctor_set(x_140, 6, x_115); +lean_ctor_set(x_140, 7, x_116); +lean_ctor_set(x_140, 8, x_117); +lean_ctor_set(x_140, 9, x_118); +lean_ctor_set(x_140, 10, x_119); +lean_ctor_set(x_140, 11, x_121); +lean_ctor_set_uint8(x_140, sizeof(void*)*12, x_120); +lean_ctor_set_uint8(x_140, sizeof(void*)*12 + 1, x_139); +lean_inc(x_15); +x_141 = l_Lean_Elab_Term_withDeclName___rarg(x_2, x_137, x_4, x_5, x_6, x_7, x_140, x_15, x_131); +if (lean_obj_tag(x_141) == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("definition", 10); -return x_1; -} +lean_object* x_142; lean_object* x_143; +x_142 = lean_ctor_get(x_141, 0); +lean_inc(x_142); +x_143 = lean_ctor_get(x_141, 1); +lean_inc(x_143); +lean_dec(x_141); +x_21 = x_142; +x_22 = x_143; +goto block_46; } -static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__3() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__1; -x_2 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__2; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; +lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_15); +x_144 = lean_ctor_get(x_141, 0); +lean_inc(x_144); +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); } +if (lean_is_scalar(x_146)) { + x_147 = lean_alloc_ctor(1, 2, 0); +} else { + x_147 = x_146; } -static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__4() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes(">> type: ", 9); -return x_1; +lean_ctor_set(x_147, 0, x_144); +lean_ctor_set(x_147, 1, x_145); +return x_147; } } -static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__5() { -_start: +else { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__4; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} +lean_object* x_148; uint8_t x_149; +x_148 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__1; +x_149 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_111, x_148); +if (x_149 == 0) +{ +uint8_t x_150; lean_object* x_151; lean_object* x_152; +x_150 = 1; +x_151 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_151, 0, x_109); +lean_ctor_set(x_151, 1, x_110); +lean_ctor_set(x_151, 2, x_111); +lean_ctor_set(x_151, 3, x_112); +lean_ctor_set(x_151, 4, x_113); +lean_ctor_set(x_151, 5, x_123); +lean_ctor_set(x_151, 6, x_115); +lean_ctor_set(x_151, 7, x_116); +lean_ctor_set(x_151, 8, x_117); +lean_ctor_set(x_151, 9, x_118); +lean_ctor_set(x_151, 10, x_119); +lean_ctor_set(x_151, 11, x_121); +lean_ctor_set_uint8(x_151, sizeof(void*)*12, x_120); +lean_ctor_set_uint8(x_151, sizeof(void*)*12 + 1, x_150); +lean_inc(x_15); +x_152 = l_Lean_Elab_Term_withDeclName___rarg(x_2, x_137, x_4, x_5, x_6, x_7, x_151, x_15, x_131); +if (lean_obj_tag(x_152) == 0) +{ +lean_object* x_153; lean_object* x_154; +x_153 = lean_ctor_get(x_152, 0); +lean_inc(x_153); +x_154 = lean_ctor_get(x_152, 1); +lean_inc(x_154); +lean_dec(x_152); +x_21 = x_153; +x_22 = x_154; +goto block_46; } -static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__6() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("\n", 1); -return x_1; +lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_15); +x_155 = lean_ctor_get(x_152, 0); +lean_inc(x_155); +x_156 = lean_ctor_get(x_152, 1); +lean_inc(x_156); +if (lean_is_exclusive(x_152)) { + lean_ctor_release(x_152, 0); + lean_ctor_release(x_152, 1); + x_157 = x_152; +} else { + lean_dec_ref(x_152); + x_157 = lean_box(0); } +if (lean_is_scalar(x_157)) { + x_158 = lean_alloc_ctor(1, 2, 0); +} else { + x_158 = x_157; } -static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__7() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__6; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; +lean_ctor_set(x_158, 0, x_155); +lean_ctor_set(x_158, 1, x_156); +return x_158; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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, lean_object* x_14, lean_object* x_15, lean_object* x_16) { -_start: -{ -lean_object* x_17; -x_17 = lean_ctor_get(x_1, 5); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 0) +else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; lean_object* x_21; lean_object* x_22; -x_18 = lean_ctor_get(x_1, 6); -lean_inc(x_18); -lean_inc(x_18); -x_19 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__4___boxed), 19, 10); -lean_closure_set(x_19, 0, x_9); -lean_closure_set(x_19, 1, x_2); -lean_closure_set(x_19, 2, x_3); -lean_closure_set(x_19, 3, x_1); -lean_closure_set(x_19, 4, x_4); -lean_closure_set(x_19, 5, x_18); -lean_closure_set(x_19, 6, x_5); -lean_closure_set(x_19, 7, x_6); -lean_closure_set(x_19, 8, x_7); -lean_closure_set(x_19, 9, x_8); -x_20 = 0; -lean_inc(x_18); -x_21 = l_Lean_mkHole(x_18, x_20); +uint8_t x_159; lean_object* x_160; lean_object* x_161; +x_159 = 0; +x_160 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_160, 0, x_109); +lean_ctor_set(x_160, 1, x_110); +lean_ctor_set(x_160, 2, x_111); +lean_ctor_set(x_160, 3, x_112); +lean_ctor_set(x_160, 4, x_113); +lean_ctor_set(x_160, 5, x_123); +lean_ctor_set(x_160, 6, x_115); +lean_ctor_set(x_160, 7, x_116); +lean_ctor_set(x_160, 8, x_117); +lean_ctor_set(x_160, 9, x_118); +lean_ctor_set(x_160, 10, x_119); +lean_ctor_set(x_160, 11, x_121); +lean_ctor_set_uint8(x_160, sizeof(void*)*12, x_120); +lean_ctor_set_uint8(x_160, sizeof(void*)*12 + 1, x_159); 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_22 = l_Lean_Elab_Term_elabType(x_21, x_10, x_11, x_12, x_13, x_14, x_15, x_16); -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_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__3; -x_26 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_25, x_10, x_11, x_12, x_13, x_14, x_15, 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) +x_161 = l_Lean_Elab_Term_withDeclName___rarg(x_2, x_137, x_4, x_5, x_6, x_7, x_160, x_15, x_131); +if (lean_obj_tag(x_161) == 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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5(x_23, x_18, x_19, x_30, x_10, x_11, x_12, x_13, x_14, x_15, x_29); -return x_31; +lean_object* x_162; lean_object* x_163; +x_162 = lean_ctor_get(x_161, 0); +lean_inc(x_162); +x_163 = lean_ctor_get(x_161, 1); +lean_inc(x_163); +lean_dec(x_161); +x_21 = x_162; +x_22 = x_163; +goto block_46; } 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; -x_33 = lean_ctor_get(x_26, 1); -x_34 = lean_ctor_get(x_26, 0); -lean_dec(x_34); -lean_inc(x_23); -x_35 = l_Lean_MessageData_ofExpr(x_23); -x_36 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__5; -lean_ctor_set_tag(x_26, 7); -lean_ctor_set(x_26, 1, x_35); -lean_ctor_set(x_26, 0, x_36); -x_37 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__7; -x_38 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_38, 0, x_26); -lean_ctor_set(x_38, 1, x_37); -lean_inc(x_23); -x_39 = l_Lean_Expr_mvarId_x21(x_23); -x_40 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_40, 0, 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___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__2___closed__4; -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_25, x_43, x_10, x_11, x_12, x_13, x_14, x_15, x_33); -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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5(x_23, x_18, x_19, x_45, x_10, x_11, x_12, x_13, x_14, x_15, x_46); -lean_dec(x_45); -return x_47; +lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_15); +x_164 = lean_ctor_get(x_161, 0); +lean_inc(x_164); +x_165 = lean_ctor_get(x_161, 1); +lean_inc(x_165); +if (lean_is_exclusive(x_161)) { + lean_ctor_release(x_161, 0); + lean_ctor_release(x_161, 1); + x_166 = x_161; +} else { + lean_dec_ref(x_161); + 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_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_48 = lean_ctor_get(x_26, 1); -lean_inc(x_48); -lean_dec(x_26); -lean_inc(x_23); -x_49 = l_Lean_MessageData_ofExpr(x_23); -x_50 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__5; -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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__7; -x_53 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_53, 0, x_51); -lean_ctor_set(x_53, 1, x_52); -lean_inc(x_23); -x_54 = l_Lean_Expr_mvarId_x21(x_23); -x_55 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_55, 0, x_54); -x_56 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_56, 0, x_53); -lean_ctor_set(x_56, 1, x_55); -x_57 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__2___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_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_25, x_58, x_10, x_11, x_12, x_13, x_14, x_15, x_48); -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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5(x_23, x_18, x_19, x_60, x_10, x_11, x_12, x_13, x_14, x_15, x_61); -lean_dec(x_60); -return x_62; } } } else { -uint8_t x_63; -lean_dec(x_19); +lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; +lean_dec(x_123); +lean_dec(x_121); +lean_dec(x_119); +lean_dec(x_118); +lean_dec(x_117); +lean_dec(x_116); +lean_dec(x_115); +lean_dec(x_113); +lean_dec(x_112); +lean_dec(x_111); +lean_dec(x_110); +lean_dec(x_109); +lean_dec(x_20); lean_dec(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); -x_63 = !lean_is_exclusive(x_22); -if (x_63 == 0) -{ -return x_22; -} -else -{ -lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_64 = lean_ctor_get(x_22, 0); -x_65 = lean_ctor_get(x_22, 1); -lean_inc(x_65); -lean_inc(x_64); -lean_dec(x_22); -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 -{ -lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_67 = lean_ctor_get(x_1, 6); -lean_inc(x_67); -x_68 = lean_ctor_get(x_17, 0); -lean_inc(x_68); -lean_dec(x_17); -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_68); -x_69 = l_Lean_Elab_Term_elabType(x_68, x_10, x_11, x_12, x_13, x_14, x_15, x_16); -if (lean_obj_tag(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; -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___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_registerFailedToInferDefTypeInfo(x_70, x_68, x_10, x_11, x_12, x_13, x_14, x_15, x_71); -x_73 = lean_ctor_get(x_72, 1); -lean_inc(x_73); -lean_dec(x_72); -x_74 = l_Lean_Parser_Term_type; -x_75 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__4(x_9, x_2, x_3, x_1, x_4, x_67, x_5, x_6, x_7, x_8, x_74, x_70, x_10, x_11, x_12, x_13, x_14, x_15, x_73); -return x_75; -} -else -{ -uint8_t x_76; -lean_dec(x_68); -lean_dec(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); @@ -6683,486 +6377,127 @@ 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_76 = !lean_is_exclusive(x_69); -if (x_76 == 0) -{ -return x_69; -} -else -{ -lean_object* x_77; lean_object* x_78; lean_object* x_79; -x_77 = lean_ctor_get(x_69, 0); -x_78 = lean_ctor_get(x_69, 1); -lean_inc(x_78); -lean_inc(x_77); -lean_dec(x_69); -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; -} +x_168 = lean_ctor_get(x_130, 0); +lean_inc(x_168); +x_169 = lean_ctor_get(x_130, 1); +lean_inc(x_169); +if (lean_is_exclusive(x_130)) { + lean_ctor_release(x_130, 0); + lean_ctor_release(x_130, 1); + x_170 = x_130; +} else { + lean_dec_ref(x_130); + x_170 = lean_box(0); } +if (lean_is_scalar(x_170)) { + x_171 = lean_alloc_ctor(1, 2, 0); +} else { + x_171 = x_170; } +lean_ctor_set(x_171, 0, x_168); +lean_ctor_set(x_171, 1, x_169); +return x_171; } } -static lean_object* _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__7___closed__1() { -_start: +block_46: { -lean_object* x_1; -x_1 = l_Lean_Elab_Command_showPartialSyntaxErrors; -return x_1; -} -} -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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, lean_object* x_14, lean_object* x_15, lean_object* x_16) { -_start: +lean_object* x_23; uint8_t x_24; +x_23 = lean_st_ref_get(x_15, x_22); +lean_dec(x_15); +x_24 = !lean_is_exclusive(x_23); +if (x_24 == 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_io_get_num_heartbeats(x_16); -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_1, 1); -lean_inc(x_20); -x_21 = lean_ctor_get(x_1, 0); -lean_inc(x_21); -x_22 = !lean_is_exclusive(x_14); -if (x_22 == 0) +lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_25 = lean_ctor_get(x_23, 1); +x_26 = lean_io_get_num_heartbeats(x_25); +x_27 = !lean_is_exclusive(x_26); +if (x_27 == 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; 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_object* x_40; uint8_t x_41; lean_object* x_42; -x_23 = lean_ctor_get(x_14, 0); -x_24 = lean_ctor_get(x_14, 1); -x_25 = lean_ctor_get(x_14, 2); -x_26 = lean_ctor_get(x_14, 3); -x_27 = lean_ctor_get(x_14, 4); -x_28 = lean_ctor_get(x_14, 5); -x_29 = lean_ctor_get(x_14, 6); -x_30 = lean_ctor_get(x_14, 7); -x_31 = lean_ctor_get(x_14, 8); -x_32 = lean_ctor_get(x_14, 9); -x_33 = lean_ctor_get(x_14, 10); -x_34 = lean_ctor_get_uint8(x_14, sizeof(void*)*12); -x_35 = lean_ctor_get(x_14, 11); -x_36 = l_Lean_replaceRef(x_20, x_28); +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_26, 0); +x_29 = lean_nat_sub(x_28, x_18); +lean_dec(x_18); lean_dec(x_28); -lean_inc(x_35); -lean_inc(x_33); -lean_inc(x_32); -lean_inc(x_31); -lean_inc(x_30); -lean_inc(x_29); -lean_inc(x_36); -lean_inc(x_27); -lean_inc(x_26); -lean_inc(x_25); -lean_inc(x_24); -lean_inc(x_23); -lean_ctor_set(x_14, 5, x_36); -lean_inc(x_14); -lean_inc(x_2); -x_37 = l_Lean_Elab_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__3(x_2, x_21, x_3, x_4, x_5, x_6, x_14, x_15, x_19); -x_38 = lean_ctor_get(x_37, 1); -lean_inc(x_38); -lean_dec(x_37); -x_39 = lean_ctor_get(x_1, 2); -lean_inc(x_39); -x_40 = lean_ctor_get(x_39, 1); -lean_inc(x_40); -lean_dec(x_39); -x_41 = 2; -lean_inc(x_15); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -x_42 = l_Lean_Elab_Term_applyAttributesAt(x_2, x_40, x_41, x_3, x_4, x_5, x_6, x_14, x_15, x_38); -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; lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_43 = lean_ctor_get(x_42, 1); -lean_inc(x_43); -lean_dec(x_42); -x_44 = lean_ctor_get(x_1, 4); -lean_inc(x_44); -x_45 = l_Lean_Syntax_getArgs(x_44); -lean_dec(x_44); -lean_inc(x_2); -x_46 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6), 16, 8); -lean_closure_set(x_46, 0, x_1); -lean_closure_set(x_46, 1, x_7); -lean_closure_set(x_46, 2, x_2); -lean_closure_set(x_46, 3, x_8); -lean_closure_set(x_46, 4, x_9); -lean_closure_set(x_46, 5, x_18); -lean_closure_set(x_46, 6, x_10); -lean_closure_set(x_46, 7, x_11); -x_47 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBindersEx___rarg), 9, 2); -lean_closure_set(x_47, 0, x_45); -lean_closure_set(x_47, 1, x_46); -x_48 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withLevelNames___rarg), 9, 2); -lean_closure_set(x_48, 0, x_12); -lean_closure_set(x_48, 1, x_47); -x_49 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withAutoBoundImplicit___rarg), 8, 1); -lean_closure_set(x_49, 0, x_48); -x_50 = l_Lean_Syntax_hasMissing(x_20); -if (x_50 == 0) -{ -uint8_t x_51; lean_object* x_52; lean_object* x_53; -x_51 = 0; -x_52 = lean_alloc_ctor(0, 12, 2); -lean_ctor_set(x_52, 0, x_23); -lean_ctor_set(x_52, 1, x_24); -lean_ctor_set(x_52, 2, x_25); -lean_ctor_set(x_52, 3, x_26); -lean_ctor_set(x_52, 4, x_27); -lean_ctor_set(x_52, 5, x_36); -lean_ctor_set(x_52, 6, x_29); -lean_ctor_set(x_52, 7, x_30); -lean_ctor_set(x_52, 8, x_31); -lean_ctor_set(x_52, 9, x_32); -lean_ctor_set(x_52, 10, x_33); -lean_ctor_set(x_52, 11, x_35); -lean_ctor_set_uint8(x_52, sizeof(void*)*12, x_34); -lean_ctor_set_uint8(x_52, sizeof(void*)*12 + 1, x_51); -x_53 = l_Lean_Elab_Term_withDeclName___rarg(x_2, x_49, x_3, x_4, x_5, x_6, x_52, x_15, x_43); -return x_53; -} -else -{ -lean_object* x_54; uint8_t x_55; -x_54 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__7___closed__1; -x_55 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_25, x_54); -if (x_55 == 0) -{ -uint8_t x_56; lean_object* x_57; lean_object* x_58; -x_56 = 1; -x_57 = lean_alloc_ctor(0, 12, 2); -lean_ctor_set(x_57, 0, x_23); -lean_ctor_set(x_57, 1, x_24); -lean_ctor_set(x_57, 2, x_25); -lean_ctor_set(x_57, 3, x_26); -lean_ctor_set(x_57, 4, x_27); -lean_ctor_set(x_57, 5, x_36); -lean_ctor_set(x_57, 6, x_29); -lean_ctor_set(x_57, 7, x_30); -lean_ctor_set(x_57, 8, x_31); -lean_ctor_set(x_57, 9, x_32); -lean_ctor_set(x_57, 10, x_33); -lean_ctor_set(x_57, 11, x_35); -lean_ctor_set_uint8(x_57, sizeof(void*)*12, x_34); -lean_ctor_set_uint8(x_57, sizeof(void*)*12 + 1, x_56); -x_58 = l_Lean_Elab_Term_withDeclName___rarg(x_2, x_49, x_3, x_4, x_5, x_6, x_57, x_15, x_43); -return x_58; -} -else -{ -uint8_t x_59; lean_object* x_60; lean_object* x_61; -x_59 = 0; -x_60 = lean_alloc_ctor(0, 12, 2); -lean_ctor_set(x_60, 0, x_23); -lean_ctor_set(x_60, 1, x_24); -lean_ctor_set(x_60, 2, x_25); -lean_ctor_set(x_60, 3, x_26); -lean_ctor_set(x_60, 4, x_27); -lean_ctor_set(x_60, 5, x_36); -lean_ctor_set(x_60, 6, x_29); -lean_ctor_set(x_60, 7, x_30); -lean_ctor_set(x_60, 8, x_31); -lean_ctor_set(x_60, 9, x_32); -lean_ctor_set(x_60, 10, x_33); -lean_ctor_set(x_60, 11, x_35); -lean_ctor_set_uint8(x_60, sizeof(void*)*12, x_34); -lean_ctor_set_uint8(x_60, sizeof(void*)*12 + 1, x_59); -x_61 = l_Lean_Elab_Term_withDeclName___rarg(x_2, x_49, x_3, x_4, x_5, x_6, x_60, x_15, x_43); -return x_61; -} +lean_ctor_set(x_23, 1, x_29); +if (lean_is_scalar(x_20)) { + x_30 = lean_alloc_ctor(0, 2, 0); +} else { + x_30 = x_20; } +lean_ctor_set(x_30, 0, x_21); +lean_ctor_set(x_30, 1, x_23); +lean_ctor_set(x_26, 0, x_30); +return x_26; } else { -uint8_t x_62; -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); -lean_dec(x_30); -lean_dec(x_29); -lean_dec(x_27); +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); -lean_dec(x_25); -lean_dec(x_24); -lean_dec(x_23); -lean_dec(x_20); +x_33 = lean_nat_sub(x_31, x_18); lean_dec(x_18); -lean_dec(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); -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_62 = !lean_is_exclusive(x_42); -if (x_62 == 0) -{ -return x_42; -} -else -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_63 = lean_ctor_get(x_42, 0); -x_64 = lean_ctor_get(x_42, 1); -lean_inc(x_64); -lean_inc(x_63); -lean_dec(x_42); -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_dec(x_31); +lean_ctor_set(x_23, 1, x_33); +if (lean_is_scalar(x_20)) { + x_34 = lean_alloc_ctor(0, 2, 0); +} else { + x_34 = x_20; } +lean_ctor_set(x_34, 0, x_21); +lean_ctor_set(x_34, 1, x_23); +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 -{ -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; uint8_t x_77; lean_object* 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; lean_object* x_87; -x_66 = lean_ctor_get(x_14, 0); -x_67 = lean_ctor_get(x_14, 1); -x_68 = lean_ctor_get(x_14, 2); -x_69 = lean_ctor_get(x_14, 3); -x_70 = lean_ctor_get(x_14, 4); -x_71 = lean_ctor_get(x_14, 5); -x_72 = lean_ctor_get(x_14, 6); -x_73 = lean_ctor_get(x_14, 7); -x_74 = lean_ctor_get(x_14, 8); -x_75 = lean_ctor_get(x_14, 9); -x_76 = lean_ctor_get(x_14, 10); -x_77 = lean_ctor_get_uint8(x_14, sizeof(void*)*12); -x_78 = lean_ctor_get(x_14, 11); -x_79 = lean_ctor_get_uint8(x_14, sizeof(void*)*12 + 1); -lean_inc(x_78); -lean_inc(x_76); -lean_inc(x_75); -lean_inc(x_74); -lean_inc(x_73); -lean_inc(x_72); -lean_inc(x_71); -lean_inc(x_70); -lean_inc(x_69); -lean_inc(x_68); -lean_inc(x_67); -lean_inc(x_66); -lean_dec(x_14); -x_80 = l_Lean_replaceRef(x_20, x_71); -lean_dec(x_71); -lean_inc(x_78); -lean_inc(x_76); -lean_inc(x_75); -lean_inc(x_74); -lean_inc(x_73); -lean_inc(x_72); -lean_inc(x_80); -lean_inc(x_70); -lean_inc(x_69); -lean_inc(x_68); -lean_inc(x_67); -lean_inc(x_66); -x_81 = lean_alloc_ctor(0, 12, 2); -lean_ctor_set(x_81, 0, x_66); -lean_ctor_set(x_81, 1, x_67); -lean_ctor_set(x_81, 2, x_68); -lean_ctor_set(x_81, 3, x_69); -lean_ctor_set(x_81, 4, x_70); -lean_ctor_set(x_81, 5, x_80); -lean_ctor_set(x_81, 6, x_72); -lean_ctor_set(x_81, 7, x_73); -lean_ctor_set(x_81, 8, x_74); -lean_ctor_set(x_81, 9, x_75); -lean_ctor_set(x_81, 10, x_76); -lean_ctor_set(x_81, 11, x_78); -lean_ctor_set_uint8(x_81, sizeof(void*)*12, x_77); -lean_ctor_set_uint8(x_81, sizeof(void*)*12 + 1, x_79); -lean_inc(x_81); -lean_inc(x_2); -x_82 = l_Lean_Elab_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__3(x_2, x_21, x_3, x_4, x_5, x_6, x_81, x_15, x_19); -x_83 = lean_ctor_get(x_82, 1); -lean_inc(x_83); -lean_dec(x_82); -x_84 = lean_ctor_get(x_1, 2); -lean_inc(x_84); -x_85 = lean_ctor_get(x_84, 1); -lean_inc(x_85); -lean_dec(x_84); -x_86 = 2; -lean_inc(x_15); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -x_87 = l_Lean_Elab_Term_applyAttributesAt(x_2, x_85, x_86, x_3, x_4, x_5, x_6, x_81, x_15, x_83); -if (lean_obj_tag(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; uint8_t x_95; -x_88 = lean_ctor_get(x_87, 1); -lean_inc(x_88); -lean_dec(x_87); -x_89 = lean_ctor_get(x_1, 4); -lean_inc(x_89); -x_90 = l_Lean_Syntax_getArgs(x_89); -lean_dec(x_89); -lean_inc(x_2); -x_91 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6), 16, 8); -lean_closure_set(x_91, 0, x_1); -lean_closure_set(x_91, 1, x_7); -lean_closure_set(x_91, 2, x_2); -lean_closure_set(x_91, 3, x_8); -lean_closure_set(x_91, 4, x_9); -lean_closure_set(x_91, 5, x_18); -lean_closure_set(x_91, 6, x_10); -lean_closure_set(x_91, 7, x_11); -x_92 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabBindersEx___rarg), 9, 2); -lean_closure_set(x_92, 0, x_90); -lean_closure_set(x_92, 1, x_91); -x_93 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withLevelNames___rarg), 9, 2); -lean_closure_set(x_93, 0, x_12); -lean_closure_set(x_93, 1, x_92); -x_94 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withAutoBoundImplicit___rarg), 8, 1); -lean_closure_set(x_94, 0, x_93); -x_95 = l_Lean_Syntax_hasMissing(x_20); -if (x_95 == 0) -{ -uint8_t x_96; lean_object* x_97; lean_object* x_98; -x_96 = 0; -x_97 = lean_alloc_ctor(0, 12, 2); -lean_ctor_set(x_97, 0, x_66); -lean_ctor_set(x_97, 1, x_67); -lean_ctor_set(x_97, 2, x_68); -lean_ctor_set(x_97, 3, x_69); -lean_ctor_set(x_97, 4, x_70); -lean_ctor_set(x_97, 5, x_80); -lean_ctor_set(x_97, 6, x_72); -lean_ctor_set(x_97, 7, x_73); -lean_ctor_set(x_97, 8, x_74); -lean_ctor_set(x_97, 9, x_75); -lean_ctor_set(x_97, 10, x_76); -lean_ctor_set(x_97, 11, x_78); -lean_ctor_set_uint8(x_97, sizeof(void*)*12, x_77); -lean_ctor_set_uint8(x_97, sizeof(void*)*12 + 1, x_96); -x_98 = l_Lean_Elab_Term_withDeclName___rarg(x_2, x_94, x_3, x_4, x_5, x_6, x_97, x_15, x_88); -return x_98; } else { -lean_object* x_99; uint8_t x_100; -x_99 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__7___closed__1; -x_100 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_68, x_99); -if (x_100 == 0) -{ -uint8_t x_101; lean_object* x_102; lean_object* x_103; -x_101 = 1; -x_102 = lean_alloc_ctor(0, 12, 2); -lean_ctor_set(x_102, 0, x_66); -lean_ctor_set(x_102, 1, x_67); -lean_ctor_set(x_102, 2, x_68); -lean_ctor_set(x_102, 3, x_69); -lean_ctor_set(x_102, 4, x_70); -lean_ctor_set(x_102, 5, x_80); -lean_ctor_set(x_102, 6, x_72); -lean_ctor_set(x_102, 7, x_73); -lean_ctor_set(x_102, 8, x_74); -lean_ctor_set(x_102, 9, x_75); -lean_ctor_set(x_102, 10, x_76); -lean_ctor_set(x_102, 11, x_78); -lean_ctor_set_uint8(x_102, sizeof(void*)*12, x_77); -lean_ctor_set_uint8(x_102, sizeof(void*)*12 + 1, x_101); -x_103 = l_Lean_Elab_Term_withDeclName___rarg(x_2, x_94, x_3, x_4, x_5, x_6, x_102, x_15, x_88); -return x_103; -} -else -{ -uint8_t x_104; lean_object* x_105; lean_object* x_106; -x_104 = 0; -x_105 = lean_alloc_ctor(0, 12, 2); -lean_ctor_set(x_105, 0, x_66); -lean_ctor_set(x_105, 1, x_67); -lean_ctor_set(x_105, 2, x_68); -lean_ctor_set(x_105, 3, x_69); -lean_ctor_set(x_105, 4, x_70); -lean_ctor_set(x_105, 5, x_80); -lean_ctor_set(x_105, 6, x_72); -lean_ctor_set(x_105, 7, x_73); -lean_ctor_set(x_105, 8, x_74); -lean_ctor_set(x_105, 9, x_75); -lean_ctor_set(x_105, 10, x_76); -lean_ctor_set(x_105, 11, x_78); -lean_ctor_set_uint8(x_105, sizeof(void*)*12, x_77); -lean_ctor_set_uint8(x_105, sizeof(void*)*12 + 1, x_104); -x_106 = l_Lean_Elab_Term_withDeclName___rarg(x_2, x_94, x_3, x_4, x_5, x_6, x_105, x_15, x_88); -return x_106; -} -} +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_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_io_get_num_heartbeats(x_37); +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); } -else -{ -lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; -lean_dec(x_80); -lean_dec(x_78); -lean_dec(x_76); -lean_dec(x_75); -lean_dec(x_74); -lean_dec(x_73); -lean_dec(x_72); -lean_dec(x_70); -lean_dec(x_69); -lean_dec(x_68); -lean_dec(x_67); -lean_dec(x_66); -lean_dec(x_20); +x_42 = lean_nat_sub(x_39, x_18); lean_dec(x_18); -lean_dec(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); -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_107 = lean_ctor_get(x_87, 0); -lean_inc(x_107); -x_108 = lean_ctor_get(x_87, 1); -lean_inc(x_108); -if (lean_is_exclusive(x_87)) { - lean_ctor_release(x_87, 0); - lean_ctor_release(x_87, 1); - x_109 = x_87; +lean_dec(x_39); +x_43 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_43, 0, x_36); +lean_ctor_set(x_43, 1, x_42); +if (lean_is_scalar(x_20)) { + x_44 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_87); - x_109 = lean_box(0); + x_44 = x_20; } -if (lean_is_scalar(x_109)) { - x_110 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_44, 0, x_21); +lean_ctor_set(x_44, 1, x_43); +if (lean_is_scalar(x_41)) { + x_45 = lean_alloc_ctor(0, 2, 0); } else { - x_110 = x_109; + x_45 = x_41; } -lean_ctor_set(x_110, 0, x_107); -lean_ctor_set(x_110, 1, x_108); -return x_110; +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_40); +return x_45; } } } @@ -7174,12 +6509,12 @@ if (lean_obj_tag(x_13) == 0) { lean_object* x_17; lean_object* x_18; x_17 = lean_box(0); -x_18 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__7(x_2, x_6, x_9, x_10, x_11, x_12, x_5, x_8, x_4, x_3, x_1, x_7, x_17, x_14, x_15, x_16); +x_18 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6(x_7, x_4, x_8, x_9, x_10, x_11, x_12, x_2, x_3, x_6, x_1, x_5, x_17, x_14, x_15, x_16); return x_18; } 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; lean_object* x_25; uint64_t x_26; lean_object* x_27; uint8_t x_28; +lean_object* x_19; uint8_t x_20; lean_dec(x_14); lean_dec(x_12); lean_dec(x_11); @@ -7196,11 +6531,11 @@ lean_dec(x_1); x_19 = lean_ctor_get(x_13, 0); lean_inc(x_19); lean_dec(x_13); -x_20 = lean_ctor_get(x_19, 0); -lean_inc(x_20); +x_20 = !lean_is_exclusive(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; uint64_t x_26; lean_object* x_27; uint8_t x_28; x_21 = lean_ctor_get(x_19, 1); -lean_inc(x_21); -lean_dec(x_19); x_22 = lean_ctor_get(x_21, 0); lean_inc(x_22); x_23 = lean_st_ref_set(x_15, x_22, x_16); @@ -7210,7 +6545,6 @@ lean_inc(x_24); lean_dec(x_23); x_25 = lean_ctor_get(x_21, 1); lean_inc(x_25); -lean_dec(x_21); x_26 = lean_uint64_of_nat(x_25); lean_dec(x_25); x_27 = lean_io_add_heartbeats(x_26, x_24); @@ -7220,7 +6554,7 @@ 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_20); +lean_ctor_set(x_27, 0, x_19); return x_27; } else @@ -7230,11 +6564,54 @@ 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_20); +lean_ctor_set(x_31, 0, x_19); 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; uint64_t x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +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_ctor_get(x_33, 0); +lean_inc(x_34); +x_35 = lean_st_ref_set(x_15, x_34, x_16); +lean_dec(x_15); +x_36 = lean_ctor_get(x_35, 1); +lean_inc(x_36); +lean_dec(x_35); +x_37 = lean_ctor_get(x_33, 1); +lean_inc(x_37); +x_38 = lean_uint64_of_nat(x_37); +lean_dec(x_37); +x_39 = lean_io_add_heartbeats(x_38, x_36); +x_40 = lean_ctor_get(x_39, 1); +lean_inc(x_40); +if (lean_is_exclusive(x_39)) { + lean_ctor_release(x_39, 0); + lean_ctor_release(x_39, 1); + x_41 = x_39; +} else { + lean_dec_ref(x_39); + x_41 = lean_box(0); +} +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_32); +lean_ctor_set(x_42, 1, x_33); +if (lean_is_scalar(x_41)) { + x_43 = lean_alloc_ctor(0, 2, 0); +} else { + x_43 = x_41; +} +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_40); +return x_43; +} +} } } LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___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, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { @@ -7244,12 +6621,12 @@ if (lean_obj_tag(x_13) == 0) { lean_object* x_17; lean_object* x_18; x_17 = lean_box(0); -x_18 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__7(x_2, x_6, x_9, x_10, x_11, x_12, x_5, x_8, x_4, x_3, x_1, x_7, x_17, x_14, x_15, x_16); +x_18 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6(x_7, x_4, x_8, x_9, x_10, x_11, x_12, x_2, x_3, x_6, x_1, x_5, x_17, x_14, x_15, x_16); return x_18; } 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; lean_object* x_25; uint64_t x_26; lean_object* x_27; uint8_t x_28; +lean_object* x_19; uint8_t x_20; lean_dec(x_14); lean_dec(x_12); lean_dec(x_11); @@ -7266,11 +6643,11 @@ lean_dec(x_1); x_19 = lean_ctor_get(x_13, 0); lean_inc(x_19); lean_dec(x_13); -x_20 = lean_ctor_get(x_19, 0); -lean_inc(x_20); +x_20 = !lean_is_exclusive(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; uint64_t x_26; lean_object* x_27; uint8_t x_28; x_21 = lean_ctor_get(x_19, 1); -lean_inc(x_21); -lean_dec(x_19); x_22 = lean_ctor_get(x_21, 0); lean_inc(x_22); x_23 = lean_st_ref_set(x_15, x_22, x_16); @@ -7280,7 +6657,6 @@ lean_inc(x_24); lean_dec(x_23); x_25 = lean_ctor_get(x_21, 1); lean_inc(x_25); -lean_dec(x_21); x_26 = lean_uint64_of_nat(x_25); lean_dec(x_25); x_27 = lean_io_add_heartbeats(x_26, x_24); @@ -7290,7 +6666,7 @@ 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_20); +lean_ctor_set(x_27, 0, x_19); return x_27; } else @@ -7300,11 +6676,54 @@ 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_20); +lean_ctor_set(x_31, 0, x_19); 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; uint64_t x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +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_ctor_get(x_33, 0); +lean_inc(x_34); +x_35 = lean_st_ref_set(x_15, x_34, x_16); +lean_dec(x_15); +x_36 = lean_ctor_get(x_35, 1); +lean_inc(x_36); +lean_dec(x_35); +x_37 = lean_ctor_get(x_33, 1); +lean_inc(x_37); +x_38 = lean_uint64_of_nat(x_37); +lean_dec(x_37); +x_39 = lean_io_add_heartbeats(x_38, x_36); +x_40 = lean_ctor_get(x_39, 1); +lean_inc(x_40); +if (lean_is_exclusive(x_39)) { + lean_ctor_release(x_39, 0); + lean_ctor_release(x_39, 1); + x_41 = x_39; +} else { + lean_dec_ref(x_39); + x_41 = lean_box(0); +} +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_32); +lean_ctor_set(x_42, 1, x_33); +if (lean_is_scalar(x_41)) { + x_43 = lean_alloc_ctor(0, 2, 0); +} else { + x_43 = x_41; +} +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_40); +return x_43; +} +} } } LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__7___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) { @@ -7314,259 +6733,447 @@ if (lean_obj_tag(x_1) == 0) { lean_object* x_18; lean_object* x_19; x_18 = lean_box(0); +lean_inc(x_14); x_19 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_18, x_15, x_16, x_17); if (lean_obj_tag(x_19) == 0) { -uint8_t x_20; -x_20 = !lean_is_exclusive(x_19); -if (x_20 == 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) { -return x_19; +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_20, 1); +x_24 = lean_st_ref_get(x_14, x_21); +lean_dec(x_14); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; +x_26 = lean_ctor_get(x_24, 0); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_23); +lean_ctor_set(x_27, 1, x_26); +lean_ctor_set(x_20, 1, x_27); +lean_ctor_set(x_24, 0, x_20); +return x_24; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_19, 0); -x_22 = lean_ctor_get(x_19, 1); -lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_19); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_21); -lean_ctor_set(x_23, 1, x_22); -return x_23; +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_28 = lean_ctor_get(x_24, 0); +x_29 = lean_ctor_get(x_24, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_24); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_23); +lean_ctor_set(x_30, 1, x_28); +lean_ctor_set(x_20, 1, x_30); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_20); +lean_ctor_set(x_31, 1, x_29); +return x_31; } } else { -uint8_t x_24; -x_24 = !lean_is_exclusive(x_19); -if (x_24 == 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; +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_st_ref_get(x_14, x_21); +lean_dec(x_14); +x_35 = lean_ctor_get(x_34, 0); +lean_inc(x_35); +x_36 = lean_ctor_get(x_34, 1); +lean_inc(x_36); +if (lean_is_exclusive(x_34)) { + lean_ctor_release(x_34, 0); + lean_ctor_release(x_34, 1); + x_37 = x_34; +} else { + lean_dec_ref(x_34); + x_37 = lean_box(0); +} +x_38 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_38, 0, x_33); +lean_ctor_set(x_38, 1, x_35); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_32); +lean_ctor_set(x_39, 1, x_38); +if (lean_is_scalar(x_37)) { + x_40 = lean_alloc_ctor(0, 2, 0); +} else { + x_40 = x_37; +} +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_36); +return x_40; +} +} +else +{ +uint8_t x_41; +lean_dec(x_14); +x_41 = !lean_is_exclusive(x_19); +if (x_41 == 0) { return x_19; } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_19, 0); -x_26 = lean_ctor_get(x_19, 1); -lean_inc(x_26); -lean_inc(x_25); +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_19, 0); +x_43 = lean_ctor_get(x_19, 1); +lean_inc(x_43); +lean_inc(x_42); lean_dec(x_19); -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; +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_28; -x_28 = !lean_is_exclusive(x_1); -if (x_28 == 0) -{ -lean_object* x_29; uint8_t x_30; -x_29 = lean_ctor_get(x_1, 0); -x_30 = !lean_is_exclusive(x_29); -if (x_30 == 0) +uint8_t x_45; +x_45 = !lean_is_exclusive(x_1); +if (x_45 == 0) { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_29, 1); -x_32 = lean_ctor_get(x_31, 0); -lean_inc(x_32); -lean_dec(x_31); -lean_ctor_set(x_29, 1, x_32); -x_33 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__9(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_1, x_15, x_16, x_17); -if (lean_obj_tag(x_33) == 0) +lean_object* x_46; uint8_t x_47; +x_46 = lean_ctor_get(x_1, 0); +x_47 = !lean_is_exclusive(x_46); +if (x_47 == 0) { -uint8_t x_34; -x_34 = !lean_is_exclusive(x_33); -if (x_34 == 0) +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_46, 1); +x_49 = lean_ctor_get(x_48, 0); +lean_inc(x_49); +lean_dec(x_48); +lean_ctor_set(x_46, 1, x_49); +lean_inc(x_14); +x_50 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__9(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_1, x_15, x_16, x_17); +if (lean_obj_tag(x_50) == 0) { -return x_33; +lean_object* x_51; lean_object* x_52; uint8_t 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); +x_53 = !lean_is_exclusive(x_51); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; uint8_t x_56; +x_54 = lean_ctor_get(x_51, 1); +x_55 = lean_st_ref_get(x_14, x_52); +lean_dec(x_14); +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); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_54); +lean_ctor_set(x_58, 1, x_57); +lean_ctor_set(x_51, 1, x_58); +lean_ctor_set(x_55, 0, x_51); +return x_55; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_33, 0); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_33); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -return x_37; +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_59 = lean_ctor_get(x_55, 0); +x_60 = lean_ctor_get(x_55, 1); +lean_inc(x_60); +lean_inc(x_59); +lean_dec(x_55); +x_61 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_61, 0, x_54); +lean_ctor_set(x_61, 1, x_59); +lean_ctor_set(x_51, 1, x_61); +x_62 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_62, 0, x_51); +lean_ctor_set(x_62, 1, x_60); +return x_62; } } else { -uint8_t x_38; -x_38 = !lean_is_exclusive(x_33); -if (x_38 == 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 = lean_ctor_get(x_51, 0); +x_64 = lean_ctor_get(x_51, 1); +lean_inc(x_64); +lean_inc(x_63); +lean_dec(x_51); +x_65 = lean_st_ref_get(x_14, x_52); +lean_dec(x_14); +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); +} +x_69 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_69, 0, x_64); +lean_ctor_set(x_69, 1, x_66); +x_70 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_70, 0, x_63); +lean_ctor_set(x_70, 1, x_69); +if (lean_is_scalar(x_68)) { + x_71 = lean_alloc_ctor(0, 2, 0); +} else { + x_71 = x_68; +} +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_71, 1, x_67); +return x_71; +} +} +else { -return x_33; +uint8_t x_72; +lean_dec(x_14); +x_72 = !lean_is_exclusive(x_50); +if (x_72 == 0) +{ +return x_50; } 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; +lean_object* x_73; lean_object* x_74; lean_object* x_75; +x_73 = lean_ctor_get(x_50, 0); +x_74 = lean_ctor_get(x_50, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_50); +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 { -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_29, 0); -x_43 = lean_ctor_get(x_29, 1); -lean_inc(x_43); -lean_inc(x_42); -lean_dec(x_29); -x_44 = lean_ctor_get(x_43, 0); -lean_inc(x_44); -lean_dec(x_43); -x_45 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_45, 0, x_42); -lean_ctor_set(x_45, 1, x_44); -lean_ctor_set(x_1, 0, x_45); -x_46 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__9(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_1, x_15, x_16, x_17); -if (lean_obj_tag(x_46) == 0) +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_76 = lean_ctor_get(x_46, 0); +x_77 = lean_ctor_get(x_46, 1); +lean_inc(x_77); +lean_inc(x_76); +lean_dec(x_46); +x_78 = lean_ctor_get(x_77, 0); +lean_inc(x_78); +lean_dec(x_77); +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_76); +lean_ctor_set(x_79, 1, x_78); +lean_ctor_set(x_1, 0, x_79); +lean_inc(x_14); +x_80 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__9(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_1, x_15, x_16, x_17); +if (lean_obj_tag(x_80) == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_47 = lean_ctor_get(x_46, 0); -lean_inc(x_47); -x_48 = lean_ctor_get(x_46, 1); -lean_inc(x_48); -if (lean_is_exclusive(x_46)) { - lean_ctor_release(x_46, 0); - lean_ctor_release(x_46, 1); - x_49 = x_46; +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; +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_83 = lean_ctor_get(x_81, 0); +lean_inc(x_83); +x_84 = lean_ctor_get(x_81, 1); +lean_inc(x_84); +if (lean_is_exclusive(x_81)) { + lean_ctor_release(x_81, 0); + lean_ctor_release(x_81, 1); + x_85 = x_81; } else { - lean_dec_ref(x_46); - x_49 = lean_box(0); + lean_dec_ref(x_81); + x_85 = lean_box(0); } -if (lean_is_scalar(x_49)) { - x_50 = lean_alloc_ctor(0, 2, 0); +x_86 = lean_st_ref_get(x_14, x_82); +lean_dec(x_14); +x_87 = lean_ctor_get(x_86, 0); +lean_inc(x_87); +x_88 = lean_ctor_get(x_86, 1); +lean_inc(x_88); +if (lean_is_exclusive(x_86)) { + lean_ctor_release(x_86, 0); + lean_ctor_release(x_86, 1); + x_89 = x_86; } else { - x_50 = x_49; + lean_dec_ref(x_86); + x_89 = lean_box(0); } -lean_ctor_set(x_50, 0, x_47); -lean_ctor_set(x_50, 1, x_48); -return x_50; +x_90 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_90, 0, x_84); +lean_ctor_set(x_90, 1, x_87); +if (lean_is_scalar(x_85)) { + x_91 = lean_alloc_ctor(0, 2, 0); +} else { + x_91 = x_85; +} +lean_ctor_set(x_91, 0, x_83); +lean_ctor_set(x_91, 1, x_90); +if (lean_is_scalar(x_89)) { + x_92 = lean_alloc_ctor(0, 2, 0); +} else { + x_92 = x_89; +} +lean_ctor_set(x_92, 0, x_91); +lean_ctor_set(x_92, 1, x_88); +return x_92; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_51 = lean_ctor_get(x_46, 0); -lean_inc(x_51); -x_52 = lean_ctor_get(x_46, 1); -lean_inc(x_52); -if (lean_is_exclusive(x_46)) { - lean_ctor_release(x_46, 0); - lean_ctor_release(x_46, 1); - x_53 = x_46; +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_dec(x_14); +x_93 = lean_ctor_get(x_80, 0); +lean_inc(x_93); +x_94 = lean_ctor_get(x_80, 1); +lean_inc(x_94); +if (lean_is_exclusive(x_80)) { + lean_ctor_release(x_80, 0); + lean_ctor_release(x_80, 1); + x_95 = x_80; } else { - lean_dec_ref(x_46); - x_53 = lean_box(0); + lean_dec_ref(x_80); + x_95 = lean_box(0); } -if (lean_is_scalar(x_53)) { - x_54 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_95)) { + x_96 = lean_alloc_ctor(1, 2, 0); } else { - x_54 = x_53; + x_96 = x_95; } -lean_ctor_set(x_54, 0, x_51); -lean_ctor_set(x_54, 1, x_52); -return x_54; +lean_ctor_set(x_96, 0, x_93); +lean_ctor_set(x_96, 1, x_94); +return x_96; } } } 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; -x_55 = lean_ctor_get(x_1, 0); -lean_inc(x_55); +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_97 = lean_ctor_get(x_1, 0); +lean_inc(x_97); lean_dec(x_1); -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; +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_55); - x_58 = lean_box(0); + lean_dec_ref(x_97); + x_100 = lean_box(0); } -x_59 = lean_ctor_get(x_57, 0); -lean_inc(x_59); -lean_dec(x_57); -if (lean_is_scalar(x_58)) { - x_60 = lean_alloc_ctor(0, 2, 0); +x_101 = lean_ctor_get(x_99, 0); +lean_inc(x_101); +lean_dec(x_99); +if (lean_is_scalar(x_100)) { + x_102 = lean_alloc_ctor(0, 2, 0); } else { - x_60 = x_58; + x_102 = x_100; } -lean_ctor_set(x_60, 0, x_56); -lean_ctor_set(x_60, 1, x_59); -x_61 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_61, 0, x_60); -x_62 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__9(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_61, x_15, x_16, x_17); -if (lean_obj_tag(x_62) == 0) +lean_ctor_set(x_102, 0, x_98); +lean_ctor_set(x_102, 1, x_101); +x_103 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_103, 0, x_102); +lean_inc(x_14); +x_104 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__9(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_103, x_15, x_16, x_17); +if (lean_obj_tag(x_104) == 0) { -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_63 = lean_ctor_get(x_62, 0); -lean_inc(x_63); -x_64 = lean_ctor_get(x_62, 1); -lean_inc(x_64); -if (lean_is_exclusive(x_62)) { - lean_ctor_release(x_62, 0); - lean_ctor_release(x_62, 1); - x_65 = x_62; +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; +x_105 = lean_ctor_get(x_104, 0); +lean_inc(x_105); +x_106 = lean_ctor_get(x_104, 1); +lean_inc(x_106); +lean_dec(x_104); +x_107 = lean_ctor_get(x_105, 0); +lean_inc(x_107); +x_108 = lean_ctor_get(x_105, 1); +lean_inc(x_108); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + x_109 = x_105; } else { - lean_dec_ref(x_62); - x_65 = lean_box(0); + lean_dec_ref(x_105); + x_109 = lean_box(0); } -if (lean_is_scalar(x_65)) { - x_66 = lean_alloc_ctor(0, 2, 0); +x_110 = lean_st_ref_get(x_14, x_106); +lean_dec(x_14); +x_111 = lean_ctor_get(x_110, 0); +lean_inc(x_111); +x_112 = lean_ctor_get(x_110, 1); +lean_inc(x_112); +if (lean_is_exclusive(x_110)) { + lean_ctor_release(x_110, 0); + lean_ctor_release(x_110, 1); + x_113 = x_110; } else { - x_66 = x_65; + lean_dec_ref(x_110); + x_113 = lean_box(0); } -lean_ctor_set(x_66, 0, x_63); -lean_ctor_set(x_66, 1, x_64); -return x_66; +x_114 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_114, 0, x_108); +lean_ctor_set(x_114, 1, x_111); +if (lean_is_scalar(x_109)) { + x_115 = lean_alloc_ctor(0, 2, 0); +} else { + x_115 = x_109; +} +lean_ctor_set(x_115, 0, x_107); +lean_ctor_set(x_115, 1, x_114); +if (lean_is_scalar(x_113)) { + x_116 = lean_alloc_ctor(0, 2, 0); +} else { + x_116 = x_113; +} +lean_ctor_set(x_116, 0, x_115); +lean_ctor_set(x_116, 1, x_112); +return x_116; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_67 = lean_ctor_get(x_62, 0); -lean_inc(x_67); -x_68 = lean_ctor_get(x_62, 1); -lean_inc(x_68); -if (lean_is_exclusive(x_62)) { - lean_ctor_release(x_62, 0); - lean_ctor_release(x_62, 1); - x_69 = x_62; +lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +lean_dec(x_14); +x_117 = lean_ctor_get(x_104, 0); +lean_inc(x_117); +x_118 = lean_ctor_get(x_104, 1); +lean_inc(x_118); +if (lean_is_exclusive(x_104)) { + lean_ctor_release(x_104, 0); + lean_ctor_release(x_104, 1); + x_119 = x_104; } else { - lean_dec_ref(x_62); - x_69 = lean_box(0); + lean_dec_ref(x_104); + x_119 = lean_box(0); } -if (lean_is_scalar(x_69)) { - x_70 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_119)) { + x_120 = lean_alloc_ctor(1, 2, 0); } else { - x_70 = x_69; + x_120 = x_119; } -lean_ctor_set(x_70, 0, x_67); -lean_ctor_set(x_70, 1, x_68); -return x_70; +lean_ctor_set(x_120, 0, x_117); +lean_ctor_set(x_120, 1, x_118); +return x_120; } } } @@ -7612,12 +7219,12 @@ if (lean_obj_tag(x_13) == 0) { lean_object* x_17; lean_object* x_18; x_17 = lean_box(0); -x_18 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__7(x_2, x_6, x_9, x_10, x_11, x_12, x_5, x_8, x_4, x_3, x_1, x_7, x_17, x_14, x_15, x_16); +x_18 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6(x_7, x_4, x_8, x_9, x_10, x_11, x_12, x_2, x_3, x_6, x_1, x_5, x_17, x_14, x_15, x_16); return x_18; } 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; lean_object* x_25; uint64_t x_26; lean_object* x_27; uint8_t x_28; +lean_object* x_19; uint8_t x_20; lean_dec(x_14); lean_dec(x_12); lean_dec(x_11); @@ -7634,11 +7241,11 @@ lean_dec(x_1); x_19 = lean_ctor_get(x_13, 0); lean_inc(x_19); lean_dec(x_13); -x_20 = lean_ctor_get(x_19, 0); -lean_inc(x_20); +x_20 = !lean_is_exclusive(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; uint64_t x_26; lean_object* x_27; uint8_t x_28; x_21 = lean_ctor_get(x_19, 1); -lean_inc(x_21); -lean_dec(x_19); x_22 = lean_ctor_get(x_21, 0); lean_inc(x_22); x_23 = lean_st_ref_set(x_15, x_22, x_16); @@ -7648,7 +7255,6 @@ lean_inc(x_24); lean_dec(x_23); x_25 = lean_ctor_get(x_21, 1); lean_inc(x_25); -lean_dec(x_21); x_26 = lean_uint64_of_nat(x_25); lean_dec(x_25); x_27 = lean_io_add_heartbeats(x_26, x_24); @@ -7658,7 +7264,7 @@ 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_20); +lean_ctor_set(x_27, 0, x_19); return x_27; } else @@ -7668,11 +7274,54 @@ 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_20); +lean_ctor_set(x_31, 0, x_19); 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; uint64_t x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +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_ctor_get(x_33, 0); +lean_inc(x_34); +x_35 = lean_st_ref_set(x_15, x_34, x_16); +lean_dec(x_15); +x_36 = lean_ctor_get(x_35, 1); +lean_inc(x_36); +lean_dec(x_35); +x_37 = lean_ctor_get(x_33, 1); +lean_inc(x_37); +x_38 = lean_uint64_of_nat(x_37); +lean_dec(x_37); +x_39 = lean_io_add_heartbeats(x_38, x_36); +x_40 = lean_ctor_get(x_39, 1); +lean_inc(x_40); +if (lean_is_exclusive(x_39)) { + lean_ctor_release(x_39, 0); + lean_ctor_release(x_39, 1); + x_41 = x_39; +} else { + lean_dec_ref(x_39); + x_41 = lean_box(0); +} +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_32); +lean_ctor_set(x_42, 1, x_33); +if (lean_is_scalar(x_41)) { + x_43 = lean_alloc_ctor(0, 2, 0); +} else { + x_43 = x_41; +} +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_40); +return x_43; +} +} } } LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___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, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { @@ -7682,12 +7331,12 @@ if (lean_obj_tag(x_13) == 0) { lean_object* x_17; lean_object* x_18; x_17 = lean_box(0); -x_18 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__7(x_2, x_6, x_9, x_10, x_11, x_12, x_5, x_8, x_4, x_3, x_1, x_7, x_17, x_14, x_15, x_16); +x_18 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6(x_7, x_4, x_8, x_9, x_10, x_11, x_12, x_2, x_3, x_6, x_1, x_5, x_17, x_14, x_15, x_16); return x_18; } 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; lean_object* x_25; uint64_t x_26; lean_object* x_27; uint8_t x_28; +lean_object* x_19; uint8_t x_20; lean_dec(x_14); lean_dec(x_12); lean_dec(x_11); @@ -7704,11 +7353,11 @@ lean_dec(x_1); x_19 = lean_ctor_get(x_13, 0); lean_inc(x_19); lean_dec(x_13); -x_20 = lean_ctor_get(x_19, 0); -lean_inc(x_20); +x_20 = !lean_is_exclusive(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; uint64_t x_26; lean_object* x_27; uint8_t x_28; x_21 = lean_ctor_get(x_19, 1); -lean_inc(x_21); -lean_dec(x_19); x_22 = lean_ctor_get(x_21, 0); lean_inc(x_22); x_23 = lean_st_ref_set(x_15, x_22, x_16); @@ -7718,7 +7367,6 @@ lean_inc(x_24); lean_dec(x_23); x_25 = lean_ctor_get(x_21, 1); lean_inc(x_25); -lean_dec(x_21); x_26 = lean_uint64_of_nat(x_25); lean_dec(x_25); x_27 = lean_io_add_heartbeats(x_26, x_24); @@ -7728,7 +7376,7 @@ 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_20); +lean_ctor_set(x_27, 0, x_19); return x_27; } else @@ -7738,11 +7386,54 @@ 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_20); +lean_ctor_set(x_31, 0, x_19); 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; uint64_t x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +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_ctor_get(x_33, 0); +lean_inc(x_34); +x_35 = lean_st_ref_set(x_15, x_34, x_16); +lean_dec(x_15); +x_36 = lean_ctor_get(x_35, 1); +lean_inc(x_36); +lean_dec(x_35); +x_37 = lean_ctor_get(x_33, 1); +lean_inc(x_37); +x_38 = lean_uint64_of_nat(x_37); +lean_dec(x_37); +x_39 = lean_io_add_heartbeats(x_38, x_36); +x_40 = lean_ctor_get(x_39, 1); +lean_inc(x_40); +if (lean_is_exclusive(x_39)) { + lean_ctor_release(x_39, 0); + lean_ctor_release(x_39, 1); + x_41 = x_39; +} else { + lean_dec_ref(x_39); + x_41 = lean_box(0); +} +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_32); +lean_ctor_set(x_42, 1, x_33); +if (lean_is_scalar(x_41)) { + x_43 = lean_alloc_ctor(0, 2, 0); +} else { + x_43 = x_41; +} +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_40); +return x_43; +} +} } } LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___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, 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) { @@ -7752,259 +7443,447 @@ if (lean_obj_tag(x_1) == 0) { lean_object* x_18; lean_object* x_19; x_18 = lean_box(0); +lean_inc(x_14); x_19 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_18, x_15, x_16, x_17); if (lean_obj_tag(x_19) == 0) { -uint8_t x_20; -x_20 = !lean_is_exclusive(x_19); -if (x_20 == 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) { -return x_19; +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_20, 1); +x_24 = lean_st_ref_get(x_14, x_21); +lean_dec(x_14); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; +x_26 = lean_ctor_get(x_24, 0); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_23); +lean_ctor_set(x_27, 1, x_26); +lean_ctor_set(x_20, 1, x_27); +lean_ctor_set(x_24, 0, x_20); +return x_24; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_19, 0); -x_22 = lean_ctor_get(x_19, 1); -lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_19); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_21); -lean_ctor_set(x_23, 1, x_22); -return x_23; +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_28 = lean_ctor_get(x_24, 0); +x_29 = lean_ctor_get(x_24, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_24); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_23); +lean_ctor_set(x_30, 1, x_28); +lean_ctor_set(x_20, 1, x_30); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_20); +lean_ctor_set(x_31, 1, x_29); +return x_31; } } else { -uint8_t x_24; -x_24 = !lean_is_exclusive(x_19); -if (x_24 == 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; +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_st_ref_get(x_14, x_21); +lean_dec(x_14); +x_35 = lean_ctor_get(x_34, 0); +lean_inc(x_35); +x_36 = lean_ctor_get(x_34, 1); +lean_inc(x_36); +if (lean_is_exclusive(x_34)) { + lean_ctor_release(x_34, 0); + lean_ctor_release(x_34, 1); + x_37 = x_34; +} else { + lean_dec_ref(x_34); + x_37 = lean_box(0); +} +x_38 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_38, 0, x_33); +lean_ctor_set(x_38, 1, x_35); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_32); +lean_ctor_set(x_39, 1, x_38); +if (lean_is_scalar(x_37)) { + x_40 = lean_alloc_ctor(0, 2, 0); +} else { + x_40 = x_37; +} +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_36); +return x_40; +} +} +else +{ +uint8_t x_41; +lean_dec(x_14); +x_41 = !lean_is_exclusive(x_19); +if (x_41 == 0) { return x_19; } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_19, 0); -x_26 = lean_ctor_get(x_19, 1); -lean_inc(x_26); -lean_inc(x_25); +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_19, 0); +x_43 = lean_ctor_get(x_19, 1); +lean_inc(x_43); +lean_inc(x_42); lean_dec(x_19); -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; +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_28; -x_28 = !lean_is_exclusive(x_1); -if (x_28 == 0) +uint8_t x_45; +x_45 = !lean_is_exclusive(x_1); +if (x_45 == 0) { -lean_object* x_29; uint8_t x_30; -x_29 = lean_ctor_get(x_1, 0); -x_30 = !lean_is_exclusive(x_29); -if (x_30 == 0) +lean_object* x_46; uint8_t x_47; +x_46 = lean_ctor_get(x_1, 0); +x_47 = !lean_is_exclusive(x_46); +if (x_47 == 0) { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_29, 1); -x_32 = lean_ctor_get(x_31, 0); -lean_inc(x_32); -lean_dec(x_31); -lean_ctor_set(x_29, 1, x_32); -x_33 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_1, x_15, x_16, x_17); -if (lean_obj_tag(x_33) == 0) +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_46, 1); +x_49 = lean_ctor_get(x_48, 0); +lean_inc(x_49); +lean_dec(x_48); +lean_ctor_set(x_46, 1, x_49); +lean_inc(x_14); +x_50 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_1, x_15, x_16, x_17); +if (lean_obj_tag(x_50) == 0) { -uint8_t x_34; -x_34 = !lean_is_exclusive(x_33); -if (x_34 == 0) +lean_object* x_51; lean_object* x_52; uint8_t 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); +x_53 = !lean_is_exclusive(x_51); +if (x_53 == 0) { -return x_33; +lean_object* x_54; lean_object* x_55; uint8_t x_56; +x_54 = lean_ctor_get(x_51, 1); +x_55 = lean_st_ref_get(x_14, x_52); +lean_dec(x_14); +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); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_54); +lean_ctor_set(x_58, 1, x_57); +lean_ctor_set(x_51, 1, x_58); +lean_ctor_set(x_55, 0, x_51); +return x_55; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_33, 0); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_33); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -return x_37; +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_59 = lean_ctor_get(x_55, 0); +x_60 = lean_ctor_get(x_55, 1); +lean_inc(x_60); +lean_inc(x_59); +lean_dec(x_55); +x_61 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_61, 0, x_54); +lean_ctor_set(x_61, 1, x_59); +lean_ctor_set(x_51, 1, x_61); +x_62 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_62, 0, x_51); +lean_ctor_set(x_62, 1, x_60); +return x_62; } } else { -uint8_t x_38; -x_38 = !lean_is_exclusive(x_33); -if (x_38 == 0) -{ -return x_33; +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 = lean_ctor_get(x_51, 0); +x_64 = lean_ctor_get(x_51, 1); +lean_inc(x_64); +lean_inc(x_63); +lean_dec(x_51); +x_65 = lean_st_ref_get(x_14, x_52); +lean_dec(x_14); +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); } -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; +x_69 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_69, 0, x_64); +lean_ctor_set(x_69, 1, x_66); +x_70 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_70, 0, x_63); +lean_ctor_set(x_70, 1, x_69); +if (lean_is_scalar(x_68)) { + x_71 = lean_alloc_ctor(0, 2, 0); +} else { + x_71 = x_68; } +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_71, 1, x_67); +return x_71; } } else { -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_29, 0); -x_43 = lean_ctor_get(x_29, 1); -lean_inc(x_43); -lean_inc(x_42); -lean_dec(x_29); -x_44 = lean_ctor_get(x_43, 0); -lean_inc(x_44); -lean_dec(x_43); -x_45 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_45, 0, x_42); -lean_ctor_set(x_45, 1, x_44); -lean_ctor_set(x_1, 0, x_45); -x_46 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_1, x_15, x_16, x_17); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_47 = lean_ctor_get(x_46, 0); -lean_inc(x_47); -x_48 = lean_ctor_get(x_46, 1); -lean_inc(x_48); -if (lean_is_exclusive(x_46)) { - lean_ctor_release(x_46, 0); - lean_ctor_release(x_46, 1); - x_49 = x_46; +uint8_t x_72; +lean_dec(x_14); +x_72 = !lean_is_exclusive(x_50); +if (x_72 == 0) +{ +return x_50; +} +else +{ +lean_object* x_73; lean_object* x_74; lean_object* x_75; +x_73 = lean_ctor_get(x_50, 0); +x_74 = lean_ctor_get(x_50, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_50); +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 +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_76 = lean_ctor_get(x_46, 0); +x_77 = lean_ctor_get(x_46, 1); +lean_inc(x_77); +lean_inc(x_76); +lean_dec(x_46); +x_78 = lean_ctor_get(x_77, 0); +lean_inc(x_78); +lean_dec(x_77); +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_76); +lean_ctor_set(x_79, 1, x_78); +lean_ctor_set(x_1, 0, x_79); +lean_inc(x_14); +x_80 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_1, x_15, x_16, x_17); +if (lean_obj_tag(x_80) == 0) +{ +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; +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_83 = lean_ctor_get(x_81, 0); +lean_inc(x_83); +x_84 = lean_ctor_get(x_81, 1); +lean_inc(x_84); +if (lean_is_exclusive(x_81)) { + lean_ctor_release(x_81, 0); + lean_ctor_release(x_81, 1); + x_85 = x_81; } else { - lean_dec_ref(x_46); - x_49 = lean_box(0); + lean_dec_ref(x_81); + x_85 = lean_box(0); } -if (lean_is_scalar(x_49)) { - x_50 = lean_alloc_ctor(0, 2, 0); +x_86 = lean_st_ref_get(x_14, x_82); +lean_dec(x_14); +x_87 = lean_ctor_get(x_86, 0); +lean_inc(x_87); +x_88 = lean_ctor_get(x_86, 1); +lean_inc(x_88); +if (lean_is_exclusive(x_86)) { + lean_ctor_release(x_86, 0); + lean_ctor_release(x_86, 1); + x_89 = x_86; } else { - x_50 = x_49; + lean_dec_ref(x_86); + x_89 = lean_box(0); } -lean_ctor_set(x_50, 0, x_47); -lean_ctor_set(x_50, 1, x_48); -return x_50; +x_90 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_90, 0, x_84); +lean_ctor_set(x_90, 1, x_87); +if (lean_is_scalar(x_85)) { + x_91 = lean_alloc_ctor(0, 2, 0); +} else { + x_91 = x_85; +} +lean_ctor_set(x_91, 0, x_83); +lean_ctor_set(x_91, 1, x_90); +if (lean_is_scalar(x_89)) { + x_92 = lean_alloc_ctor(0, 2, 0); +} else { + x_92 = x_89; +} +lean_ctor_set(x_92, 0, x_91); +lean_ctor_set(x_92, 1, x_88); +return x_92; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_51 = lean_ctor_get(x_46, 0); -lean_inc(x_51); -x_52 = lean_ctor_get(x_46, 1); -lean_inc(x_52); -if (lean_is_exclusive(x_46)) { - lean_ctor_release(x_46, 0); - lean_ctor_release(x_46, 1); - x_53 = x_46; +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_dec(x_14); +x_93 = lean_ctor_get(x_80, 0); +lean_inc(x_93); +x_94 = lean_ctor_get(x_80, 1); +lean_inc(x_94); +if (lean_is_exclusive(x_80)) { + lean_ctor_release(x_80, 0); + lean_ctor_release(x_80, 1); + x_95 = x_80; } else { - lean_dec_ref(x_46); - x_53 = lean_box(0); + lean_dec_ref(x_80); + x_95 = lean_box(0); } -if (lean_is_scalar(x_53)) { - x_54 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_95)) { + x_96 = lean_alloc_ctor(1, 2, 0); } else { - x_54 = x_53; + x_96 = x_95; } -lean_ctor_set(x_54, 0, x_51); -lean_ctor_set(x_54, 1, x_52); -return x_54; +lean_ctor_set(x_96, 0, x_93); +lean_ctor_set(x_96, 1, x_94); +return x_96; } } } 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; -x_55 = lean_ctor_get(x_1, 0); -lean_inc(x_55); +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_97 = lean_ctor_get(x_1, 0); +lean_inc(x_97); lean_dec(x_1); -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; +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_55); - x_58 = lean_box(0); + lean_dec_ref(x_97); + x_100 = lean_box(0); } -x_59 = lean_ctor_get(x_57, 0); -lean_inc(x_59); -lean_dec(x_57); -if (lean_is_scalar(x_58)) { - x_60 = lean_alloc_ctor(0, 2, 0); +x_101 = lean_ctor_get(x_99, 0); +lean_inc(x_101); +lean_dec(x_99); +if (lean_is_scalar(x_100)) { + x_102 = lean_alloc_ctor(0, 2, 0); } else { - x_60 = x_58; + x_102 = x_100; } -lean_ctor_set(x_60, 0, x_56); -lean_ctor_set(x_60, 1, x_59); -x_61 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_61, 0, x_60); -x_62 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_61, x_15, x_16, x_17); -if (lean_obj_tag(x_62) == 0) +lean_ctor_set(x_102, 0, x_98); +lean_ctor_set(x_102, 1, x_101); +x_103 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_103, 0, x_102); +lean_inc(x_14); +x_104 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_13, x_14, x_103, x_15, x_16, x_17); +if (lean_obj_tag(x_104) == 0) { -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_63 = lean_ctor_get(x_62, 0); -lean_inc(x_63); -x_64 = lean_ctor_get(x_62, 1); -lean_inc(x_64); -if (lean_is_exclusive(x_62)) { - lean_ctor_release(x_62, 0); - lean_ctor_release(x_62, 1); - x_65 = x_62; +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; +x_105 = lean_ctor_get(x_104, 0); +lean_inc(x_105); +x_106 = lean_ctor_get(x_104, 1); +lean_inc(x_106); +lean_dec(x_104); +x_107 = lean_ctor_get(x_105, 0); +lean_inc(x_107); +x_108 = lean_ctor_get(x_105, 1); +lean_inc(x_108); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + x_109 = x_105; } else { - lean_dec_ref(x_62); - x_65 = lean_box(0); + lean_dec_ref(x_105); + x_109 = lean_box(0); } -if (lean_is_scalar(x_65)) { - x_66 = lean_alloc_ctor(0, 2, 0); +x_110 = lean_st_ref_get(x_14, x_106); +lean_dec(x_14); +x_111 = lean_ctor_get(x_110, 0); +lean_inc(x_111); +x_112 = lean_ctor_get(x_110, 1); +lean_inc(x_112); +if (lean_is_exclusive(x_110)) { + lean_ctor_release(x_110, 0); + lean_ctor_release(x_110, 1); + x_113 = x_110; } else { - x_66 = x_65; + lean_dec_ref(x_110); + x_113 = lean_box(0); } -lean_ctor_set(x_66, 0, x_63); -lean_ctor_set(x_66, 1, x_64); -return x_66; +x_114 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_114, 0, x_108); +lean_ctor_set(x_114, 1, x_111); +if (lean_is_scalar(x_109)) { + x_115 = lean_alloc_ctor(0, 2, 0); +} else { + x_115 = x_109; +} +lean_ctor_set(x_115, 0, x_107); +lean_ctor_set(x_115, 1, x_114); +if (lean_is_scalar(x_113)) { + x_116 = lean_alloc_ctor(0, 2, 0); +} else { + x_116 = x_113; +} +lean_ctor_set(x_116, 0, x_115); +lean_ctor_set(x_116, 1, x_112); +return x_116; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_67 = lean_ctor_get(x_62, 0); -lean_inc(x_67); -x_68 = lean_ctor_get(x_62, 1); -lean_inc(x_68); -if (lean_is_exclusive(x_62)) { - lean_ctor_release(x_62, 0); - lean_ctor_release(x_62, 1); - x_69 = x_62; +lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +lean_dec(x_14); +x_117 = lean_ctor_get(x_104, 0); +lean_inc(x_117); +x_118 = lean_ctor_get(x_104, 1); +lean_inc(x_118); +if (lean_is_exclusive(x_104)) { + lean_ctor_release(x_104, 0); + lean_ctor_release(x_104, 1); + x_119 = x_104; } else { - lean_dec_ref(x_62); - x_69 = lean_box(0); + lean_dec_ref(x_104); + x_119 = lean_box(0); } -if (lean_is_scalar(x_69)) { - x_70 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_119)) { + x_120 = lean_alloc_ctor(1, 2, 0); } else { - x_70 = x_69; + x_120 = x_119; } -lean_ctor_set(x_70, 0, x_67); -lean_ctor_set(x_70, 1, x_68); -return x_70; +lean_ctor_set(x_120, 0, x_117); +lean_ctor_set(x_120, 1, x_118); +return x_120; } } } @@ -8050,259 +7929,447 @@ if (lean_obj_tag(x_1) == 0) { lean_object* x_18; lean_object* x_19; x_18 = lean_box(0); +lean_inc(x_12); x_19 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__7(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_11, x_12, x_18, x_13, x_14, x_15, x_16, x_17); if (lean_obj_tag(x_19) == 0) { -uint8_t x_20; -x_20 = !lean_is_exclusive(x_19); -if (x_20 == 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) { -return x_19; +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_20, 1); +x_24 = lean_st_ref_get(x_12, x_21); +lean_dec(x_12); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; +x_26 = lean_ctor_get(x_24, 0); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_23); +lean_ctor_set(x_27, 1, x_26); +lean_ctor_set(x_20, 1, x_27); +lean_ctor_set(x_24, 0, x_20); +return x_24; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_19, 0); -x_22 = lean_ctor_get(x_19, 1); -lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_19); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_21); -lean_ctor_set(x_23, 1, x_22); -return x_23; +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_28 = lean_ctor_get(x_24, 0); +x_29 = lean_ctor_get(x_24, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_24); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_23); +lean_ctor_set(x_30, 1, x_28); +lean_ctor_set(x_20, 1, x_30); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_20); +lean_ctor_set(x_31, 1, x_29); +return x_31; } } else { -uint8_t x_24; -x_24 = !lean_is_exclusive(x_19); -if (x_24 == 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; +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_st_ref_get(x_12, x_21); +lean_dec(x_12); +x_35 = lean_ctor_get(x_34, 0); +lean_inc(x_35); +x_36 = lean_ctor_get(x_34, 1); +lean_inc(x_36); +if (lean_is_exclusive(x_34)) { + lean_ctor_release(x_34, 0); + lean_ctor_release(x_34, 1); + x_37 = x_34; +} else { + lean_dec_ref(x_34); + x_37 = lean_box(0); +} +x_38 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_38, 0, x_33); +lean_ctor_set(x_38, 1, x_35); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_32); +lean_ctor_set(x_39, 1, x_38); +if (lean_is_scalar(x_37)) { + x_40 = lean_alloc_ctor(0, 2, 0); +} else { + x_40 = x_37; +} +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_36); +return x_40; +} +} +else +{ +uint8_t x_41; +lean_dec(x_12); +x_41 = !lean_is_exclusive(x_19); +if (x_41 == 0) { return x_19; } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_19, 0); -x_26 = lean_ctor_get(x_19, 1); -lean_inc(x_26); -lean_inc(x_25); +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_19, 0); +x_43 = lean_ctor_get(x_19, 1); +lean_inc(x_43); +lean_inc(x_42); lean_dec(x_19); -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; +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_28; -x_28 = !lean_is_exclusive(x_1); -if (x_28 == 0) +uint8_t x_45; +x_45 = !lean_is_exclusive(x_1); +if (x_45 == 0) { -lean_object* x_29; uint8_t x_30; -x_29 = lean_ctor_get(x_1, 0); -x_30 = !lean_is_exclusive(x_29); -if (x_30 == 0) +lean_object* x_46; uint8_t x_47; +x_46 = lean_ctor_get(x_1, 0); +x_47 = !lean_is_exclusive(x_46); +if (x_47 == 0) { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_29, 1); -x_32 = lean_ctor_get(x_31, 0); -lean_inc(x_32); -lean_dec(x_31); -lean_ctor_set(x_29, 1, x_32); -x_33 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__10(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_11, x_12, x_1, x_13, x_14, x_15, x_16, x_17); -if (lean_obj_tag(x_33) == 0) +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_46, 1); +x_49 = lean_ctor_get(x_48, 0); +lean_inc(x_49); +lean_dec(x_48); +lean_ctor_set(x_46, 1, x_49); +lean_inc(x_12); +x_50 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__10(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_11, x_12, x_1, x_13, x_14, x_15, x_16, x_17); +if (lean_obj_tag(x_50) == 0) { -uint8_t x_34; -x_34 = !lean_is_exclusive(x_33); -if (x_34 == 0) +lean_object* x_51; lean_object* x_52; uint8_t 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); +x_53 = !lean_is_exclusive(x_51); +if (x_53 == 0) { -return x_33; +lean_object* x_54; lean_object* x_55; uint8_t x_56; +x_54 = lean_ctor_get(x_51, 1); +x_55 = lean_st_ref_get(x_12, 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); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_54); +lean_ctor_set(x_58, 1, x_57); +lean_ctor_set(x_51, 1, x_58); +lean_ctor_set(x_55, 0, x_51); +return x_55; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_33, 0); -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_33); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -return x_37; +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_59 = lean_ctor_get(x_55, 0); +x_60 = lean_ctor_get(x_55, 1); +lean_inc(x_60); +lean_inc(x_59); +lean_dec(x_55); +x_61 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_61, 0, x_54); +lean_ctor_set(x_61, 1, x_59); +lean_ctor_set(x_51, 1, x_61); +x_62 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_62, 0, x_51); +lean_ctor_set(x_62, 1, x_60); +return x_62; } } else { -uint8_t x_38; -x_38 = !lean_is_exclusive(x_33); -if (x_38 == 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 = lean_ctor_get(x_51, 0); +x_64 = lean_ctor_get(x_51, 1); +lean_inc(x_64); +lean_inc(x_63); +lean_dec(x_51); +x_65 = lean_st_ref_get(x_12, x_52); +lean_dec(x_12); +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); +} +x_69 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_69, 0, x_64); +lean_ctor_set(x_69, 1, x_66); +x_70 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_70, 0, x_63); +lean_ctor_set(x_70, 1, x_69); +if (lean_is_scalar(x_68)) { + x_71 = lean_alloc_ctor(0, 2, 0); +} else { + x_71 = x_68; +} +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_71, 1, x_67); +return x_71; +} +} +else { -return x_33; +uint8_t x_72; +lean_dec(x_12); +x_72 = !lean_is_exclusive(x_50); +if (x_72 == 0) +{ +return x_50; } 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; +lean_object* x_73; lean_object* x_74; lean_object* x_75; +x_73 = lean_ctor_get(x_50, 0); +x_74 = lean_ctor_get(x_50, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_50); +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 { -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_29, 0); -x_43 = lean_ctor_get(x_29, 1); -lean_inc(x_43); -lean_inc(x_42); -lean_dec(x_29); -x_44 = lean_ctor_get(x_43, 0); -lean_inc(x_44); -lean_dec(x_43); -x_45 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_45, 0, x_42); -lean_ctor_set(x_45, 1, x_44); -lean_ctor_set(x_1, 0, x_45); -x_46 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__10(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_11, x_12, x_1, x_13, x_14, x_15, x_16, x_17); -if (lean_obj_tag(x_46) == 0) +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_76 = lean_ctor_get(x_46, 0); +x_77 = lean_ctor_get(x_46, 1); +lean_inc(x_77); +lean_inc(x_76); +lean_dec(x_46); +x_78 = lean_ctor_get(x_77, 0); +lean_inc(x_78); +lean_dec(x_77); +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_76); +lean_ctor_set(x_79, 1, x_78); +lean_ctor_set(x_1, 0, x_79); +lean_inc(x_12); +x_80 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__10(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_11, x_12, x_1, x_13, x_14, x_15, x_16, x_17); +if (lean_obj_tag(x_80) == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_47 = lean_ctor_get(x_46, 0); -lean_inc(x_47); -x_48 = lean_ctor_get(x_46, 1); -lean_inc(x_48); -if (lean_is_exclusive(x_46)) { - lean_ctor_release(x_46, 0); - lean_ctor_release(x_46, 1); - x_49 = x_46; +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; +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_83 = lean_ctor_get(x_81, 0); +lean_inc(x_83); +x_84 = lean_ctor_get(x_81, 1); +lean_inc(x_84); +if (lean_is_exclusive(x_81)) { + lean_ctor_release(x_81, 0); + lean_ctor_release(x_81, 1); + x_85 = x_81; } else { - lean_dec_ref(x_46); - x_49 = lean_box(0); + lean_dec_ref(x_81); + x_85 = lean_box(0); } -if (lean_is_scalar(x_49)) { - x_50 = lean_alloc_ctor(0, 2, 0); +x_86 = lean_st_ref_get(x_12, x_82); +lean_dec(x_12); +x_87 = lean_ctor_get(x_86, 0); +lean_inc(x_87); +x_88 = lean_ctor_get(x_86, 1); +lean_inc(x_88); +if (lean_is_exclusive(x_86)) { + lean_ctor_release(x_86, 0); + lean_ctor_release(x_86, 1); + x_89 = x_86; } else { - x_50 = x_49; + lean_dec_ref(x_86); + x_89 = lean_box(0); } -lean_ctor_set(x_50, 0, x_47); -lean_ctor_set(x_50, 1, x_48); -return x_50; +x_90 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_90, 0, x_84); +lean_ctor_set(x_90, 1, x_87); +if (lean_is_scalar(x_85)) { + x_91 = lean_alloc_ctor(0, 2, 0); +} else { + x_91 = x_85; +} +lean_ctor_set(x_91, 0, x_83); +lean_ctor_set(x_91, 1, x_90); +if (lean_is_scalar(x_89)) { + x_92 = lean_alloc_ctor(0, 2, 0); +} else { + x_92 = x_89; +} +lean_ctor_set(x_92, 0, x_91); +lean_ctor_set(x_92, 1, x_88); +return x_92; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_51 = lean_ctor_get(x_46, 0); -lean_inc(x_51); -x_52 = lean_ctor_get(x_46, 1); -lean_inc(x_52); -if (lean_is_exclusive(x_46)) { - lean_ctor_release(x_46, 0); - lean_ctor_release(x_46, 1); - x_53 = x_46; +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_dec(x_12); +x_93 = lean_ctor_get(x_80, 0); +lean_inc(x_93); +x_94 = lean_ctor_get(x_80, 1); +lean_inc(x_94); +if (lean_is_exclusive(x_80)) { + lean_ctor_release(x_80, 0); + lean_ctor_release(x_80, 1); + x_95 = x_80; } else { - lean_dec_ref(x_46); - x_53 = lean_box(0); + lean_dec_ref(x_80); + x_95 = lean_box(0); } -if (lean_is_scalar(x_53)) { - x_54 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_95)) { + x_96 = lean_alloc_ctor(1, 2, 0); } else { - x_54 = x_53; + x_96 = x_95; } -lean_ctor_set(x_54, 0, x_51); -lean_ctor_set(x_54, 1, x_52); -return x_54; +lean_ctor_set(x_96, 0, x_93); +lean_ctor_set(x_96, 1, x_94); +return x_96; } } } 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; -x_55 = lean_ctor_get(x_1, 0); -lean_inc(x_55); +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_97 = lean_ctor_get(x_1, 0); +lean_inc(x_97); lean_dec(x_1); -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; +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_55); - x_58 = lean_box(0); + lean_dec_ref(x_97); + x_100 = lean_box(0); } -x_59 = lean_ctor_get(x_57, 0); -lean_inc(x_59); -lean_dec(x_57); -if (lean_is_scalar(x_58)) { - x_60 = lean_alloc_ctor(0, 2, 0); +x_101 = lean_ctor_get(x_99, 0); +lean_inc(x_101); +lean_dec(x_99); +if (lean_is_scalar(x_100)) { + x_102 = lean_alloc_ctor(0, 2, 0); } else { - x_60 = x_58; + x_102 = x_100; } -lean_ctor_set(x_60, 0, x_56); -lean_ctor_set(x_60, 1, x_59); -x_61 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_61, 0, x_60); -x_62 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__10(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_11, x_12, x_61, x_13, x_14, x_15, x_16, x_17); -if (lean_obj_tag(x_62) == 0) +lean_ctor_set(x_102, 0, x_98); +lean_ctor_set(x_102, 1, x_101); +x_103 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_103, 0, x_102); +lean_inc(x_12); +x_104 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__10(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_11, x_12, x_103, x_13, x_14, x_15, x_16, x_17); +if (lean_obj_tag(x_104) == 0) { -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_63 = lean_ctor_get(x_62, 0); -lean_inc(x_63); -x_64 = lean_ctor_get(x_62, 1); -lean_inc(x_64); -if (lean_is_exclusive(x_62)) { - lean_ctor_release(x_62, 0); - lean_ctor_release(x_62, 1); - x_65 = x_62; +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; +x_105 = lean_ctor_get(x_104, 0); +lean_inc(x_105); +x_106 = lean_ctor_get(x_104, 1); +lean_inc(x_106); +lean_dec(x_104); +x_107 = lean_ctor_get(x_105, 0); +lean_inc(x_107); +x_108 = lean_ctor_get(x_105, 1); +lean_inc(x_108); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + x_109 = x_105; } else { - lean_dec_ref(x_62); - x_65 = lean_box(0); + lean_dec_ref(x_105); + x_109 = lean_box(0); } -if (lean_is_scalar(x_65)) { - x_66 = lean_alloc_ctor(0, 2, 0); +x_110 = lean_st_ref_get(x_12, x_106); +lean_dec(x_12); +x_111 = lean_ctor_get(x_110, 0); +lean_inc(x_111); +x_112 = lean_ctor_get(x_110, 1); +lean_inc(x_112); +if (lean_is_exclusive(x_110)) { + lean_ctor_release(x_110, 0); + lean_ctor_release(x_110, 1); + x_113 = x_110; } else { - x_66 = x_65; + lean_dec_ref(x_110); + x_113 = lean_box(0); } -lean_ctor_set(x_66, 0, x_63); -lean_ctor_set(x_66, 1, x_64); -return x_66; +x_114 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_114, 0, x_108); +lean_ctor_set(x_114, 1, x_111); +if (lean_is_scalar(x_109)) { + x_115 = lean_alloc_ctor(0, 2, 0); +} else { + x_115 = x_109; +} +lean_ctor_set(x_115, 0, x_107); +lean_ctor_set(x_115, 1, x_114); +if (lean_is_scalar(x_113)) { + x_116 = lean_alloc_ctor(0, 2, 0); +} else { + x_116 = x_113; +} +lean_ctor_set(x_116, 0, x_115); +lean_ctor_set(x_116, 1, x_112); +return x_116; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_67 = lean_ctor_get(x_62, 0); -lean_inc(x_67); -x_68 = lean_ctor_get(x_62, 1); -lean_inc(x_68); -if (lean_is_exclusive(x_62)) { - lean_ctor_release(x_62, 0); - lean_ctor_release(x_62, 1); - x_69 = x_62; +lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +lean_dec(x_12); +x_117 = lean_ctor_get(x_104, 0); +lean_inc(x_117); +x_118 = lean_ctor_get(x_104, 1); +lean_inc(x_118); +if (lean_is_exclusive(x_104)) { + lean_ctor_release(x_104, 0); + lean_ctor_release(x_104, 1); + x_119 = x_104; } else { - lean_dec_ref(x_62); - x_69 = lean_box(0); + lean_dec_ref(x_104); + x_119 = lean_box(0); } -if (lean_is_scalar(x_69)) { - x_70 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_119)) { + x_120 = lean_alloc_ctor(1, 2, 0); } else { - x_70 = x_69; + x_120 = x_119; } -lean_ctor_set(x_70, 0, x_67); -lean_ctor_set(x_70, 1, x_68); -return x_70; +lean_ctor_set(x_120, 0, x_117); +lean_ctor_set(x_120, 1, x_118); +return x_120; } } } @@ -8341,1057 +8408,1125 @@ return x_25; } } } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___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, uint8_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_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___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_22; -lean_inc(x_11); -x_22 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_11, x_12, x_15, x_16, x_17, x_18, x_19, x_20, 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; 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_24 = lean_ctor_get(x_22, 0); -x_25 = lean_array_push(x_11, x_24); -x_26 = lean_box(x_13); -x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_25); -lean_ctor_set(x_27, 1, x_26); -x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_8); -lean_ctor_set(x_28, 1, x_27); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_9); -lean_ctor_set(x_29, 1, x_28); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_10); -lean_ctor_set(x_30, 1, x_29); -x_31 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_22, 0, x_31); -return x_22; -} -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_22, 0); -x_33 = lean_ctor_get(x_22, 1); -lean_inc(x_33); -lean_inc(x_32); -lean_dec(x_22); -x_34 = lean_array_push(x_11, x_32); -x_35 = lean_box(x_13); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_34); -lean_ctor_set(x_36, 1, x_35); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_8); -lean_ctor_set(x_37, 1, x_36); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_9); -lean_ctor_set(x_38, 1, x_37); -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_10); -lean_ctor_set(x_39, 1, x_38); -x_40 = lean_alloc_ctor(1, 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_33); -return x_41; -} -} -else -{ -uint8_t x_42; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -x_42 = !lean_is_exclusive(x_22); -if (x_42 == 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_array_push(x_5, x_6); +x_16 = lean_box(x_1); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_15); +lean_ctor_set(x_17, 1, x_16); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_2); +lean_ctor_set(x_18, 1, x_17); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_3); +lean_ctor_set(x_19, 1, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_4); +lean_ctor_set(x_20, 1, x_19); +x_21 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_21, 0, 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_14); return x_22; } -else -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_43 = lean_ctor_get(x_22, 0); -x_44 = lean_ctor_get(x_22, 1); -lean_inc(x_44); -lean_inc(x_43); -lean_dec(x_22); -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_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13(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_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___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: { -uint8_t x_13; -x_13 = lean_usize_dec_lt(x_4, x_3); -if (x_13 == 0) +lean_object* x_25; lean_object* x_26; lean_object* x_27; +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_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_12); +lean_inc(x_1); +x_27 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__6(x_2, x_1, x_3, x_4, x_5, x_12, x_25, x_26, x_15, x_18, x_19, x_20, x_21, x_22, x_23, x_24); +if (lean_obj_tag(x_27) == 0) { -lean_object* x_14; +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_1, 7); +lean_inc(x_29); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_14); +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_1); -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_5); -lean_ctor_set(x_14, 1, x_12); -return x_14; +x_30 = lean_ctor_get(x_27, 1); +lean_inc(x_30); +lean_dec(x_27); +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_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_16, x_6, x_7, x_8, 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); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +return x_33; } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_25; lean_object* x_33; lean_object* x_34; uint8_t x_35; -x_15 = lean_array_uget(x_2, x_4); -x_33 = lean_ctor_get(x_5, 1); -lean_inc(x_33); -x_34 = lean_ctor_get(x_33, 1); +lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; +x_34 = lean_ctor_get(x_27, 1); lean_inc(x_34); -x_35 = !lean_is_exclusive(x_34); -if (x_35 == 0) -{ -uint8_t x_36; -x_36 = !lean_is_exclusive(x_5); -if (x_36 == 0) +lean_dec(x_27); +x_35 = lean_ctor_get(x_28, 0); +lean_inc(x_35); +x_36 = lean_ctor_get(x_28, 1); +lean_inc(x_36); +lean_dec(x_28); +x_37 = !lean_is_exclusive(x_29); +if (x_37 == 0) { -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_34, 1); -x_38 = lean_ctor_get(x_34, 0); -x_39 = lean_ctor_get(x_5, 0); -x_40 = lean_ctor_get(x_5, 1); +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; uint8_t x_49; +x_38 = lean_ctor_get(x_29, 0); +x_39 = lean_ctor_get(x_1, 6); +lean_inc(x_39); +lean_dec(x_1); +lean_inc(x_9); +lean_inc(x_39); +x_40 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_39, x_9, x_18, x_19, x_20, x_21, x_22, x_23, x_34); +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_41 = !lean_is_exclusive(x_33); -if (x_41 == 0) -{ -lean_object* x_42; lean_object* x_43; uint8_t x_44; -x_42 = lean_ctor_get(x_33, 0); -x_43 = lean_ctor_get(x_33, 1); -lean_dec(x_43); -x_44 = !lean_is_exclusive(x_37); -if (x_44 == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_45 = lean_ctor_get(x_37, 0); -x_46 = lean_ctor_get(x_37, 1); -x_47 = lean_ctor_get(x_38, 0); +x_43 = lean_ctor_get(x_41, 0); +lean_inc(x_43); +x_44 = lean_ctor_get(x_41, 1); +lean_inc(x_44); +lean_dec(x_41); +x_45 = l_Lean_Core_getAndEmptyMessageLog___rarg(x_23, x_42); +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +x_47 = lean_ctor_get(x_45, 1); lean_inc(x_47); -x_48 = lean_ctor_get(x_38, 1); -lean_inc(x_48); -x_49 = lean_ctor_get(x_38, 2); -lean_inc(x_49); -x_50 = lean_nat_dec_lt(x_48, x_49); -if (x_50 == 0) -{ -lean_object* x_51; -lean_dec(x_49); -lean_dec(x_48); -lean_dec(x_47); -lean_dec(x_15); -x_51 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_51, 0, x_5); -x_16 = x_51; -x_17 = x_12; -goto block_24; -} -else +lean_dec(x_45); +x_48 = l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(x_46, x_47); +x_49 = !lean_is_exclusive(x_48); +if (x_49 == 0) { -uint8_t x_52; -x_52 = !lean_is_exclusive(x_38); -if (x_52 == 0) +lean_object* x_50; lean_object* x_51; uint8_t x_52; lean_object* x_53; uint8_t x_54; +x_50 = lean_ctor_get(x_48, 0); +x_51 = lean_ctor_get(x_48, 1); +x_52 = 0; +lean_inc(x_10); +x_53 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_53, 0, x_50); +lean_ctor_set(x_53, 1, x_10); +lean_ctor_set_uint8(x_53, sizeof(void*)*2, x_52); +x_54 = !lean_is_exclusive(x_35); +if (x_54 == 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; uint8_t x_62; -x_53 = lean_ctor_get(x_38, 2); -lean_dec(x_53); -x_54 = lean_ctor_get(x_38, 1); -lean_dec(x_54); -x_55 = lean_ctor_get(x_38, 0); -lean_dec(x_55); -x_56 = lean_array_fget(x_47, x_48); -x_57 = lean_unsigned_to_nat(1u); -x_58 = lean_nat_add(x_48, x_57); -lean_dec(x_48); -lean_ctor_set(x_38, 1, x_58); -x_59 = lean_ctor_get(x_42, 0); -lean_inc(x_59); -x_60 = lean_ctor_get(x_42, 1); +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; uint8_t x_62; +x_55 = lean_ctor_get(x_35, 1); +x_56 = lean_ctor_get(x_35, 3); +lean_dec(x_56); +x_57 = lean_ctor_get(x_35, 2); +lean_dec(x_57); +lean_inc(x_11); +lean_inc(x_39); +x_58 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_39, x_11); +lean_inc(x_44); +lean_inc(x_55); +x_59 = lean_alloc_ctor(0, 7, 0); +lean_ctor_set(x_59, 0, x_53); +lean_ctor_set(x_59, 1, x_55); +lean_ctor_set(x_59, 2, x_36); +lean_ctor_set(x_59, 3, x_43); +lean_ctor_set(x_59, 4, x_44); +lean_ctor_set(x_59, 5, x_39); +lean_ctor_set(x_59, 6, x_58); +lean_ctor_set(x_29, 0, x_59); +x_60 = lean_ctor_get(x_38, 1); lean_inc(x_60); -x_61 = lean_ctor_get(x_42, 2); -lean_inc(x_61); -x_62 = lean_nat_dec_lt(x_60, x_61); +lean_dec(x_38); +x_61 = lean_io_promise_resolve(x_29, x_60, x_51); +lean_dec(x_60); +x_62 = !lean_is_exclusive(x_61); if (x_62 == 0) { -lean_object* x_63; -lean_dec(x_61); -lean_dec(x_60); -lean_dec(x_59); -lean_dec(x_56); -lean_dec(x_15); -x_63 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_63, 0, x_5); -x_16 = x_63; -x_17 = x_12; -goto block_24; +lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_63 = lean_ctor_get(x_61, 1); +x_64 = lean_ctor_get(x_61, 0); +lean_dec(x_64); +lean_ctor_set(x_61, 1, x_11); +lean_ctor_set(x_61, 0, x_13); +x_65 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_65, 0, x_61); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_66; lean_object* x_67; +lean_free_object(x_48); +lean_dec(x_14); +lean_dec(x_9); +lean_ctor_set(x_35, 3, x_65); +lean_ctor_set(x_35, 2, x_10); +x_66 = lean_box(0); +x_67 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_16, x_6, x_7, x_8, x_12, x_35, x_66, x_18, x_19, x_20, x_21, x_22, x_23, x_63); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +return x_67; } else { -uint8_t x_64; -x_64 = !lean_is_exclusive(x_42); -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; lean_object* x_72; uint8_t x_73; -x_65 = lean_ctor_get(x_42, 2); -lean_dec(x_65); -x_66 = lean_ctor_get(x_42, 1); -lean_dec(x_66); -x_67 = lean_ctor_get(x_42, 0); -lean_dec(x_67); -x_68 = lean_array_fget(x_59, x_60); -x_69 = lean_nat_add(x_60, x_57); -lean_dec(x_60); -lean_ctor_set(x_42, 1, x_69); -x_70 = lean_ctor_get(x_39, 0); -lean_inc(x_70); -x_71 = lean_ctor_get(x_39, 1); -lean_inc(x_71); -x_72 = lean_ctor_get(x_39, 2); -lean_inc(x_72); -x_73 = lean_nat_dec_lt(x_71, x_72); -if (x_73 == 0) +uint8_t x_68; +lean_dec(x_10); +x_68 = !lean_is_exclusive(x_44); +if (x_68 == 0) { -lean_object* x_74; -lean_dec(x_72); -lean_dec(x_71); -lean_dec(x_70); -lean_dec(x_68); -lean_dec(x_56); -lean_dec(x_15); -x_74 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_74, 0, x_5); -x_16 = x_74; -x_17 = x_12; -goto block_24; +lean_object* x_69; lean_object* x_70; lean_object* x_71; +x_69 = lean_ctor_get(x_44, 0); +lean_dec(x_69); +lean_ctor_set(x_48, 1, x_9); +lean_ctor_set(x_48, 0, x_14); +lean_ctor_set(x_44, 0, x_48); +lean_ctor_set(x_35, 3, x_65); +lean_ctor_set(x_35, 2, x_44); +x_70 = lean_box(0); +x_71 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_16, x_6, x_7, x_8, x_12, x_35, x_70, x_18, x_19, x_20, x_21, x_22, x_23, x_63); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +return x_71; } else { -uint8_t x_75; -lean_free_object(x_37); -lean_free_object(x_33); -lean_free_object(x_5); -lean_free_object(x_34); -x_75 = !lean_is_exclusive(x_39); -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; -x_76 = lean_ctor_get(x_39, 2); -lean_dec(x_76); -x_77 = lean_ctor_get(x_39, 1); -lean_dec(x_77); -x_78 = lean_ctor_get(x_39, 0); -lean_dec(x_78); -x_79 = lean_array_fget(x_70, x_71); -x_80 = lean_nat_add(x_71, x_57); -lean_dec(x_71); -lean_ctor_set(x_39, 1, x_80); -x_81 = lean_ctor_get(x_79, 0); -lean_inc(x_81); -x_82 = lean_ctor_get(x_79, 1); -lean_inc(x_82); -x_83 = lean_ctor_get(x_79, 2); -lean_inc(x_83); -lean_dec(x_79); -x_84 = lean_box(0); -x_85 = lean_ctor_get(x_15, 7); -lean_inc(x_85); -if (lean_obj_tag(x_85) == 0) -{ -lean_object* x_86; uint8_t x_87; lean_object* x_88; -x_86 = lean_box(0); -x_87 = lean_unbox(x_46); -lean_dec(x_46); -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_88 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_81, x_82, x_83, x_38, x_42, x_39, x_45, x_84, x_87, x_86, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_88) == 0) -{ -lean_object* x_89; lean_object* x_90; -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_16 = x_89; -x_17 = x_90; -goto block_24; +lean_object* x_72; lean_object* x_73; lean_object* x_74; +lean_dec(x_44); +lean_ctor_set(x_48, 1, x_9); +lean_ctor_set(x_48, 0, x_14); +x_72 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_72, 0, x_48); +lean_ctor_set(x_35, 3, x_65); +lean_ctor_set(x_35, 2, x_72); +x_73 = lean_box(0); +x_74 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_16, x_6, x_7, x_8, x_12, x_35, x_73, x_18, x_19, x_20, x_21, x_22, x_23, x_63); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +return x_74; +} +} } else { -uint8_t x_91; -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_91 = !lean_is_exclusive(x_88); -if (x_91 == 0) +lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_75 = lean_ctor_get(x_61, 1); +lean_inc(x_75); +lean_dec(x_61); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_13); +lean_ctor_set(x_76, 1, x_11); +x_77 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_77, 0, x_76); +if (lean_obj_tag(x_44) == 0) { -return x_88; +lean_object* x_78; lean_object* x_79; +lean_free_object(x_48); +lean_dec(x_14); +lean_dec(x_9); +lean_ctor_set(x_35, 3, x_77); +lean_ctor_set(x_35, 2, x_10); +x_78 = lean_box(0); +x_79 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_16, x_6, x_7, x_8, x_12, x_35, x_78, x_18, x_19, x_20, x_21, x_22, x_23, x_75); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +return x_79; } else { -lean_object* x_92; lean_object* x_93; lean_object* x_94; -x_92 = lean_ctor_get(x_88, 0); -x_93 = lean_ctor_get(x_88, 1); -lean_inc(x_93); -lean_inc(x_92); -lean_dec(x_88); -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; +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +lean_dec(x_10); +if (lean_is_exclusive(x_44)) { + lean_ctor_release(x_44, 0); + x_80 = x_44; +} else { + lean_dec_ref(x_44); + x_80 = lean_box(0); +} +lean_ctor_set(x_48, 1, x_9); +lean_ctor_set(x_48, 0, x_14); +if (lean_is_scalar(x_80)) { + x_81 = lean_alloc_ctor(1, 1, 0); +} else { + x_81 = x_80; +} +lean_ctor_set(x_81, 0, x_48); +lean_ctor_set(x_35, 3, x_77); +lean_ctor_set(x_35, 2, x_81); +x_82 = lean_box(0); +x_83 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_16, x_6, x_7, x_8, x_12, x_35, x_82, x_18, x_19, x_20, x_21, x_22, x_23, x_75); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +return x_83; } } } else { -lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_95 = lean_ctor_get(x_85, 0); -lean_inc(x_95); -if (lean_is_exclusive(x_85)) { - lean_ctor_release(x_85, 0); - x_96 = x_85; +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; +x_84 = lean_ctor_get(x_35, 0); +x_85 = lean_ctor_get(x_35, 1); +lean_inc(x_85); +lean_inc(x_84); +lean_dec(x_35); +lean_inc(x_11); +lean_inc(x_39); +x_86 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_39, x_11); +lean_inc(x_44); +lean_inc(x_85); +x_87 = lean_alloc_ctor(0, 7, 0); +lean_ctor_set(x_87, 0, x_53); +lean_ctor_set(x_87, 1, x_85); +lean_ctor_set(x_87, 2, x_36); +lean_ctor_set(x_87, 3, x_43); +lean_ctor_set(x_87, 4, x_44); +lean_ctor_set(x_87, 5, x_39); +lean_ctor_set(x_87, 6, x_86); +lean_ctor_set(x_29, 0, x_87); +x_88 = lean_ctor_get(x_38, 1); +lean_inc(x_88); +lean_dec(x_38); +x_89 = lean_io_promise_resolve(x_29, x_88, x_51); +lean_dec(x_88); +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_85); - x_96 = lean_box(0); + lean_dec_ref(x_89); + x_91 = lean_box(0); } -x_97 = lean_ctor_get(x_95, 0); -lean_inc(x_97); -if (lean_obj_tag(x_97) == 0) -{ -uint8_t x_98; lean_object* x_99; lean_object* x_100; -lean_dec(x_96); -lean_dec(x_95); -lean_dec(x_46); -x_98 = 0; -x_99 = 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_1); -x_100 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_81, x_82, x_83, x_38, x_42, x_39, x_45, x_84, x_98, x_99, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -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_16 = x_101; -x_17 = x_102; -goto block_24; +if (lean_is_scalar(x_91)) { + x_92 = lean_alloc_ctor(0, 2, 0); +} else { + x_92 = x_91; } -else +lean_ctor_set(x_92, 0, x_13); +lean_ctor_set(x_92, 1, x_11); +x_93 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_93, 0, x_92); +if (lean_obj_tag(x_44) == 0) { -uint8_t x_103; -lean_dec(x_11); -lean_dec(x_10); +lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_free_object(x_48); +lean_dec(x_14); 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_100); -if (x_103 == 0) -{ -return x_100; +x_94 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_94, 0, x_84); +lean_ctor_set(x_94, 1, x_85); +lean_ctor_set(x_94, 2, x_10); +lean_ctor_set(x_94, 3, x_93); +x_95 = lean_box(0); +x_96 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_16, x_6, x_7, x_8, x_12, x_94, x_95, x_18, x_19, x_20, x_21, x_22, x_23, x_90); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +return x_96; } 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; +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +lean_dec(x_10); +if (lean_is_exclusive(x_44)) { + lean_ctor_release(x_44, 0); + x_97 = x_44; +} else { + lean_dec_ref(x_44); + x_97 = lean_box(0); +} +lean_ctor_set(x_48, 1, x_9); +lean_ctor_set(x_48, 0, x_14); +if (lean_is_scalar(x_97)) { + x_98 = lean_alloc_ctor(1, 1, 0); +} else { + x_98 = x_97; +} +lean_ctor_set(x_98, 0, x_48); +x_99 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_99, 0, x_84); +lean_ctor_set(x_99, 1, x_85); +lean_ctor_set(x_99, 2, x_98); +lean_ctor_set(x_99, 3, x_93); +x_100 = lean_box(0); +x_101 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_16, x_6, x_7, x_8, x_12, x_99, x_100, x_18, x_19, x_20, x_21, x_22, x_23, x_90); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +return x_101; } } } else { -lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; -x_107 = lean_ctor_get(x_97, 0); +lean_object* x_102; lean_object* x_103; uint8_t 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; +x_102 = lean_ctor_get(x_48, 0); +x_103 = lean_ctor_get(x_48, 1); +lean_inc(x_103); +lean_inc(x_102); +lean_dec(x_48); +x_104 = 0; +lean_inc(x_10); +x_105 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_105, 0, x_102); +lean_ctor_set(x_105, 1, x_10); +lean_ctor_set_uint8(x_105, sizeof(void*)*2, x_104); +x_106 = lean_ctor_get(x_35, 0); +lean_inc(x_106); +x_107 = lean_ctor_get(x_35, 1); lean_inc(x_107); -if (lean_is_exclusive(x_97)) { - lean_ctor_release(x_97, 0); - x_108 = x_97; +if (lean_is_exclusive(x_35)) { + lean_ctor_release(x_35, 0); + lean_ctor_release(x_35, 1); + lean_ctor_release(x_35, 2); + lean_ctor_release(x_35, 3); + x_108 = x_35; } else { - lean_dec_ref(x_97); + lean_dec_ref(x_35); x_108 = lean_box(0); } -x_109 = lean_ctor_get(x_107, 1); -lean_inc(x_109); -lean_dec(x_107); -x_110 = l_Lean_Language_SnapshotTask_get___rarg(x_109); -if (lean_obj_tag(x_110) == 0) -{ -uint8_t x_111; lean_object* x_112; lean_object* x_113; -lean_dec(x_108); -lean_dec(x_96); -lean_dec(x_95); -lean_dec(x_46); -x_111 = 0; -x_112 = 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_1); -x_113 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_81, x_82, x_83, x_38, x_42, x_39, x_45, x_84, x_111, x_112, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_113) == 0) -{ -lean_object* x_114; lean_object* x_115; -x_114 = lean_ctor_get(x_113, 0); -lean_inc(x_114); -x_115 = lean_ctor_get(x_113, 1); -lean_inc(x_115); -lean_dec(x_113); -x_16 = x_114; -x_17 = x_115; -goto block_24; +lean_inc(x_39); +x_109 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_39, x_11); +lean_inc(x_44); +lean_inc(x_107); +x_110 = lean_alloc_ctor(0, 7, 0); +lean_ctor_set(x_110, 0, x_105); +lean_ctor_set(x_110, 1, x_107); +lean_ctor_set(x_110, 2, x_36); +lean_ctor_set(x_110, 3, x_43); +lean_ctor_set(x_110, 4, x_44); +lean_ctor_set(x_110, 5, x_39); +lean_ctor_set(x_110, 6, x_109); +lean_ctor_set(x_29, 0, x_110); +x_111 = lean_ctor_get(x_38, 1); +lean_inc(x_111); +lean_dec(x_38); +x_112 = lean_io_promise_resolve(x_29, x_111, x_103); +lean_dec(x_111); +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); } -else -{ -uint8_t x_116; -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_116 = !lean_is_exclusive(x_113); -if (x_116 == 0) -{ -return x_113; +if (lean_is_scalar(x_114)) { + x_115 = lean_alloc_ctor(0, 2, 0); +} else { + x_115 = x_114; } -else +lean_ctor_set(x_115, 0, x_13); +lean_ctor_set(x_115, 1, x_11); +x_116 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_116, 0, x_115); +if (lean_obj_tag(x_44) == 0) { lean_object* x_117; lean_object* x_118; lean_object* x_119; -x_117 = lean_ctor_get(x_113, 0); -x_118 = lean_ctor_get(x_113, 1); -lean_inc(x_118); -lean_inc(x_117); -lean_dec(x_113); -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; -} +lean_dec(x_14); +lean_dec(x_9); +if (lean_is_scalar(x_108)) { + x_117 = lean_alloc_ctor(0, 4, 0); +} else { + x_117 = x_108; } +lean_ctor_set(x_117, 0, x_106); +lean_ctor_set(x_117, 1, x_107); +lean_ctor_set(x_117, 2, x_10); +lean_ctor_set(x_117, 3, x_116); +x_118 = lean_box(0); +x_119 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_16, x_6, x_7, x_8, x_12, x_117, x_118, x_18, x_19, x_20, x_21, x_22, x_23, x_113); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +return x_119; } else { -uint8_t x_120; -x_120 = !lean_is_exclusive(x_110); -if (x_120 == 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; -x_121 = lean_ctor_get(x_110, 0); -x_122 = lean_ctor_get(x_15, 6); -lean_inc(x_122); -lean_inc(x_68); -lean_inc(x_122); -x_123 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_122, x_68, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -x_124 = lean_ctor_get(x_123, 0); -lean_inc(x_124); -x_125 = lean_ctor_get(x_123, 1); -lean_inc(x_125); -if (lean_is_exclusive(x_123)) { - lean_ctor_release(x_123, 0); - lean_ctor_release(x_123, 1); - x_126 = x_123; +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_dec(x_10); +if (lean_is_exclusive(x_44)) { + lean_ctor_release(x_44, 0); + x_120 = x_44; } else { - lean_dec_ref(x_123); - x_126 = lean_box(0); + lean_dec_ref(x_44); + x_120 = lean_box(0); } -x_127 = lean_ctor_get(x_124, 0); -lean_inc(x_127); -x_128 = lean_ctor_get(x_124, 1); -lean_inc(x_128); -if (lean_is_exclusive(x_124)) { - lean_ctor_release(x_124, 0); - lean_ctor_release(x_124, 1); - x_129 = x_124; -} else { - lean_dec_ref(x_124); - x_129 = lean_box(0); -} -x_130 = !lean_is_exclusive(x_121); -if (x_130 == 0) -{ -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; uint8_t x_143; uint8_t x_210; -x_131 = lean_ctor_get(x_121, 1); -x_132 = lean_ctor_get(x_121, 2); -x_133 = lean_ctor_get(x_121, 3); -x_134 = lean_ctor_get(x_121, 4); -x_135 = lean_ctor_get(x_121, 5); -x_136 = lean_ctor_get(x_121, 6); -lean_inc(x_56); -lean_inc(x_122); -x_137 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_122, x_56); -lean_inc(x_122); -lean_inc(x_128); -lean_inc(x_132); -lean_inc(x_131); -lean_ctor_set(x_121, 6, x_137); -lean_ctor_set(x_121, 5, x_122); -lean_ctor_set(x_121, 4, x_128); -lean_ctor_set(x_121, 3, x_127); -x_138 = lean_ctor_get(x_95, 1); -lean_inc(x_138); -lean_dec(x_95); -x_139 = lean_io_promise_resolve(x_110, x_138, x_125); -lean_dec(x_138); -x_140 = lean_ctor_get(x_139, 1); -lean_inc(x_140); -if (lean_is_exclusive(x_139)) { - lean_ctor_release(x_139, 0); - lean_ctor_release(x_139, 1); - x_141 = x_139; +x_121 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_121, 0, x_14); +lean_ctor_set(x_121, 1, x_9); +if (lean_is_scalar(x_120)) { + x_122 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_139); - x_141 = lean_box(0); + x_122 = x_120; } -x_142 = lean_ctor_get(x_10, 2); -lean_inc(x_142); -x_210 = lean_unbox(x_46); -if (x_210 == 0) -{ -uint8_t x_211; -lean_dec(x_142); -lean_dec(x_135); -lean_dec(x_122); -x_211 = 0; -x_143 = x_211; -goto block_209; +lean_ctor_set(x_122, 0, x_121); +if (lean_is_scalar(x_108)) { + x_123 = lean_alloc_ctor(0, 4, 0); +} else { + x_123 = x_108; +} +lean_ctor_set(x_123, 0, x_106); +lean_ctor_set(x_123, 1, x_107); +lean_ctor_set(x_123, 2, x_122); +lean_ctor_set(x_123, 3, x_116); +x_124 = lean_box(0); +x_125 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_16, x_6, x_7, x_8, x_12, x_123, x_124, x_18, x_19, x_20, x_21, x_22, x_23, x_113); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +return x_125; } -else -{ -lean_object* x_212; uint8_t x_213; -x_212 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_142, x_122, x_135); -lean_dec(x_142); -x_213 = lean_unbox(x_212); -lean_dec(x_212); -x_143 = x_213; -goto block_209; } -block_209: -{ -lean_object* x_144; lean_object* x_153; -if (lean_obj_tag(x_128) == 0) -{ -lean_dec(x_134); -lean_dec(x_133); -lean_dec(x_46); -if (x_143 == 0) -{ -lean_dec(x_136); -lean_dec(x_126); -x_144 = x_84; -goto block_152; } else { -lean_dec(x_141); +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; uint8_t 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_126 = lean_ctor_get(x_29, 0); +lean_inc(x_126); +lean_dec(x_29); +x_127 = lean_ctor_get(x_1, 6); +lean_inc(x_127); +lean_dec(x_1); +lean_inc(x_9); +lean_inc(x_127); +x_128 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_127, x_9, x_18, x_19, x_20, x_21, x_22, x_23, x_34); +x_129 = lean_ctor_get(x_128, 0); +lean_inc(x_129); +x_130 = lean_ctor_get(x_128, 1); +lean_inc(x_130); +lean_dec(x_128); +x_131 = lean_ctor_get(x_129, 0); +lean_inc(x_131); +x_132 = lean_ctor_get(x_129, 1); +lean_inc(x_132); lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_153 = x_84; -goto block_164; +x_133 = l_Lean_Core_getAndEmptyMessageLog___rarg(x_23, x_130); +x_134 = lean_ctor_get(x_133, 0); +lean_inc(x_134); +x_135 = lean_ctor_get(x_133, 1); +lean_inc(x_135); +lean_dec(x_133); +x_136 = l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(x_134, x_135); +x_137 = lean_ctor_get(x_136, 0); +lean_inc(x_137); +x_138 = lean_ctor_get(x_136, 1); +lean_inc(x_138); +if (lean_is_exclusive(x_136)) { + lean_ctor_release(x_136, 0); + lean_ctor_release(x_136, 1); + x_139 = x_136; +} else { + lean_dec_ref(x_136); + x_139 = lean_box(0); } +x_140 = 0; +lean_inc(x_10); +x_141 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_141, 0, x_137); +lean_ctor_set(x_141, 1, x_10); +lean_ctor_set_uint8(x_141, sizeof(void*)*2, x_140); +x_142 = lean_ctor_get(x_35, 0); +lean_inc(x_142); +x_143 = lean_ctor_get(x_35, 1); +lean_inc(x_143); +if (lean_is_exclusive(x_35)) { + lean_ctor_release(x_35, 0); + lean_ctor_release(x_35, 1); + lean_ctor_release(x_35, 2); + lean_ctor_release(x_35, 3); + x_144 = x_35; +} else { + lean_dec_ref(x_35); + x_144 = lean_box(0); } -else -{ -uint8_t x_165; -x_165 = !lean_is_exclusive(x_128); -if (x_165 == 0) -{ -lean_object* x_166; uint8_t x_167; -x_166 = lean_ctor_get(x_128, 0); -lean_dec(x_166); -x_167 = lean_unbox(x_46); -lean_dec(x_46); -if (x_167 == 0) -{ -lean_object* x_168; -lean_dec(x_134); -lean_dec(x_133); -lean_inc(x_68); -x_168 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_168, 0, x_84); -lean_ctor_set(x_168, 1, x_68); -lean_ctor_set(x_128, 0, x_168); -if (x_143 == 0) -{ -lean_dec(x_136); +lean_inc(x_11); +lean_inc(x_127); +x_145 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_127, x_11); +lean_inc(x_132); +lean_inc(x_143); +x_146 = lean_alloc_ctor(0, 7, 0); +lean_ctor_set(x_146, 0, x_141); +lean_ctor_set(x_146, 1, x_143); +lean_ctor_set(x_146, 2, x_36); +lean_ctor_set(x_146, 3, x_131); +lean_ctor_set(x_146, 4, x_132); +lean_ctor_set(x_146, 5, x_127); +lean_ctor_set(x_146, 6, x_145); +x_147 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_147, 0, x_146); +x_148 = lean_ctor_get(x_126, 1); +lean_inc(x_148); lean_dec(x_126); -x_144 = x_128; -goto block_152; +x_149 = lean_io_promise_resolve(x_147, x_148, x_138); +lean_dec(x_148); +x_150 = lean_ctor_get(x_149, 1); +lean_inc(x_150); +if (lean_is_exclusive(x_149)) { + lean_ctor_release(x_149, 0); + lean_ctor_release(x_149, 1); + x_151 = x_149; +} else { + lean_dec_ref(x_149); + x_151 = lean_box(0); } -else +if (lean_is_scalar(x_151)) { + x_152 = lean_alloc_ctor(0, 2, 0); +} else { + x_152 = x_151; +} +lean_ctor_set(x_152, 0, x_13); +lean_ctor_set(x_152, 1, x_11); +x_153 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_153, 0, x_152); +if (lean_obj_tag(x_132) == 0) { -lean_dec(x_141); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_153 = x_128; -goto block_164; +lean_object* x_154; lean_object* x_155; lean_object* x_156; +lean_dec(x_139); +lean_dec(x_14); +lean_dec(x_9); +if (lean_is_scalar(x_144)) { + x_154 = lean_alloc_ctor(0, 4, 0); +} else { + x_154 = x_144; } +lean_ctor_set(x_154, 0, x_142); +lean_ctor_set(x_154, 1, x_143); +lean_ctor_set(x_154, 2, x_10); +lean_ctor_set(x_154, 3, x_153); +x_155 = lean_box(0); +x_156 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_16, x_6, x_7, x_8, x_12, x_154, x_155, x_18, x_19, x_20, x_21, x_22, x_23, x_150); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +return x_156; } else { -if (lean_obj_tag(x_133) == 0) -{ -lean_object* x_169; -lean_dec(x_134); -lean_inc(x_68); -x_169 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_169, 0, x_84); -lean_ctor_set(x_169, 1, x_68); -lean_ctor_set(x_128, 0, x_169); -if (x_143 == 0) -{ -lean_dec(x_136); -lean_dec(x_126); -x_144 = x_128; -goto block_152; +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_dec(x_10); +if (lean_is_exclusive(x_132)) { + lean_ctor_release(x_132, 0); + x_157 = x_132; +} else { + lean_dec_ref(x_132); + x_157 = lean_box(0); } -else -{ -lean_dec(x_141); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_153 = x_128; -goto block_164; +if (lean_is_scalar(x_139)) { + x_158 = lean_alloc_ctor(0, 2, 0); +} else { + x_158 = x_139; } +lean_ctor_set(x_158, 0, x_14); +lean_ctor_set(x_158, 1, x_9); +if (lean_is_scalar(x_157)) { + x_159 = lean_alloc_ctor(1, 1, 0); +} else { + x_159 = x_157; +} +lean_ctor_set(x_159, 0, x_158); +if (lean_is_scalar(x_144)) { + x_160 = lean_alloc_ctor(0, 4, 0); +} else { + x_160 = x_144; +} +lean_ctor_set(x_160, 0, x_142); +lean_ctor_set(x_160, 1, x_143); +lean_ctor_set(x_160, 2, x_159); +lean_ctor_set(x_160, 3, x_153); +x_161 = lean_box(0); +x_162 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_16, x_6, x_7, x_8, x_12, x_160, x_161, x_18, x_19, x_20, x_21, x_22, x_23, x_150); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +return x_162; } -else -{ -lean_free_object(x_128); -if (lean_obj_tag(x_134) == 0) -{ -uint8_t x_170; -x_170 = !lean_is_exclusive(x_133); -if (x_170 == 0) -{ -lean_object* x_171; lean_object* x_172; -x_171 = lean_ctor_get(x_133, 0); -lean_dec(x_171); -lean_inc(x_68); -x_172 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_172, 0, x_84); -lean_ctor_set(x_172, 1, x_68); -lean_ctor_set(x_133, 0, x_172); -if (x_143 == 0) -{ -lean_dec(x_136); -lean_dec(x_126); -x_144 = x_133; -goto block_152; } -else -{ -lean_dec(x_141); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_153 = x_133; -goto block_164; } } else { -lean_object* x_173; lean_object* x_174; -lean_dec(x_133); -lean_inc(x_68); -x_173 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_173, 0, x_84); -lean_ctor_set(x_173, 1, x_68); -x_174 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_174, 0, x_173); -if (x_143 == 0) +uint8_t x_163; +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_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_1); +x_163 = !lean_is_exclusive(x_27); +if (x_163 == 0) { -lean_dec(x_136); -lean_dec(x_126); -x_144 = x_174; -goto block_152; +return x_27; } else { -lean_dec(x_141); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_153 = x_174; -goto block_164; +lean_object* x_164; lean_object* x_165; lean_object* x_166; +x_164 = lean_ctor_get(x_27, 0); +x_165 = lean_ctor_get(x_27, 1); +lean_inc(x_165); +lean_inc(x_164); +lean_dec(x_27); +x_166 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_166, 0, x_164); +lean_ctor_set(x_166, 1, x_165); +return x_166; } } } +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13(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_lt(x_4, x_3); +if (x_13 == 0) +{ +lean_object* 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_1); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_5); +lean_ctor_set(x_14, 1, x_12); +return x_14; +} else { -uint8_t x_175; -x_175 = !lean_is_exclusive(x_133); -if (x_175 == 0) +lean_object* x_15; lean_object* x_16; lean_object* x_34; lean_object* x_35; uint8_t x_36; +x_15 = lean_array_uget(x_2, x_4); +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); +x_35 = lean_ctor_get(x_34, 1); +lean_inc(x_35); +x_36 = !lean_is_exclusive(x_35); +if (x_36 == 0) { -uint8_t x_176; -x_176 = !lean_is_exclusive(x_134); -if (x_176 == 0) +uint8_t x_37; +x_37 = !lean_is_exclusive(x_5); +if (x_37 == 0) { -lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; -x_177 = lean_ctor_get(x_133, 0); -x_178 = lean_ctor_get(x_134, 0); -x_179 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_179, 0, x_177); -lean_ctor_set(x_179, 1, x_178); -lean_ctor_set(x_134, 0, x_179); -lean_inc(x_68); -x_180 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_180, 0, x_134); -lean_ctor_set(x_180, 1, x_68); -lean_ctor_set(x_133, 0, x_180); -if (x_143 == 0) +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_35, 1); +x_39 = lean_ctor_get(x_35, 0); +x_40 = lean_ctor_get(x_5, 0); +x_41 = lean_ctor_get(x_5, 1); +lean_dec(x_41); +x_42 = !lean_is_exclusive(x_34); +if (x_42 == 0) { -lean_dec(x_136); -lean_dec(x_126); -x_144 = x_133; -goto block_152; -} -else +lean_object* x_43; lean_object* x_44; uint8_t x_45; +x_43 = lean_ctor_get(x_34, 0); +x_44 = lean_ctor_get(x_34, 1); +lean_dec(x_44); +x_45 = !lean_is_exclusive(x_38); +if (x_45 == 0) { -lean_dec(x_141); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_153 = x_133; -goto block_164; -} +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_46 = lean_ctor_get(x_38, 0); +x_47 = lean_ctor_get(x_38, 1); +x_48 = lean_ctor_get(x_39, 0); +lean_inc(x_48); +x_49 = lean_ctor_get(x_39, 1); +lean_inc(x_49); +x_50 = lean_ctor_get(x_39, 2); +lean_inc(x_50); +x_51 = lean_nat_dec_lt(x_49, x_50); +if (x_51 == 0) +{ +lean_object* x_52; lean_object* x_53; +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_15); +x_52 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_52, 0, x_5); +x_53 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_53, 0, x_52); +lean_ctor_set(x_53, 1, x_12); +x_16 = x_53; +goto block_33; } else { -lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; -x_181 = lean_ctor_get(x_133, 0); -x_182 = lean_ctor_get(x_134, 0); -lean_inc(x_182); -lean_dec(x_134); -x_183 = lean_alloc_ctor(0, 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_183); -lean_inc(x_68); -x_185 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_185, 0, x_184); -lean_ctor_set(x_185, 1, x_68); -lean_ctor_set(x_133, 0, x_185); -if (x_143 == 0) +uint8_t x_54; +x_54 = !lean_is_exclusive(x_39); +if (x_54 == 0) { -lean_dec(x_136); -lean_dec(x_126); -x_144 = x_133; -goto block_152; -} -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; uint8_t x_64; +x_55 = lean_ctor_get(x_39, 2); +lean_dec(x_55); +x_56 = lean_ctor_get(x_39, 1); +lean_dec(x_56); +x_57 = lean_ctor_get(x_39, 0); +lean_dec(x_57); +x_58 = lean_array_fget(x_48, x_49); +x_59 = lean_unsigned_to_nat(1u); +x_60 = lean_nat_add(x_49, x_59); +lean_dec(x_49); +lean_ctor_set(x_39, 1, x_60); +x_61 = lean_ctor_get(x_43, 0); +lean_inc(x_61); +x_62 = lean_ctor_get(x_43, 1); +lean_inc(x_62); +x_63 = lean_ctor_get(x_43, 2); +lean_inc(x_63); +x_64 = lean_nat_dec_lt(x_62, x_63); +if (x_64 == 0) { -lean_dec(x_141); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_153 = x_133; -goto block_164; -} -} +lean_object* x_65; lean_object* x_66; +lean_dec(x_63); +lean_dec(x_62); +lean_dec(x_61); +lean_dec(x_58); +lean_dec(x_15); +x_65 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_65, 0, x_5); +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_65); +lean_ctor_set(x_66, 1, x_12); +x_16 = x_66; +goto block_33; } 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; -x_186 = lean_ctor_get(x_133, 0); -lean_inc(x_186); -lean_dec(x_133); -x_187 = lean_ctor_get(x_134, 0); -lean_inc(x_187); -if (lean_is_exclusive(x_134)) { - lean_ctor_release(x_134, 0); - x_188 = x_134; -} else { - lean_dec_ref(x_134); - x_188 = lean_box(0); -} -x_189 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_189, 0, x_186); -lean_ctor_set(x_189, 1, x_187); -if (lean_is_scalar(x_188)) { - x_190 = lean_alloc_ctor(1, 1, 0); -} else { - x_190 = x_188; -} -lean_ctor_set(x_190, 0, x_189); -lean_inc(x_68); -x_191 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_191, 0, x_190); -lean_ctor_set(x_191, 1, x_68); -x_192 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_192, 0, x_191); -if (x_143 == 0) +uint8_t x_67; +x_67 = !lean_is_exclusive(x_43); +if (x_67 == 0) { -lean_dec(x_136); -lean_dec(x_126); -x_144 = x_192; -goto block_152; -} -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; uint8_t x_76; +x_68 = lean_ctor_get(x_43, 2); +lean_dec(x_68); +x_69 = lean_ctor_get(x_43, 1); +lean_dec(x_69); +x_70 = lean_ctor_get(x_43, 0); +lean_dec(x_70); +x_71 = lean_array_fget(x_61, x_62); +x_72 = lean_nat_add(x_62, x_59); +lean_dec(x_62); +lean_ctor_set(x_43, 1, x_72); +x_73 = lean_ctor_get(x_40, 0); +lean_inc(x_73); +x_74 = lean_ctor_get(x_40, 1); +lean_inc(x_74); +x_75 = lean_ctor_get(x_40, 2); +lean_inc(x_75); +x_76 = lean_nat_dec_lt(x_74, x_75); +if (x_76 == 0) { -lean_dec(x_141); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_153 = x_192; -goto block_164; -} -} -} -} -} +lean_object* x_77; lean_object* x_78; +lean_dec(x_75); +lean_dec(x_74); +lean_dec(x_73); +lean_dec(x_71); +lean_dec(x_58); +lean_dec(x_15); +x_77 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_77, 0, x_5); +x_78 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_78, 0, x_77); +lean_ctor_set(x_78, 1, x_12); +x_16 = x_78; +goto block_33; } else { -uint8_t x_193; -lean_dec(x_128); -x_193 = lean_unbox(x_46); -lean_dec(x_46); -if (x_193 == 0) +uint8_t x_79; +lean_free_object(x_38); +lean_free_object(x_34); +lean_free_object(x_5); +lean_free_object(x_35); +x_79 = !lean_is_exclusive(x_40); +if (x_79 == 0) { -lean_object* x_194; lean_object* x_195; -lean_dec(x_134); -lean_dec(x_133); -lean_inc(x_68); -x_194 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_194, 0, x_84); -lean_ctor_set(x_194, 1, x_68); -x_195 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_195, 0, x_194); -if (x_143 == 0) +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_40, 2); +lean_dec(x_80); +x_81 = lean_ctor_get(x_40, 1); +lean_dec(x_81); +x_82 = lean_ctor_get(x_40, 0); +lean_dec(x_82); +x_83 = lean_array_fget(x_73, x_74); +x_84 = lean_nat_add(x_74, x_59); +lean_dec(x_74); +lean_ctor_set(x_40, 1, x_84); +x_85 = lean_ctor_get(x_83, 0); +lean_inc(x_85); +x_86 = lean_ctor_get(x_83, 1); +lean_inc(x_86); +x_87 = lean_ctor_get(x_83, 2); +lean_inc(x_87); +lean_dec(x_83); +x_88 = lean_box(0); +x_89 = lean_ctor_get(x_15, 7); +lean_inc(x_89); +if (lean_obj_tag(x_89) == 0) { -lean_dec(x_136); -lean_dec(x_126); -x_144 = x_195; -goto block_152; +lean_object* x_90; uint8_t x_91; lean_object* x_92; +x_90 = lean_box(0); +x_91 = lean_unbox(x_47); +lean_dec(x_47); +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_92 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_88, x_91, x_90, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_92; +goto block_33; } else { -lean_dec(x_141); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_153 = x_195; -goto block_164; -} +lean_object* x_93; lean_object* x_94; +x_93 = lean_ctor_get(x_89, 0); +lean_inc(x_93); +lean_dec(x_89); +x_94 = lean_ctor_get(x_93, 0); +lean_inc(x_94); +lean_dec(x_93); +if (lean_obj_tag(x_94) == 0) +{ +uint8_t x_95; lean_object* x_96; lean_object* x_97; +lean_dec(x_47); +x_95 = 0; +x_96 = 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_1); +x_97 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_88, x_95, x_96, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_97; +goto block_33; } else { -if (lean_obj_tag(x_133) == 0) -{ -lean_object* x_196; lean_object* x_197; -lean_dec(x_134); -lean_inc(x_68); -x_196 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_196, 0, x_84); -lean_ctor_set(x_196, 1, x_68); -x_197 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_197, 0, x_196); -if (x_143 == 0) +uint8_t x_98; +x_98 = !lean_is_exclusive(x_94); +if (x_98 == 0) { -lean_dec(x_136); -lean_dec(x_126); -x_144 = x_197; -goto block_152; -} -else +lean_object* x_99; lean_object* x_100; lean_object* x_101; +x_99 = lean_ctor_get(x_94, 0); +x_100 = lean_ctor_get(x_99, 1); +lean_inc(x_100); +lean_dec(x_99); +x_101 = l_Lean_Language_SnapshotTask_get___rarg(x_100); +if (lean_obj_tag(x_101) == 0) { -lean_dec(x_141); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_153 = x_197; -goto block_164; -} +uint8_t x_102; lean_object* x_103; lean_object* x_104; +lean_free_object(x_94); +lean_dec(x_47); +x_102 = 0; +x_103 = 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_1); +x_104 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_88, x_102, x_103, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_104; +goto block_33; } else { -if (lean_obj_tag(x_134) == 0) +uint8_t x_105; +x_105 = !lean_is_exclusive(x_101); +if (x_105 == 0) { -lean_object* x_198; lean_object* x_199; lean_object* x_200; -if (lean_is_exclusive(x_133)) { - lean_ctor_release(x_133, 0); - x_198 = x_133; -} else { - lean_dec_ref(x_133); - x_198 = lean_box(0); -} -lean_inc(x_68); -x_199 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_199, 0, x_84); -lean_ctor_set(x_199, 1, x_68); -if (lean_is_scalar(x_198)) { - x_200 = lean_alloc_ctor(1, 1, 0); -} else { - x_200 = x_198; -} -lean_ctor_set(x_200, 0, x_199); -if (x_143 == 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; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; uint8_t x_116; +x_106 = lean_ctor_get(x_101, 0); +x_107 = lean_ctor_get(x_10, 2); +lean_inc(x_107); +x_108 = lean_ctor_get(x_106, 1); +lean_inc(x_108); +x_109 = lean_ctor_get(x_106, 2); +lean_inc(x_109); +x_110 = lean_ctor_get(x_106, 3); +lean_inc(x_110); +x_111 = lean_ctor_get(x_106, 4); +lean_inc(x_111); +x_112 = lean_ctor_get(x_106, 5); +lean_inc(x_112); +x_113 = lean_ctor_get(x_106, 6); +lean_inc(x_113); +lean_dec(x_106); +lean_inc(x_15); +x_114 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_114, 0, x_15); +lean_ctor_set(x_114, 1, x_108); +lean_ctor_set(x_114, 2, x_88); +lean_ctor_set(x_114, 3, x_88); +x_115 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_115, 0, x_114); +lean_ctor_set(x_115, 1, x_109); +lean_ctor_set(x_101, 0, x_115); +x_116 = lean_unbox(x_47); +lean_dec(x_47); +if (x_116 == 0) { -lean_dec(x_136); -lean_dec(x_126); -x_144 = x_200; -goto block_152; +uint8_t x_117; lean_object* x_118; lean_object* x_119; +lean_dec(x_113); +lean_dec(x_112); +lean_dec(x_111); +lean_dec(x_110); +lean_dec(x_107); +lean_free_object(x_94); +x_117 = 0; +x_118 = 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_1); +x_119 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_101, x_117, x_118, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_119; +goto block_33; } else { -lean_dec(x_141); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_153 = x_200; -goto block_164; -} +lean_object* x_120; lean_object* x_121; uint8_t x_122; +x_120 = lean_ctor_get(x_15, 6); +lean_inc(x_120); +x_121 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_107, x_120, x_112); +lean_dec(x_107); +x_122 = lean_unbox(x_121); +lean_dec(x_121); +if (x_122 == 0) +{ +lean_dec(x_113); +lean_free_object(x_94); +if (lean_obj_tag(x_110) == 0) +{ +lean_object* x_123; lean_object* x_124; +lean_dec(x_111); +x_123 = 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_1); +x_124 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_101, x_122, x_123, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_124; +goto block_33; } else { -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_201 = lean_ctor_get(x_133, 0); -lean_inc(x_201); -if (lean_is_exclusive(x_133)) { - lean_ctor_release(x_133, 0); - x_202 = x_133; -} else { - lean_dec_ref(x_133); - x_202 = lean_box(0); -} -x_203 = lean_ctor_get(x_134, 0); -lean_inc(x_203); -if (lean_is_exclusive(x_134)) { - lean_ctor_release(x_134, 0); - x_204 = x_134; -} else { - lean_dec_ref(x_134); - x_204 = lean_box(0); -} -x_205 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_205, 0, x_201); -lean_ctor_set(x_205, 1, x_203); -if (lean_is_scalar(x_204)) { - x_206 = lean_alloc_ctor(1, 1, 0); -} else { - x_206 = x_204; -} -lean_ctor_set(x_206, 0, x_205); -lean_inc(x_68); -x_207 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_207, 0, x_206); -lean_ctor_set(x_207, 1, x_68); -if (lean_is_scalar(x_202)) { - x_208 = lean_alloc_ctor(1, 1, 0); -} else { - x_208 = x_202; -} -lean_ctor_set(x_208, 0, x_207); -if (x_143 == 0) +if (lean_obj_tag(x_111) == 0) { -lean_dec(x_136); -lean_dec(x_126); -x_144 = x_208; -goto block_152; +lean_object* x_125; lean_object* x_126; +lean_dec(x_110); +x_125 = 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_1); +x_126 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_101, x_122, x_125, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_126; +goto block_33; } else { -lean_dec(x_141); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_153 = x_208; -goto block_164; -} -} -} -} -} -} -block_152: +lean_object* x_127; uint8_t x_128; +x_127 = lean_ctor_get(x_110, 0); +lean_inc(x_127); +lean_dec(x_110); +x_128 = !lean_is_exclusive(x_111); +if (x_128 == 0) { -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_inc(x_56); -if (lean_is_scalar(x_141)) { - x_145 = lean_alloc_ctor(0, 2, 0); -} else { - x_145 = x_141; -} -lean_ctor_set(x_145, 0, x_84); -lean_ctor_set(x_145, 1, x_56); -if (lean_is_scalar(x_108)) { - x_146 = lean_alloc_ctor(1, 1, 0); -} else { - x_146 = x_108; -} -lean_ctor_set(x_146, 0, x_145); -lean_inc(x_15); -x_147 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_147, 0, x_15); -lean_ctor_set(x_147, 1, x_131); -lean_ctor_set(x_147, 2, x_144); -lean_ctor_set(x_147, 3, x_146); -if (lean_is_scalar(x_129)) { - x_148 = lean_alloc_ctor(0, 2, 0); -} else { - x_148 = x_129; -} -lean_ctor_set(x_148, 0, x_147); -lean_ctor_set(x_148, 1, x_132); -if (lean_is_scalar(x_96)) { - x_149 = lean_alloc_ctor(1, 1, 0); -} else { - x_149 = x_96; -} -lean_ctor_set(x_149, 0, x_148); -x_150 = lean_box(0); +lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; +x_129 = lean_ctor_get(x_111, 0); +x_130 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_130, 0, x_127); +lean_ctor_set(x_130, 1, x_129); +lean_ctor_set(x_111, 0, x_130); +x_131 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -9399,41 +9534,22 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_151 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_81, x_82, x_83, x_38, x_42, x_39, x_45, x_149, x_143, x_150, x_6, x_7, x_8, x_9, x_10, x_11, x_140); -x_25 = x_151; -goto block_32; +x_132 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_111, x_101, x_122, x_131, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_132; +goto block_33; } -block_164: +else { -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; -x_154 = lean_box(0); -if (lean_is_scalar(x_126)) { - x_155 = lean_alloc_ctor(0, 2, 0); -} else { - x_155 = x_126; -} -lean_ctor_set(x_155, 0, x_154); -lean_ctor_set(x_155, 1, x_136); -x_156 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_156, 0, x_155); -lean_inc(x_56); -x_157 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_157, 0, x_156); -lean_ctor_set(x_157, 1, x_56); -x_158 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_158, 0, x_157); -lean_inc(x_15); -x_159 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_159, 0, x_15); -lean_ctor_set(x_159, 1, x_131); -lean_ctor_set(x_159, 2, x_153); -lean_ctor_set(x_159, 3, x_158); -x_160 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_160, 0, x_159); -lean_ctor_set(x_160, 1, x_132); -x_161 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_161, 0, x_160); -x_162 = lean_box(0); +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; +x_133 = lean_ctor_get(x_111, 0); +lean_inc(x_133); +lean_dec(x_111); +x_134 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_134, 0, x_127); +lean_ctor_set(x_134, 1, x_133); +x_135 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_135, 0, x_134); +x_136 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -9441,323 +9557,264 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_163 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_81, x_82, x_83, x_38, x_42, x_39, x_45, x_161, x_143, x_162, x_6, x_7, x_8, x_9, x_10, x_11, x_140); -x_25 = x_163; -goto block_32; +x_137 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_135, x_101, x_122, x_136, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_137; +goto block_33; +} } } } else { -lean_object* x_214; 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; lean_object* x_224; lean_object* x_225; lean_object* x_226; lean_object* x_227; uint8_t x_228; uint8_t x_268; -x_214 = lean_ctor_get(x_121, 0); -x_215 = lean_ctor_get(x_121, 1); -x_216 = lean_ctor_get(x_121, 2); -x_217 = lean_ctor_get(x_121, 3); -x_218 = lean_ctor_get(x_121, 4); -x_219 = lean_ctor_get(x_121, 5); -x_220 = lean_ctor_get(x_121, 6); -lean_inc(x_220); -lean_inc(x_219); -lean_inc(x_218); -lean_inc(x_217); -lean_inc(x_216); -lean_inc(x_215); -lean_inc(x_214); -lean_dec(x_121); -lean_inc(x_56); -lean_inc(x_122); -x_221 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_122, x_56); -lean_inc(x_122); -lean_inc(x_128); -lean_inc(x_216); -lean_inc(x_215); -x_222 = lean_alloc_ctor(0, 7, 0); -lean_ctor_set(x_222, 0, x_214); -lean_ctor_set(x_222, 1, x_215); -lean_ctor_set(x_222, 2, x_216); -lean_ctor_set(x_222, 3, x_127); -lean_ctor_set(x_222, 4, x_128); -lean_ctor_set(x_222, 5, x_122); -lean_ctor_set(x_222, 6, x_221); -lean_ctor_set(x_110, 0, x_222); -x_223 = lean_ctor_get(x_95, 1); -lean_inc(x_223); -lean_dec(x_95); -x_224 = lean_io_promise_resolve(x_110, x_223, x_125); -lean_dec(x_223); -x_225 = lean_ctor_get(x_224, 1); -lean_inc(x_225); -if (lean_is_exclusive(x_224)) { - lean_ctor_release(x_224, 0); - lean_ctor_release(x_224, 1); - x_226 = x_224; -} else { - lean_dec_ref(x_224); - x_226 = lean_box(0); -} -x_227 = lean_ctor_get(x_10, 2); -lean_inc(x_227); -x_268 = lean_unbox(x_46); -if (x_268 == 0) +lean_object* x_138; lean_object* x_139; +x_138 = lean_box(0); +x_139 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_139, 0, x_138); +lean_ctor_set(x_139, 1, x_113); +lean_ctor_set(x_94, 0, x_139); +if (lean_obj_tag(x_110) == 0) { -uint8_t x_269; -lean_dec(x_227); -lean_dec(x_219); -lean_dec(x_122); -x_269 = 0; -x_228 = x_269; -goto block_267; +lean_object* x_140; lean_object* x_141; +lean_dec(x_111); +x_140 = 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_1); +x_141 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_94, x_88, x_101, x_122, x_140, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_141; +goto block_33; } else { -lean_object* x_270; uint8_t x_271; -x_270 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_227, x_122, x_219); -lean_dec(x_227); -x_271 = lean_unbox(x_270); -lean_dec(x_270); -x_228 = x_271; -goto block_267; -} -block_267: -{ -lean_object* x_229; lean_object* x_238; -if (lean_obj_tag(x_128) == 0) -{ -lean_dec(x_218); -lean_dec(x_217); -lean_dec(x_46); -if (x_228 == 0) +if (lean_obj_tag(x_111) == 0) { -lean_dec(x_220); -lean_dec(x_126); -x_229 = x_84; -goto block_237; +lean_object* x_142; lean_object* x_143; +lean_dec(x_110); +x_142 = 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_1); +x_143 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_94, x_88, x_101, x_122, x_142, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_143; +goto block_33; } else { -lean_dec(x_226); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_238 = x_84; -goto block_249; -} +lean_object* x_144; uint8_t x_145; +x_144 = lean_ctor_get(x_110, 0); +lean_inc(x_144); +lean_dec(x_110); +x_145 = !lean_is_exclusive(x_111); +if (x_145 == 0) +{ +lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; +x_146 = lean_ctor_get(x_111, 0); +x_147 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_147, 0, x_144); +lean_ctor_set(x_147, 1, x_146); +lean_ctor_set(x_111, 0, x_147); +x_148 = 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_1); +x_149 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_94, x_111, x_101, x_122, x_148, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_149; +goto block_33; } else { -lean_object* x_250; uint8_t x_251; -if (lean_is_exclusive(x_128)) { - lean_ctor_release(x_128, 0); - x_250 = x_128; -} else { - lean_dec_ref(x_128); - x_250 = lean_box(0); -} -x_251 = lean_unbox(x_46); -lean_dec(x_46); -if (x_251 == 0) -{ -lean_object* x_252; lean_object* x_253; -lean_dec(x_218); -lean_dec(x_217); -lean_inc(x_68); -x_252 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_252, 0, x_84); -lean_ctor_set(x_252, 1, x_68); -if (lean_is_scalar(x_250)) { - x_253 = lean_alloc_ctor(1, 1, 0); -} else { - x_253 = x_250; +lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; +x_150 = lean_ctor_get(x_111, 0); +lean_inc(x_150); +lean_dec(x_111); +x_151 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_151, 0, x_144); +lean_ctor_set(x_151, 1, x_150); +x_152 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_152, 0, x_151); +x_153 = 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_1); +x_154 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_94, x_152, x_101, x_122, x_153, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_154; +goto block_33; } -lean_ctor_set(x_253, 0, x_252); -if (x_228 == 0) -{ -lean_dec(x_220); -lean_dec(x_126); -x_229 = x_253; -goto block_237; } -else -{ -lean_dec(x_226); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_238 = x_253; -goto block_249; } } -else -{ -if (lean_obj_tag(x_217) == 0) -{ -lean_object* x_254; lean_object* x_255; -lean_dec(x_218); -lean_inc(x_68); -x_254 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_254, 0, x_84); -lean_ctor_set(x_254, 1, x_68); -if (lean_is_scalar(x_250)) { - x_255 = lean_alloc_ctor(1, 1, 0); -} else { - x_255 = x_250; } -lean_ctor_set(x_255, 0, x_254); -if (x_228 == 0) -{ -lean_dec(x_220); -lean_dec(x_126); -x_229 = x_255; -goto block_237; } else { -lean_dec(x_226); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_238 = x_255; -goto block_249; -} +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; uint8_t x_166; +x_155 = lean_ctor_get(x_101, 0); +lean_inc(x_155); +lean_dec(x_101); +x_156 = lean_ctor_get(x_10, 2); +lean_inc(x_156); +x_157 = lean_ctor_get(x_155, 1); +lean_inc(x_157); +x_158 = lean_ctor_get(x_155, 2); +lean_inc(x_158); +x_159 = lean_ctor_get(x_155, 3); +lean_inc(x_159); +x_160 = lean_ctor_get(x_155, 4); +lean_inc(x_160); +x_161 = lean_ctor_get(x_155, 5); +lean_inc(x_161); +x_162 = lean_ctor_get(x_155, 6); +lean_inc(x_162); +lean_dec(x_155); +lean_inc(x_15); +x_163 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_163, 0, x_15); +lean_ctor_set(x_163, 1, x_157); +lean_ctor_set(x_163, 2, x_88); +lean_ctor_set(x_163, 3, x_88); +x_164 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_164, 0, x_163); +lean_ctor_set(x_164, 1, x_158); +x_165 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_165, 0, x_164); +x_166 = lean_unbox(x_47); +lean_dec(x_47); +if (x_166 == 0) +{ +uint8_t x_167; lean_object* x_168; lean_object* x_169; +lean_dec(x_162); +lean_dec(x_161); +lean_dec(x_160); +lean_dec(x_159); +lean_dec(x_156); +lean_free_object(x_94); +x_167 = 0; +x_168 = 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_1); +x_169 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_165, x_167, x_168, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_169; +goto block_33; } else { -lean_dec(x_250); -if (lean_obj_tag(x_218) == 0) +lean_object* x_170; lean_object* x_171; uint8_t x_172; +x_170 = lean_ctor_get(x_15, 6); +lean_inc(x_170); +x_171 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_156, x_170, x_161); +lean_dec(x_156); +x_172 = lean_unbox(x_171); +lean_dec(x_171); +if (x_172 == 0) { -lean_object* x_256; lean_object* x_257; lean_object* x_258; -if (lean_is_exclusive(x_217)) { - lean_ctor_release(x_217, 0); - x_256 = x_217; -} else { - lean_dec_ref(x_217); - x_256 = lean_box(0); -} -lean_inc(x_68); -x_257 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_257, 0, x_84); -lean_ctor_set(x_257, 1, x_68); -if (lean_is_scalar(x_256)) { - x_258 = lean_alloc_ctor(1, 1, 0); -} else { - x_258 = x_256; -} -lean_ctor_set(x_258, 0, x_257); -if (x_228 == 0) +lean_dec(x_162); +lean_free_object(x_94); +if (lean_obj_tag(x_159) == 0) { -lean_dec(x_220); -lean_dec(x_126); -x_229 = x_258; -goto block_237; +lean_object* x_173; lean_object* x_174; +lean_dec(x_160); +x_173 = 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_1); +x_174 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_165, x_172, x_173, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_174; +goto block_33; } else { -lean_dec(x_226); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_238 = x_258; -goto block_249; -} +if (lean_obj_tag(x_160) == 0) +{ +lean_object* x_175; lean_object* x_176; +lean_dec(x_159); +x_175 = 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_1); +x_176 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_165, x_172, x_175, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_176; +goto block_33; } else { -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; -x_259 = lean_ctor_get(x_217, 0); -lean_inc(x_259); -if (lean_is_exclusive(x_217)) { - lean_ctor_release(x_217, 0); - x_260 = x_217; +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_177 = lean_ctor_get(x_159, 0); +lean_inc(x_177); +lean_dec(x_159); +x_178 = lean_ctor_get(x_160, 0); +lean_inc(x_178); +if (lean_is_exclusive(x_160)) { + lean_ctor_release(x_160, 0); + x_179 = x_160; } else { - lean_dec_ref(x_217); - x_260 = lean_box(0); + lean_dec_ref(x_160); + x_179 = lean_box(0); } -x_261 = lean_ctor_get(x_218, 0); -lean_inc(x_261); -if (lean_is_exclusive(x_218)) { - lean_ctor_release(x_218, 0); - x_262 = x_218; +x_180 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_180, 0, x_177); +lean_ctor_set(x_180, 1, x_178); +if (lean_is_scalar(x_179)) { + x_181 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_218); - x_262 = lean_box(0); + x_181 = x_179; } -x_263 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_263, 0, x_259); -lean_ctor_set(x_263, 1, x_261); -if (lean_is_scalar(x_262)) { - x_264 = lean_alloc_ctor(1, 1, 0); -} else { - x_264 = x_262; +lean_ctor_set(x_181, 0, x_180); +x_182 = 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_1); +x_183 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_181, x_165, x_172, x_182, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_183; +goto block_33; } -lean_ctor_set(x_264, 0, x_263); -lean_inc(x_68); -x_265 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_265, 0, x_264); -lean_ctor_set(x_265, 1, x_68); -if (lean_is_scalar(x_260)) { - x_266 = lean_alloc_ctor(1, 1, 0); -} else { - x_266 = x_260; } -lean_ctor_set(x_266, 0, x_265); -if (x_228 == 0) -{ -lean_dec(x_220); -lean_dec(x_126); -x_229 = x_266; -goto block_237; } else { -lean_dec(x_226); -lean_dec(x_129); -lean_dec(x_108); -lean_dec(x_96); -x_238 = x_266; -goto block_249; -} -} -} -} -} -block_237: +lean_object* x_184; lean_object* x_185; +x_184 = lean_box(0); +x_185 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_185, 0, x_184); +lean_ctor_set(x_185, 1, x_162); +lean_ctor_set(x_94, 0, x_185); +if (lean_obj_tag(x_159) == 0) { -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_inc(x_56); -if (lean_is_scalar(x_226)) { - x_230 = lean_alloc_ctor(0, 2, 0); -} else { - x_230 = x_226; -} -lean_ctor_set(x_230, 0, x_84); -lean_ctor_set(x_230, 1, x_56); -if (lean_is_scalar(x_108)) { - x_231 = lean_alloc_ctor(1, 1, 0); -} else { - x_231 = x_108; -} -lean_ctor_set(x_231, 0, x_230); -lean_inc(x_15); -x_232 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_232, 0, x_15); -lean_ctor_set(x_232, 1, x_215); -lean_ctor_set(x_232, 2, x_229); -lean_ctor_set(x_232, 3, x_231); -if (lean_is_scalar(x_129)) { - x_233 = lean_alloc_ctor(0, 2, 0); -} else { - x_233 = x_129; -} -lean_ctor_set(x_233, 0, x_232); -lean_ctor_set(x_233, 1, x_216); -if (lean_is_scalar(x_96)) { - x_234 = lean_alloc_ctor(1, 1, 0); -} else { - x_234 = x_96; -} -lean_ctor_set(x_234, 0, x_233); -x_235 = lean_box(0); +lean_object* x_186; lean_object* x_187; +lean_dec(x_160); +x_186 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -9765,41 +9822,17 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_236 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_81, x_82, x_83, x_38, x_42, x_39, x_45, x_234, x_228, x_235, x_6, x_7, x_8, x_9, x_10, x_11, x_225); -x_25 = x_236; -goto block_32; +x_187 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_94, x_88, x_165, x_172, x_186, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_187; +goto block_33; } -block_249: +else { -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; -x_239 = lean_box(0); -if (lean_is_scalar(x_126)) { - x_240 = lean_alloc_ctor(0, 2, 0); -} else { - x_240 = x_126; -} -lean_ctor_set(x_240, 0, x_239); -lean_ctor_set(x_240, 1, x_220); -x_241 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_241, 0, x_240); -lean_inc(x_56); -x_242 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_242, 0, x_241); -lean_ctor_set(x_242, 1, x_56); -x_243 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_243, 0, x_242); -lean_inc(x_15); -x_244 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_244, 0, x_15); -lean_ctor_set(x_244, 1, x_215); -lean_ctor_set(x_244, 2, x_238); -lean_ctor_set(x_244, 3, x_243); -x_245 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_245, 0, x_244); -lean_ctor_set(x_245, 1, x_216); -x_246 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_246, 0, x_245); -x_247 = lean_box(0); +if (lean_obj_tag(x_160) == 0) +{ +lean_object* x_188; lean_object* x_189; +lean_dec(x_159); +x_188 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -9807,373 +9840,260 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_248 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_81, x_82, x_83, x_38, x_42, x_39, x_45, x_246, x_228, x_247, x_6, x_7, x_8, x_9, x_10, x_11, x_225); -x_25 = x_248; -goto block_32; -} -} -} +x_189 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_94, x_88, x_165, x_172, x_188, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_189; +goto block_33; } 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_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; lean_object* x_291; lean_object* x_292; lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; uint8_t x_297; uint8_t x_337; -x_272 = lean_ctor_get(x_110, 0); -lean_inc(x_272); -lean_dec(x_110); -x_273 = lean_ctor_get(x_15, 6); -lean_inc(x_273); -lean_inc(x_68); -lean_inc(x_273); -x_274 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_273, x_68, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -x_275 = lean_ctor_get(x_274, 0); -lean_inc(x_275); -x_276 = lean_ctor_get(x_274, 1); -lean_inc(x_276); -if (lean_is_exclusive(x_274)) { - lean_ctor_release(x_274, 0); - lean_ctor_release(x_274, 1); - x_277 = x_274; +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; +x_190 = lean_ctor_get(x_159, 0); +lean_inc(x_190); +lean_dec(x_159); +x_191 = lean_ctor_get(x_160, 0); +lean_inc(x_191); +if (lean_is_exclusive(x_160)) { + lean_ctor_release(x_160, 0); + x_192 = x_160; } else { - lean_dec_ref(x_274); - x_277 = lean_box(0); + lean_dec_ref(x_160); + x_192 = lean_box(0); } -x_278 = lean_ctor_get(x_275, 0); -lean_inc(x_278); -x_279 = lean_ctor_get(x_275, 1); -lean_inc(x_279); -if (lean_is_exclusive(x_275)) { - lean_ctor_release(x_275, 0); - lean_ctor_release(x_275, 1); - x_280 = x_275; +x_193 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_193, 0, x_190); +lean_ctor_set(x_193, 1, x_191); +if (lean_is_scalar(x_192)) { + x_194 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_275); - x_280 = lean_box(0); + x_194 = x_192; } -x_281 = lean_ctor_get(x_272, 0); -lean_inc(x_281); -x_282 = lean_ctor_get(x_272, 1); -lean_inc(x_282); -x_283 = lean_ctor_get(x_272, 2); -lean_inc(x_283); -x_284 = lean_ctor_get(x_272, 3); -lean_inc(x_284); -x_285 = lean_ctor_get(x_272, 4); -lean_inc(x_285); -x_286 = lean_ctor_get(x_272, 5); -lean_inc(x_286); -x_287 = lean_ctor_get(x_272, 6); -lean_inc(x_287); -if (lean_is_exclusive(x_272)) { - lean_ctor_release(x_272, 0); - lean_ctor_release(x_272, 1); - lean_ctor_release(x_272, 2); - lean_ctor_release(x_272, 3); - lean_ctor_release(x_272, 4); - lean_ctor_release(x_272, 5); - lean_ctor_release(x_272, 6); - x_288 = x_272; -} else { - lean_dec_ref(x_272); - x_288 = lean_box(0); +lean_ctor_set(x_194, 0, x_193); +x_195 = 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_1); +x_196 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_94, x_194, x_165, x_172, x_195, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_196; +goto block_33; } -lean_inc(x_56); -lean_inc(x_273); -x_289 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_273, x_56); -lean_inc(x_273); -lean_inc(x_279); -lean_inc(x_283); -lean_inc(x_282); -if (lean_is_scalar(x_288)) { - x_290 = lean_alloc_ctor(0, 7, 0); -} else { - x_290 = x_288; -} -lean_ctor_set(x_290, 0, x_281); -lean_ctor_set(x_290, 1, x_282); -lean_ctor_set(x_290, 2, x_283); -lean_ctor_set(x_290, 3, x_278); -lean_ctor_set(x_290, 4, x_279); -lean_ctor_set(x_290, 5, x_273); -lean_ctor_set(x_290, 6, x_289); -x_291 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_291, 0, x_290); -x_292 = lean_ctor_get(x_95, 1); -lean_inc(x_292); -lean_dec(x_95); -x_293 = lean_io_promise_resolve(x_291, x_292, x_276); -lean_dec(x_292); -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; -} else { - lean_dec_ref(x_293); - x_295 = lean_box(0); } -x_296 = lean_ctor_get(x_10, 2); -lean_inc(x_296); -x_337 = lean_unbox(x_46); -if (x_337 == 0) -{ -uint8_t x_338; -lean_dec(x_296); -lean_dec(x_286); -lean_dec(x_273); -x_338 = 0; -x_297 = x_338; -goto block_336; } -else -{ -lean_object* x_339; uint8_t x_340; -x_339 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_296, x_273, x_286); -lean_dec(x_296); -x_340 = lean_unbox(x_339); -lean_dec(x_339); -x_297 = x_340; -goto block_336; } -block_336: -{ -lean_object* x_298; lean_object* x_307; -if (lean_obj_tag(x_279) == 0) -{ -lean_dec(x_285); -lean_dec(x_284); -lean_dec(x_46); -if (x_297 == 0) -{ -lean_dec(x_287); -lean_dec(x_277); -x_298 = x_84; -goto block_306; } -else -{ -lean_dec(x_295); -lean_dec(x_280); -lean_dec(x_108); -lean_dec(x_96); -x_307 = x_84; -goto block_318; } } else { -lean_object* x_319; uint8_t x_320; -if (lean_is_exclusive(x_279)) { - lean_ctor_release(x_279, 0); - x_319 = x_279; -} else { - lean_dec_ref(x_279); - x_319 = lean_box(0); +lean_object* x_197; lean_object* x_198; lean_object* x_199; +x_197 = lean_ctor_get(x_94, 0); +lean_inc(x_197); +lean_dec(x_94); +x_198 = lean_ctor_get(x_197, 1); +lean_inc(x_198); +lean_dec(x_197); +x_199 = l_Lean_Language_SnapshotTask_get___rarg(x_198); +if (lean_obj_tag(x_199) == 0) +{ +uint8_t x_200; lean_object* x_201; lean_object* x_202; +lean_dec(x_47); +x_200 = 0; +x_201 = 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_1); +x_202 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_88, x_200, x_201, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_202; +goto block_33; } -x_320 = lean_unbox(x_46); -lean_dec(x_46); -if (x_320 == 0) +else { -lean_object* x_321; lean_object* x_322; -lean_dec(x_285); -lean_dec(x_284); -lean_inc(x_68); -x_321 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_321, 0, x_84); -lean_ctor_set(x_321, 1, x_68); -if (lean_is_scalar(x_319)) { - x_322 = lean_alloc_ctor(1, 1, 0); +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; uint8_t x_215; +x_203 = lean_ctor_get(x_199, 0); +lean_inc(x_203); +if (lean_is_exclusive(x_199)) { + lean_ctor_release(x_199, 0); + x_204 = x_199; } else { - x_322 = x_319; + lean_dec_ref(x_199); + x_204 = lean_box(0); } -lean_ctor_set(x_322, 0, x_321); -if (x_297 == 0) -{ -lean_dec(x_287); -lean_dec(x_277); -x_298 = x_322; -goto block_306; +x_205 = lean_ctor_get(x_10, 2); +lean_inc(x_205); +x_206 = lean_ctor_get(x_203, 1); +lean_inc(x_206); +x_207 = lean_ctor_get(x_203, 2); +lean_inc(x_207); +x_208 = lean_ctor_get(x_203, 3); +lean_inc(x_208); +x_209 = lean_ctor_get(x_203, 4); +lean_inc(x_209); +x_210 = lean_ctor_get(x_203, 5); +lean_inc(x_210); +x_211 = lean_ctor_get(x_203, 6); +lean_inc(x_211); +lean_dec(x_203); +lean_inc(x_15); +x_212 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_212, 0, x_15); +lean_ctor_set(x_212, 1, x_206); +lean_ctor_set(x_212, 2, x_88); +lean_ctor_set(x_212, 3, x_88); +x_213 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_213, 0, x_212); +lean_ctor_set(x_213, 1, x_207); +if (lean_is_scalar(x_204)) { + x_214 = lean_alloc_ctor(1, 1, 0); +} else { + x_214 = x_204; } -else +lean_ctor_set(x_214, 0, x_213); +x_215 = lean_unbox(x_47); +lean_dec(x_47); +if (x_215 == 0) { -lean_dec(x_295); -lean_dec(x_280); -lean_dec(x_108); -lean_dec(x_96); -x_307 = x_322; -goto block_318; -} +uint8_t x_216; lean_object* x_217; lean_object* x_218; +lean_dec(x_211); +lean_dec(x_210); +lean_dec(x_209); +lean_dec(x_208); +lean_dec(x_205); +x_216 = 0; +x_217 = 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_1); +x_218 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_214, x_216, x_217, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_218; +goto block_33; } else { -if (lean_obj_tag(x_284) == 0) +lean_object* x_219; lean_object* x_220; uint8_t x_221; +x_219 = lean_ctor_get(x_15, 6); +lean_inc(x_219); +x_220 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_205, x_219, x_210); +lean_dec(x_205); +x_221 = lean_unbox(x_220); +lean_dec(x_220); +if (x_221 == 0) { -lean_object* x_323; lean_object* x_324; -lean_dec(x_285); -lean_inc(x_68); -x_323 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_323, 0, x_84); -lean_ctor_set(x_323, 1, x_68); -if (lean_is_scalar(x_319)) { - x_324 = lean_alloc_ctor(1, 1, 0); -} else { - x_324 = x_319; -} -lean_ctor_set(x_324, 0, x_323); -if (x_297 == 0) +lean_dec(x_211); +if (lean_obj_tag(x_208) == 0) { -lean_dec(x_287); -lean_dec(x_277); -x_298 = x_324; -goto block_306; +lean_object* x_222; lean_object* x_223; +lean_dec(x_209); +x_222 = 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_1); +x_223 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_214, x_221, x_222, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_223; +goto block_33; } else { -lean_dec(x_295); -lean_dec(x_280); -lean_dec(x_108); -lean_dec(x_96); -x_307 = x_324; -goto block_318; -} +if (lean_obj_tag(x_209) == 0) +{ +lean_object* x_224; lean_object* x_225; +lean_dec(x_208); +x_224 = 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_1); +x_225 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_88, x_214, x_221, x_224, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_225; +goto block_33; } else { -lean_dec(x_319); -if (lean_obj_tag(x_285) == 0) -{ -lean_object* x_325; lean_object* x_326; lean_object* x_327; -if (lean_is_exclusive(x_284)) { - lean_ctor_release(x_284, 0); - x_325 = x_284; +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; +x_226 = lean_ctor_get(x_208, 0); +lean_inc(x_226); +lean_dec(x_208); +x_227 = lean_ctor_get(x_209, 0); +lean_inc(x_227); +if (lean_is_exclusive(x_209)) { + lean_ctor_release(x_209, 0); + x_228 = x_209; } else { - lean_dec_ref(x_284); - x_325 = lean_box(0); + lean_dec_ref(x_209); + x_228 = lean_box(0); } -lean_inc(x_68); -x_326 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_326, 0, x_84); -lean_ctor_set(x_326, 1, x_68); -if (lean_is_scalar(x_325)) { - x_327 = lean_alloc_ctor(1, 1, 0); +x_229 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_229, 0, x_226); +lean_ctor_set(x_229, 1, x_227); +if (lean_is_scalar(x_228)) { + x_230 = lean_alloc_ctor(1, 1, 0); } else { - x_327 = x_325; + x_230 = x_228; } -lean_ctor_set(x_327, 0, x_326); -if (x_297 == 0) -{ -lean_dec(x_287); -lean_dec(x_277); -x_298 = x_327; -goto block_306; +lean_ctor_set(x_230, 0, x_229); +x_231 = 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_1); +x_232 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_88, x_230, x_214, x_221, x_231, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_232; +goto block_33; } -else -{ -lean_dec(x_295); -lean_dec(x_280); -lean_dec(x_108); -lean_dec(x_96); -x_307 = x_327; -goto block_318; } } else { -lean_object* x_328; 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; -x_328 = lean_ctor_get(x_284, 0); -lean_inc(x_328); -if (lean_is_exclusive(x_284)) { - lean_ctor_release(x_284, 0); - x_329 = x_284; -} else { - lean_dec_ref(x_284); - x_329 = lean_box(0); -} -x_330 = lean_ctor_get(x_285, 0); -lean_inc(x_330); -if (lean_is_exclusive(x_285)) { - lean_ctor_release(x_285, 0); - x_331 = x_285; -} else { - lean_dec_ref(x_285); - x_331 = lean_box(0); -} -x_332 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_332, 0, x_328); -lean_ctor_set(x_332, 1, x_330); -if (lean_is_scalar(x_331)) { - x_333 = lean_alloc_ctor(1, 1, 0); -} else { - x_333 = x_331; -} -lean_ctor_set(x_333, 0, x_332); -lean_inc(x_68); -x_334 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_334, 0, x_333); -lean_ctor_set(x_334, 1, x_68); -if (lean_is_scalar(x_329)) { - x_335 = lean_alloc_ctor(1, 1, 0); -} else { - x_335 = x_329; -} -lean_ctor_set(x_335, 0, x_334); -if (x_297 == 0) +lean_object* x_233; lean_object* x_234; lean_object* x_235; +x_233 = lean_box(0); +x_234 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_234, 0, x_233); +lean_ctor_set(x_234, 1, x_211); +x_235 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_235, 0, x_234); +if (lean_obj_tag(x_208) == 0) { -lean_dec(x_287); -lean_dec(x_277); -x_298 = x_335; -goto block_306; +lean_object* x_236; lean_object* x_237; +lean_dec(x_209); +x_236 = 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_1); +x_237 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_235, x_88, x_214, x_221, x_236, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_237; +goto block_33; } else { -lean_dec(x_295); -lean_dec(x_280); -lean_dec(x_108); -lean_dec(x_96); -x_307 = x_335; -goto block_318; -} -} -} -} -} -block_306: +if (lean_obj_tag(x_209) == 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_inc(x_56); -if (lean_is_scalar(x_295)) { - x_299 = lean_alloc_ctor(0, 2, 0); -} else { - x_299 = x_295; -} -lean_ctor_set(x_299, 0, x_84); -lean_ctor_set(x_299, 1, x_56); -if (lean_is_scalar(x_108)) { - x_300 = lean_alloc_ctor(1, 1, 0); -} else { - x_300 = x_108; -} -lean_ctor_set(x_300, 0, x_299); -lean_inc(x_15); -x_301 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_301, 0, x_15); -lean_ctor_set(x_301, 1, x_282); -lean_ctor_set(x_301, 2, x_298); -lean_ctor_set(x_301, 3, x_300); -if (lean_is_scalar(x_280)) { - x_302 = lean_alloc_ctor(0, 2, 0); -} else { - x_302 = x_280; -} -lean_ctor_set(x_302, 0, x_301); -lean_ctor_set(x_302, 1, x_283); -if (lean_is_scalar(x_96)) { - x_303 = lean_alloc_ctor(1, 1, 0); -} else { - x_303 = x_96; -} -lean_ctor_set(x_303, 0, x_302); -x_304 = lean_box(0); +lean_object* x_238; lean_object* x_239; +lean_dec(x_208); +x_238 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -10181,41 +10101,35 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_305 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_81, x_82, x_83, x_38, x_42, x_39, x_45, x_303, x_297, x_304, x_6, x_7, x_8, x_9, x_10, x_11, x_294); -x_25 = x_305; -goto block_32; +x_239 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_235, x_88, x_214, x_221, x_238, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_239; +goto block_33; } -block_318: +else { -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_object* x_316; lean_object* x_317; -x_308 = lean_box(0); -if (lean_is_scalar(x_277)) { - x_309 = lean_alloc_ctor(0, 2, 0); +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; +x_240 = lean_ctor_get(x_208, 0); +lean_inc(x_240); +lean_dec(x_208); +x_241 = lean_ctor_get(x_209, 0); +lean_inc(x_241); +if (lean_is_exclusive(x_209)) { + lean_ctor_release(x_209, 0); + x_242 = x_209; } else { - x_309 = x_277; + lean_dec_ref(x_209); + x_242 = lean_box(0); } -lean_ctor_set(x_309, 0, x_308); -lean_ctor_set(x_309, 1, x_287); -x_310 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_310, 0, x_309); -lean_inc(x_56); -x_311 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_311, 0, x_310); -lean_ctor_set(x_311, 1, x_56); -x_312 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_312, 0, x_311); -lean_inc(x_15); -x_313 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_313, 0, x_15); -lean_ctor_set(x_313, 1, x_282); -lean_ctor_set(x_313, 2, x_307); -lean_ctor_set(x_313, 3, x_312); -x_314 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_314, 0, x_313); -lean_ctor_set(x_314, 1, x_283); -x_315 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_315, 0, x_314); -x_316 = lean_box(0); +x_243 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_243, 0, x_240); +lean_ctor_set(x_243, 1, x_241); +if (lean_is_scalar(x_242)) { + x_244 = lean_alloc_ctor(1, 1, 0); +} else { + x_244 = x_242; +} +lean_ctor_set(x_244, 0, x_243); +x_245 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -10223,9 +10137,11 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_317 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_81, x_82, x_83, x_38, x_42, x_39, x_45, x_315, x_297, x_316, x_6, x_7, x_8, x_9, x_10, x_11, x_294); -x_25 = x_317; -goto block_32; +x_246 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_85, x_86, x_87, x_39, x_43, x_40, x_71, x_88, x_58, x_46, x_235, x_244, x_214, x_221, x_245, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_246; +goto block_33; +} +} } } } @@ -10235,31 +10151,31 @@ goto block_32; } else { -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; lean_object* x_348; -lean_dec(x_39); -x_341 = lean_array_fget(x_70, x_71); -x_342 = lean_nat_add(x_71, x_57); -lean_dec(x_71); -x_343 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_343, 0, x_70); -lean_ctor_set(x_343, 1, x_342); -lean_ctor_set(x_343, 2, x_72); -x_344 = lean_ctor_get(x_341, 0); -lean_inc(x_344); -x_345 = lean_ctor_get(x_341, 1); -lean_inc(x_345); -x_346 = lean_ctor_get(x_341, 2); -lean_inc(x_346); -lean_dec(x_341); -x_347 = lean_box(0); -x_348 = lean_ctor_get(x_15, 7); -lean_inc(x_348); -if (lean_obj_tag(x_348) == 0) -{ -lean_object* x_349; uint8_t x_350; lean_object* x_351; -x_349 = lean_box(0); -x_350 = lean_unbox(x_46); -lean_dec(x_46); +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_dec(x_40); +x_247 = lean_array_fget(x_73, x_74); +x_248 = lean_nat_add(x_74, x_59); +lean_dec(x_74); +x_249 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_249, 0, x_73); +lean_ctor_set(x_249, 1, x_248); +lean_ctor_set(x_249, 2, x_75); +x_250 = lean_ctor_get(x_247, 0); +lean_inc(x_250); +x_251 = lean_ctor_get(x_247, 1); +lean_inc(x_251); +x_252 = lean_ctor_get(x_247, 2); +lean_inc(x_252); +lean_dec(x_247); +x_253 = lean_box(0); +x_254 = lean_ctor_get(x_15, 7); +lean_inc(x_254); +if (lean_obj_tag(x_254) == 0) +{ +lean_object* x_255; uint8_t x_256; lean_object* x_257; +x_255 = lean_box(0); +x_256 = lean_unbox(x_47); +lean_dec(x_47); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -10267,73 +10183,59 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_351 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_344, x_345, x_346, x_38, x_42, x_343, x_45, x_347, x_350, x_349, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_351) == 0) -{ -lean_object* x_352; lean_object* x_353; -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_16 = x_352; -x_17 = x_353; -goto block_24; +x_257 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_250, x_251, x_252, x_39, x_43, x_249, x_71, x_253, x_58, x_46, x_253, x_253, x_253, x_256, x_255, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_257; +goto block_33; } else { -lean_object* x_354; lean_object* x_355; lean_object* x_356; lean_object* x_357; -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_354 = lean_ctor_get(x_351, 0); -lean_inc(x_354); -x_355 = lean_ctor_get(x_351, 1); -lean_inc(x_355); -if (lean_is_exclusive(x_351)) { - lean_ctor_release(x_351, 0); - lean_ctor_release(x_351, 1); - x_356 = x_351; -} else { - lean_dec_ref(x_351); - x_356 = lean_box(0); -} -if (lean_is_scalar(x_356)) { - x_357 = lean_alloc_ctor(1, 2, 0); -} else { - x_357 = x_356; -} -lean_ctor_set(x_357, 0, x_354); -lean_ctor_set(x_357, 1, x_355); -return x_357; -} +lean_object* x_258; lean_object* x_259; +x_258 = lean_ctor_get(x_254, 0); +lean_inc(x_258); +lean_dec(x_254); +x_259 = lean_ctor_get(x_258, 0); +lean_inc(x_259); +lean_dec(x_258); +if (lean_obj_tag(x_259) == 0) +{ +uint8_t x_260; lean_object* x_261; lean_object* x_262; +lean_dec(x_47); +x_260 = 0; +x_261 = 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_1); +x_262 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_250, x_251, x_252, x_39, x_43, x_249, x_71, x_253, x_58, x_46, x_253, x_253, x_253, x_260, x_261, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_262; +goto block_33; } else { -lean_object* x_358; lean_object* x_359; lean_object* x_360; -x_358 = lean_ctor_get(x_348, 0); -lean_inc(x_358); -if (lean_is_exclusive(x_348)) { - lean_ctor_release(x_348, 0); - x_359 = x_348; +lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; +x_263 = lean_ctor_get(x_259, 0); +lean_inc(x_263); +if (lean_is_exclusive(x_259)) { + lean_ctor_release(x_259, 0); + x_264 = x_259; } else { - lean_dec_ref(x_348); - x_359 = lean_box(0); + lean_dec_ref(x_259); + x_264 = lean_box(0); } -x_360 = lean_ctor_get(x_358, 0); -lean_inc(x_360); -if (lean_obj_tag(x_360) == 0) +x_265 = lean_ctor_get(x_263, 1); +lean_inc(x_265); +lean_dec(x_263); +x_266 = l_Lean_Language_SnapshotTask_get___rarg(x_265); +if (lean_obj_tag(x_266) == 0) { -uint8_t x_361; lean_object* x_362; lean_object* x_363; -lean_dec(x_359); -lean_dec(x_358); -lean_dec(x_46); -x_361 = 0; -x_362 = lean_box(0); +uint8_t x_267; lean_object* x_268; lean_object* x_269; +lean_dec(x_264); +lean_dec(x_47); +x_267 = 0; +x_268 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -10341,76 +10243,94 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_363 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_344, x_345, x_346, x_38, x_42, x_343, x_45, x_347, x_361, x_362, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_363) == 0) -{ -lean_object* x_364; lean_object* x_365; -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_16 = x_364; -x_17 = x_365; -goto block_24; +x_269 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_250, x_251, x_252, x_39, x_43, x_249, x_71, x_253, x_58, x_46, x_253, x_253, x_253, x_267, x_268, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_269; +goto block_33; } else { -lean_object* x_366; lean_object* x_367; lean_object* x_368; lean_object* x_369; -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_366 = lean_ctor_get(x_363, 0); -lean_inc(x_366); -x_367 = lean_ctor_get(x_363, 1); -lean_inc(x_367); -if (lean_is_exclusive(x_363)) { - lean_ctor_release(x_363, 0); - lean_ctor_release(x_363, 1); - x_368 = x_363; -} else { - lean_dec_ref(x_363); - x_368 = lean_box(0); -} -if (lean_is_scalar(x_368)) { - x_369 = lean_alloc_ctor(1, 2, 0); +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; lean_object* x_280; lean_object* x_281; uint8_t x_282; +x_270 = lean_ctor_get(x_266, 0); +lean_inc(x_270); +if (lean_is_exclusive(x_266)) { + lean_ctor_release(x_266, 0); + x_271 = x_266; } else { - x_369 = x_368; -} -lean_ctor_set(x_369, 0, x_366); -lean_ctor_set(x_369, 1, x_367); -return x_369; + lean_dec_ref(x_266); + x_271 = lean_box(0); } +x_272 = lean_ctor_get(x_10, 2); +lean_inc(x_272); +x_273 = lean_ctor_get(x_270, 1); +lean_inc(x_273); +x_274 = lean_ctor_get(x_270, 2); +lean_inc(x_274); +x_275 = lean_ctor_get(x_270, 3); +lean_inc(x_275); +x_276 = lean_ctor_get(x_270, 4); +lean_inc(x_276); +x_277 = lean_ctor_get(x_270, 5); +lean_inc(x_277); +x_278 = lean_ctor_get(x_270, 6); +lean_inc(x_278); +lean_dec(x_270); +lean_inc(x_15); +x_279 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_279, 0, x_15); +lean_ctor_set(x_279, 1, x_273); +lean_ctor_set(x_279, 2, x_253); +lean_ctor_set(x_279, 3, x_253); +x_280 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_280, 0, x_279); +lean_ctor_set(x_280, 1, x_274); +if (lean_is_scalar(x_271)) { + x_281 = lean_alloc_ctor(1, 1, 0); +} else { + x_281 = x_271; +} +lean_ctor_set(x_281, 0, x_280); +x_282 = lean_unbox(x_47); +lean_dec(x_47); +if (x_282 == 0) +{ +uint8_t x_283; lean_object* x_284; lean_object* x_285; +lean_dec(x_278); +lean_dec(x_277); +lean_dec(x_276); +lean_dec(x_275); +lean_dec(x_272); +lean_dec(x_264); +x_283 = 0; +x_284 = 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_1); +x_285 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_250, x_251, x_252, x_39, x_43, x_249, x_71, x_253, x_58, x_46, x_253, x_253, x_281, x_283, x_284, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_285; +goto block_33; } else { -lean_object* x_370; lean_object* x_371; lean_object* x_372; lean_object* x_373; -x_370 = lean_ctor_get(x_360, 0); -lean_inc(x_370); -if (lean_is_exclusive(x_360)) { - lean_ctor_release(x_360, 0); - x_371 = x_360; -} else { - lean_dec_ref(x_360); - x_371 = lean_box(0); -} -x_372 = lean_ctor_get(x_370, 1); -lean_inc(x_372); -lean_dec(x_370); -x_373 = l_Lean_Language_SnapshotTask_get___rarg(x_372); -if (lean_obj_tag(x_373) == 0) +lean_object* x_286; lean_object* x_287; uint8_t x_288; +x_286 = lean_ctor_get(x_15, 6); +lean_inc(x_286); +x_287 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_272, x_286, x_277); +lean_dec(x_272); +x_288 = lean_unbox(x_287); +lean_dec(x_287); +if (x_288 == 0) { -uint8_t x_374; lean_object* x_375; lean_object* x_376; -lean_dec(x_371); -lean_dec(x_359); -lean_dec(x_358); -lean_dec(x_46); -x_374 = 0; -x_375 = lean_box(0); +lean_dec(x_278); +lean_dec(x_264); +if (lean_obj_tag(x_275) == 0) +{ +lean_object* x_289; lean_object* x_290; +lean_dec(x_276); +x_289 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -10418,421 +10338,297 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_376 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_344, x_345, x_346, x_38, x_42, x_343, x_45, x_347, x_374, x_375, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_376) == 0) -{ -lean_object* x_377; lean_object* x_378; -x_377 = lean_ctor_get(x_376, 0); -lean_inc(x_377); -x_378 = lean_ctor_get(x_376, 1); -lean_inc(x_378); -lean_dec(x_376); -x_16 = x_377; -x_17 = x_378; -goto block_24; +x_290 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_250, x_251, x_252, x_39, x_43, x_249, x_71, x_253, x_58, x_46, x_253, x_253, x_281, x_288, x_289, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_290; +goto block_33; } else { -lean_object* x_379; lean_object* x_380; lean_object* x_381; lean_object* x_382; -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_379 = lean_ctor_get(x_376, 0); -lean_inc(x_379); -x_380 = lean_ctor_get(x_376, 1); -lean_inc(x_380); -if (lean_is_exclusive(x_376)) { - lean_ctor_release(x_376, 0); - lean_ctor_release(x_376, 1); - x_381 = x_376; -} else { - lean_dec_ref(x_376); - x_381 = lean_box(0); -} -if (lean_is_scalar(x_381)) { - x_382 = lean_alloc_ctor(1, 2, 0); -} else { - x_382 = x_381; -} -lean_ctor_set(x_382, 0, x_379); -lean_ctor_set(x_382, 1, x_380); -return x_382; -} +if (lean_obj_tag(x_276) == 0) +{ +lean_object* x_291; lean_object* x_292; +lean_dec(x_275); +x_291 = 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_1); +x_292 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_250, x_251, x_252, x_39, x_43, x_249, x_71, x_253, x_58, x_46, x_253, x_253, x_281, x_288, x_291, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_292; +goto block_33; } else { -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; 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; uint8_t x_409; uint8_t x_449; -x_383 = lean_ctor_get(x_373, 0); -lean_inc(x_383); -if (lean_is_exclusive(x_373)) { - lean_ctor_release(x_373, 0); - x_384 = x_373; +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; +x_293 = lean_ctor_get(x_275, 0); +lean_inc(x_293); +lean_dec(x_275); +x_294 = lean_ctor_get(x_276, 0); +lean_inc(x_294); +if (lean_is_exclusive(x_276)) { + lean_ctor_release(x_276, 0); + x_295 = x_276; } else { - lean_dec_ref(x_373); - x_384 = lean_box(0); + lean_dec_ref(x_276); + x_295 = lean_box(0); } -x_385 = lean_ctor_get(x_15, 6); -lean_inc(x_385); -lean_inc(x_68); -lean_inc(x_385); -x_386 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_385, x_68, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -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; -} else { - lean_dec_ref(x_386); - x_389 = lean_box(0); -} -x_390 = lean_ctor_get(x_387, 0); -lean_inc(x_390); -x_391 = lean_ctor_get(x_387, 1); -lean_inc(x_391); -if (lean_is_exclusive(x_387)) { - lean_ctor_release(x_387, 0); - lean_ctor_release(x_387, 1); - x_392 = x_387; +x_296 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_296, 0, x_293); +lean_ctor_set(x_296, 1, x_294); +if (lean_is_scalar(x_295)) { + x_297 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_387); - x_392 = lean_box(0); + x_297 = x_295; +} +lean_ctor_set(x_297, 0, x_296); +x_298 = 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_1); +x_299 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_250, x_251, x_252, x_39, x_43, x_249, x_71, x_253, x_58, x_46, x_253, x_297, x_281, x_288, x_298, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_299; +goto block_33; } -x_393 = lean_ctor_get(x_383, 0); -lean_inc(x_393); -x_394 = lean_ctor_get(x_383, 1); -lean_inc(x_394); -x_395 = lean_ctor_get(x_383, 2); -lean_inc(x_395); -x_396 = lean_ctor_get(x_383, 3); -lean_inc(x_396); -x_397 = lean_ctor_get(x_383, 4); -lean_inc(x_397); -x_398 = lean_ctor_get(x_383, 5); -lean_inc(x_398); -x_399 = lean_ctor_get(x_383, 6); -lean_inc(x_399); -if (lean_is_exclusive(x_383)) { - lean_ctor_release(x_383, 0); - lean_ctor_release(x_383, 1); - lean_ctor_release(x_383, 2); - lean_ctor_release(x_383, 3); - lean_ctor_release(x_383, 4); - lean_ctor_release(x_383, 5); - lean_ctor_release(x_383, 6); - x_400 = x_383; -} else { - lean_dec_ref(x_383); - x_400 = lean_box(0); } -lean_inc(x_56); -lean_inc(x_385); -x_401 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_385, x_56); -lean_inc(x_385); -lean_inc(x_391); -lean_inc(x_395); -lean_inc(x_394); -if (lean_is_scalar(x_400)) { - x_402 = lean_alloc_ctor(0, 7, 0); -} else { - x_402 = x_400; -} -lean_ctor_set(x_402, 0, x_393); -lean_ctor_set(x_402, 1, x_394); -lean_ctor_set(x_402, 2, x_395); -lean_ctor_set(x_402, 3, x_390); -lean_ctor_set(x_402, 4, x_391); -lean_ctor_set(x_402, 5, x_385); -lean_ctor_set(x_402, 6, x_401); -if (lean_is_scalar(x_384)) { - x_403 = lean_alloc_ctor(1, 1, 0); -} else { - x_403 = x_384; -} -lean_ctor_set(x_403, 0, x_402); -x_404 = lean_ctor_get(x_358, 1); -lean_inc(x_404); -lean_dec(x_358); -x_405 = lean_io_promise_resolve(x_403, x_404, x_388); -lean_dec(x_404); -x_406 = lean_ctor_get(x_405, 1); -lean_inc(x_406); -if (lean_is_exclusive(x_405)) { - lean_ctor_release(x_405, 0); - lean_ctor_release(x_405, 1); - x_407 = x_405; -} else { - lean_dec_ref(x_405); - x_407 = lean_box(0); -} -x_408 = lean_ctor_get(x_10, 2); -lean_inc(x_408); -x_449 = lean_unbox(x_46); -if (x_449 == 0) -{ -uint8_t x_450; -lean_dec(x_408); -lean_dec(x_398); -lean_dec(x_385); -x_450 = 0; -x_409 = x_450; -goto block_448; } else { -lean_object* x_451; uint8_t x_452; -x_451 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_408, x_385, x_398); -lean_dec(x_408); -x_452 = lean_unbox(x_451); -lean_dec(x_451); -x_409 = x_452; -goto block_448; +lean_object* x_300; lean_object* x_301; lean_object* x_302; +x_300 = lean_box(0); +x_301 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_301, 0, x_300); +lean_ctor_set(x_301, 1, x_278); +if (lean_is_scalar(x_264)) { + x_302 = lean_alloc_ctor(1, 1, 0); +} else { + x_302 = x_264; } -block_448: -{ -lean_object* x_410; lean_object* x_419; -if (lean_obj_tag(x_391) == 0) -{ -lean_dec(x_397); -lean_dec(x_396); -lean_dec(x_46); -if (x_409 == 0) +lean_ctor_set(x_302, 0, x_301); +if (lean_obj_tag(x_275) == 0) { -lean_dec(x_399); -lean_dec(x_389); -x_410 = x_347; -goto block_418; +lean_object* x_303; lean_object* x_304; +lean_dec(x_276); +x_303 = 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_1); +x_304 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_250, x_251, x_252, x_39, x_43, x_249, x_71, x_253, x_58, x_46, x_302, x_253, x_281, x_288, x_303, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_304; +goto block_33; } else { -lean_dec(x_407); -lean_dec(x_392); -lean_dec(x_371); -lean_dec(x_359); -x_419 = x_347; -goto block_430; -} +if (lean_obj_tag(x_276) == 0) +{ +lean_object* x_305; lean_object* x_306; +lean_dec(x_275); +x_305 = 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_1); +x_306 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_250, x_251, x_252, x_39, x_43, x_249, x_71, x_253, x_58, x_46, x_302, x_253, x_281, x_288, x_305, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_306; +goto block_33; } else { -lean_object* x_431; uint8_t x_432; -if (lean_is_exclusive(x_391)) { - lean_ctor_release(x_391, 0); - x_431 = x_391; +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; +x_307 = lean_ctor_get(x_275, 0); +lean_inc(x_307); +lean_dec(x_275); +x_308 = lean_ctor_get(x_276, 0); +lean_inc(x_308); +if (lean_is_exclusive(x_276)) { + lean_ctor_release(x_276, 0); + x_309 = x_276; } else { - lean_dec_ref(x_391); - x_431 = lean_box(0); + lean_dec_ref(x_276); + x_309 = lean_box(0); } -x_432 = lean_unbox(x_46); -lean_dec(x_46); -if (x_432 == 0) -{ -lean_object* x_433; lean_object* x_434; -lean_dec(x_397); -lean_dec(x_396); -lean_inc(x_68); -x_433 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_433, 0, x_347); -lean_ctor_set(x_433, 1, x_68); -if (lean_is_scalar(x_431)) { - x_434 = lean_alloc_ctor(1, 1, 0); +x_310 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_310, 0, x_307); +lean_ctor_set(x_310, 1, x_308); +if (lean_is_scalar(x_309)) { + x_311 = lean_alloc_ctor(1, 1, 0); } else { - x_434 = x_431; + x_311 = x_309; } -lean_ctor_set(x_434, 0, x_433); -if (x_409 == 0) -{ -lean_dec(x_399); -lean_dec(x_389); -x_410 = x_434; -goto block_418; +lean_ctor_set(x_311, 0, x_310); +x_312 = 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_1); +x_313 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_250, x_251, x_252, x_39, x_43, x_249, x_71, x_253, x_58, x_46, x_302, x_311, x_281, x_288, x_312, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_313; +goto block_33; } -else -{ -lean_dec(x_407); -lean_dec(x_392); -lean_dec(x_371); -lean_dec(x_359); -x_419 = x_434; -goto block_430; } } -else -{ -if (lean_obj_tag(x_396) == 0) -{ -lean_object* x_435; lean_object* x_436; -lean_dec(x_397); -lean_inc(x_68); -x_435 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_435, 0, x_347); -lean_ctor_set(x_435, 1, x_68); -if (lean_is_scalar(x_431)) { - x_436 = lean_alloc_ctor(1, 1, 0); -} else { - x_436 = x_431; } -lean_ctor_set(x_436, 0, x_435); -if (x_409 == 0) -{ -lean_dec(x_399); -lean_dec(x_389); -x_410 = x_436; -goto block_418; } -else -{ -lean_dec(x_407); -lean_dec(x_392); -lean_dec(x_371); -lean_dec(x_359); -x_419 = x_436; -goto block_430; } } -else -{ -lean_dec(x_431); -if (lean_obj_tag(x_397) == 0) -{ -lean_object* x_437; lean_object* x_438; lean_object* x_439; -if (lean_is_exclusive(x_396)) { - lean_ctor_release(x_396, 0); - x_437 = x_396; -} else { - lean_dec_ref(x_396); - x_437 = lean_box(0); } -lean_inc(x_68); -x_438 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_438, 0, x_347); -lean_ctor_set(x_438, 1, x_68); -if (lean_is_scalar(x_437)) { - x_439 = lean_alloc_ctor(1, 1, 0); -} else { - x_439 = x_437; } -lean_ctor_set(x_439, 0, x_438); -if (x_409 == 0) -{ -lean_dec(x_399); -lean_dec(x_389); -x_410 = x_439; -goto block_418; } else { -lean_dec(x_407); -lean_dec(x_392); -lean_dec(x_371); -lean_dec(x_359); -x_419 = x_439; -goto block_430; -} +lean_object* x_314; lean_object* x_315; lean_object* x_316; lean_object* x_317; lean_object* x_318; lean_object* x_319; uint8_t x_320; +lean_dec(x_43); +x_314 = lean_array_fget(x_61, x_62); +x_315 = lean_nat_add(x_62, x_59); +lean_dec(x_62); +x_316 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_316, 0, x_61); +lean_ctor_set(x_316, 1, x_315); +lean_ctor_set(x_316, 2, x_63); +x_317 = lean_ctor_get(x_40, 0); +lean_inc(x_317); +x_318 = lean_ctor_get(x_40, 1); +lean_inc(x_318); +x_319 = lean_ctor_get(x_40, 2); +lean_inc(x_319); +x_320 = lean_nat_dec_lt(x_318, x_319); +if (x_320 == 0) +{ +lean_object* x_321; lean_object* x_322; +lean_dec(x_319); +lean_dec(x_318); +lean_dec(x_317); +lean_dec(x_314); +lean_dec(x_58); +lean_dec(x_15); +lean_ctor_set(x_34, 0, x_316); +x_321 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_321, 0, x_5); +x_322 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_322, 0, x_321); +lean_ctor_set(x_322, 1, x_12); +x_16 = x_322; +goto block_33; } else { -lean_object* x_440; lean_object* x_441; lean_object* x_442; lean_object* x_443; lean_object* x_444; lean_object* x_445; lean_object* x_446; lean_object* x_447; -x_440 = lean_ctor_get(x_396, 0); -lean_inc(x_440); -if (lean_is_exclusive(x_396)) { - lean_ctor_release(x_396, 0); - x_441 = x_396; -} else { - lean_dec_ref(x_396); - x_441 = lean_box(0); -} -x_442 = lean_ctor_get(x_397, 0); -lean_inc(x_442); -if (lean_is_exclusive(x_397)) { - lean_ctor_release(x_397, 0); - x_443 = x_397; -} else { - lean_dec_ref(x_397); - x_443 = lean_box(0); -} -x_444 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_444, 0, x_440); -lean_ctor_set(x_444, 1, x_442); -if (lean_is_scalar(x_443)) { - x_445 = lean_alloc_ctor(1, 1, 0); +lean_object* x_323; lean_object* x_324; lean_object* x_325; lean_object* x_326; lean_object* x_327; lean_object* x_328; lean_object* x_329; lean_object* x_330; lean_object* x_331; +lean_free_object(x_38); +lean_free_object(x_34); +lean_free_object(x_5); +lean_free_object(x_35); +if (lean_is_exclusive(x_40)) { + lean_ctor_release(x_40, 0); + lean_ctor_release(x_40, 1); + lean_ctor_release(x_40, 2); + x_323 = x_40; } else { - x_445 = x_443; + lean_dec_ref(x_40); + x_323 = lean_box(0); } -lean_ctor_set(x_445, 0, x_444); -lean_inc(x_68); -x_446 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_446, 0, x_445); -lean_ctor_set(x_446, 1, x_68); -if (lean_is_scalar(x_441)) { - x_447 = lean_alloc_ctor(1, 1, 0); +x_324 = lean_array_fget(x_317, x_318); +x_325 = lean_nat_add(x_318, x_59); +lean_dec(x_318); +if (lean_is_scalar(x_323)) { + x_326 = lean_alloc_ctor(0, 3, 0); } else { - x_447 = x_441; + x_326 = x_323; } -lean_ctor_set(x_447, 0, x_446); -if (x_409 == 0) +lean_ctor_set(x_326, 0, x_317); +lean_ctor_set(x_326, 1, x_325); +lean_ctor_set(x_326, 2, x_319); +x_327 = lean_ctor_get(x_324, 0); +lean_inc(x_327); +x_328 = lean_ctor_get(x_324, 1); +lean_inc(x_328); +x_329 = lean_ctor_get(x_324, 2); +lean_inc(x_329); +lean_dec(x_324); +x_330 = lean_box(0); +x_331 = lean_ctor_get(x_15, 7); +lean_inc(x_331); +if (lean_obj_tag(x_331) == 0) { -lean_dec(x_399); -lean_dec(x_389); -x_410 = x_447; -goto block_418; +lean_object* x_332; uint8_t x_333; lean_object* x_334; +x_332 = lean_box(0); +x_333 = lean_unbox(x_47); +lean_dec(x_47); +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_334 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_327, x_328, x_329, x_39, x_316, x_326, x_314, x_330, x_58, x_46, x_330, x_330, x_330, x_333, x_332, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_334; +goto block_33; } else { -lean_dec(x_407); -lean_dec(x_392); -lean_dec(x_371); -lean_dec(x_359); -x_419 = x_447; -goto block_430; -} -} -} -} -} -block_418: +lean_object* x_335; lean_object* x_336; +x_335 = lean_ctor_get(x_331, 0); +lean_inc(x_335); +lean_dec(x_331); +x_336 = lean_ctor_get(x_335, 0); +lean_inc(x_336); +lean_dec(x_335); +if (lean_obj_tag(x_336) == 0) { -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_inc(x_56); -if (lean_is_scalar(x_407)) { - x_411 = lean_alloc_ctor(0, 2, 0); -} else { - x_411 = x_407; -} -lean_ctor_set(x_411, 0, x_347); -lean_ctor_set(x_411, 1, x_56); -if (lean_is_scalar(x_371)) { - x_412 = lean_alloc_ctor(1, 1, 0); -} else { - x_412 = x_371; -} -lean_ctor_set(x_412, 0, x_411); -lean_inc(x_15); -x_413 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_413, 0, x_15); -lean_ctor_set(x_413, 1, x_394); -lean_ctor_set(x_413, 2, x_410); -lean_ctor_set(x_413, 3, x_412); -if (lean_is_scalar(x_392)) { - x_414 = lean_alloc_ctor(0, 2, 0); -} else { - x_414 = x_392; +uint8_t x_337; lean_object* x_338; lean_object* x_339; +lean_dec(x_47); +x_337 = 0; +x_338 = 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_1); +x_339 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_327, x_328, x_329, x_39, x_316, x_326, x_314, x_330, x_58, x_46, x_330, x_330, x_330, x_337, x_338, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_339; +goto block_33; } -lean_ctor_set(x_414, 0, x_413); -lean_ctor_set(x_414, 1, x_395); -if (lean_is_scalar(x_359)) { - x_415 = lean_alloc_ctor(1, 1, 0); +else +{ +lean_object* x_340; lean_object* x_341; lean_object* x_342; lean_object* x_343; +x_340 = lean_ctor_get(x_336, 0); +lean_inc(x_340); +if (lean_is_exclusive(x_336)) { + lean_ctor_release(x_336, 0); + x_341 = x_336; } else { - x_415 = x_359; + lean_dec_ref(x_336); + x_341 = lean_box(0); } -lean_ctor_set(x_415, 0, x_414); -x_416 = lean_box(0); +x_342 = lean_ctor_get(x_340, 1); +lean_inc(x_342); +lean_dec(x_340); +x_343 = l_Lean_Language_SnapshotTask_get___rarg(x_342); +if (lean_obj_tag(x_343) == 0) +{ +uint8_t x_344; lean_object* x_345; lean_object* x_346; +lean_dec(x_341); +lean_dec(x_47); +x_344 = 0; +x_345 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -10840,41 +10636,65 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_417 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_344, x_345, x_346, x_38, x_42, x_343, x_45, x_415, x_409, x_416, x_6, x_7, x_8, x_9, x_10, x_11, x_406); -x_25 = x_417; -goto block_32; +x_346 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_327, x_328, x_329, x_39, x_316, x_326, x_314, x_330, x_58, x_46, x_330, x_330, x_330, x_344, x_345, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_346; +goto block_33; } -block_430: +else { -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_429; -x_420 = lean_box(0); -if (lean_is_scalar(x_389)) { - x_421 = lean_alloc_ctor(0, 2, 0); +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_355; lean_object* x_356; lean_object* x_357; lean_object* x_358; uint8_t x_359; +x_347 = lean_ctor_get(x_343, 0); +lean_inc(x_347); +if (lean_is_exclusive(x_343)) { + lean_ctor_release(x_343, 0); + x_348 = x_343; } else { - x_421 = x_389; + lean_dec_ref(x_343); + x_348 = lean_box(0); } -lean_ctor_set(x_421, 0, x_420); -lean_ctor_set(x_421, 1, x_399); -x_422 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_422, 0, x_421); -lean_inc(x_56); -x_423 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_423, 0, x_422); -lean_ctor_set(x_423, 1, x_56); -x_424 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_424, 0, x_423); +x_349 = lean_ctor_get(x_10, 2); +lean_inc(x_349); +x_350 = lean_ctor_get(x_347, 1); +lean_inc(x_350); +x_351 = lean_ctor_get(x_347, 2); +lean_inc(x_351); +x_352 = lean_ctor_get(x_347, 3); +lean_inc(x_352); +x_353 = lean_ctor_get(x_347, 4); +lean_inc(x_353); +x_354 = lean_ctor_get(x_347, 5); +lean_inc(x_354); +x_355 = lean_ctor_get(x_347, 6); +lean_inc(x_355); +lean_dec(x_347); lean_inc(x_15); -x_425 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_425, 0, x_15); -lean_ctor_set(x_425, 1, x_394); -lean_ctor_set(x_425, 2, x_419); -lean_ctor_set(x_425, 3, x_424); -x_426 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_426, 0, x_425); -lean_ctor_set(x_426, 1, x_395); -x_427 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_427, 0, x_426); -x_428 = lean_box(0); +x_356 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_356, 0, x_15); +lean_ctor_set(x_356, 1, x_350); +lean_ctor_set(x_356, 2, x_330); +lean_ctor_set(x_356, 3, x_330); +x_357 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_357, 0, x_356); +lean_ctor_set(x_357, 1, x_351); +if (lean_is_scalar(x_348)) { + x_358 = lean_alloc_ctor(1, 1, 0); +} else { + x_358 = x_348; +} +lean_ctor_set(x_358, 0, x_357); +x_359 = lean_unbox(x_47); +lean_dec(x_47); +if (x_359 == 0) +{ +uint8_t x_360; lean_object* x_361; lean_object* x_362; +lean_dec(x_355); +lean_dec(x_354); +lean_dec(x_353); +lean_dec(x_352); +lean_dec(x_349); +lean_dec(x_341); +x_360 = 0; +x_361 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -10882,94 +10702,46 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_429 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_68, x_344, x_345, x_346, x_38, x_42, x_343, x_45, x_427, x_409, x_428, x_6, x_7, x_8, x_9, x_10, x_11, x_406); -x_25 = x_429; -goto block_32; -} -} -} -} -} -} -} +x_362 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_327, x_328, x_329, x_39, x_316, x_326, x_314, x_330, x_58, x_46, x_330, x_330, x_358, x_360, x_361, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_362; +goto block_33; } else { -lean_object* x_453; lean_object* x_454; lean_object* x_455; lean_object* x_456; lean_object* x_457; lean_object* x_458; uint8_t x_459; -lean_dec(x_42); -x_453 = lean_array_fget(x_59, x_60); -x_454 = lean_nat_add(x_60, x_57); -lean_dec(x_60); -x_455 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_455, 0, x_59); -lean_ctor_set(x_455, 1, x_454); -lean_ctor_set(x_455, 2, x_61); -x_456 = lean_ctor_get(x_39, 0); -lean_inc(x_456); -x_457 = lean_ctor_get(x_39, 1); -lean_inc(x_457); -x_458 = lean_ctor_get(x_39, 2); -lean_inc(x_458); -x_459 = lean_nat_dec_lt(x_457, x_458); -if (x_459 == 0) -{ -lean_object* x_460; -lean_dec(x_458); -lean_dec(x_457); -lean_dec(x_456); -lean_dec(x_453); -lean_dec(x_56); -lean_dec(x_15); -lean_ctor_set(x_33, 0, x_455); -x_460 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_460, 0, x_5); -x_16 = x_460; -x_17 = x_12; -goto block_24; +lean_object* x_363; lean_object* x_364; uint8_t x_365; +x_363 = lean_ctor_get(x_15, 6); +lean_inc(x_363); +x_364 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_349, x_363, x_354); +lean_dec(x_349); +x_365 = lean_unbox(x_364); +lean_dec(x_364); +if (x_365 == 0) +{ +lean_dec(x_355); +lean_dec(x_341); +if (lean_obj_tag(x_352) == 0) +{ +lean_object* x_366; lean_object* x_367; +lean_dec(x_353); +x_366 = 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_1); +x_367 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_327, x_328, x_329, x_39, x_316, x_326, x_314, x_330, x_58, x_46, x_330, x_330, x_358, x_365, x_366, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_367; +goto block_33; } else { -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_free_object(x_37); -lean_free_object(x_33); -lean_free_object(x_5); -lean_free_object(x_34); -if (lean_is_exclusive(x_39)) { - lean_ctor_release(x_39, 0); - lean_ctor_release(x_39, 1); - lean_ctor_release(x_39, 2); - x_461 = x_39; -} else { - lean_dec_ref(x_39); - x_461 = lean_box(0); -} -x_462 = lean_array_fget(x_456, x_457); -x_463 = lean_nat_add(x_457, x_57); -lean_dec(x_457); -if (lean_is_scalar(x_461)) { - x_464 = lean_alloc_ctor(0, 3, 0); -} else { - x_464 = x_461; -} -lean_ctor_set(x_464, 0, x_456); -lean_ctor_set(x_464, 1, x_463); -lean_ctor_set(x_464, 2, x_458); -x_465 = lean_ctor_get(x_462, 0); -lean_inc(x_465); -x_466 = lean_ctor_get(x_462, 1); -lean_inc(x_466); -x_467 = lean_ctor_get(x_462, 2); -lean_inc(x_467); -lean_dec(x_462); -x_468 = lean_box(0); -x_469 = lean_ctor_get(x_15, 7); -lean_inc(x_469); -if (lean_obj_tag(x_469) == 0) +if (lean_obj_tag(x_353) == 0) { -lean_object* x_470; uint8_t x_471; lean_object* x_472; -x_470 = lean_box(0); -x_471 = lean_unbox(x_46); -lean_dec(x_46); +lean_object* x_368; lean_object* x_369; +lean_dec(x_352); +x_368 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -10977,73 +10749,66 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_472 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_453, x_465, x_466, x_467, x_38, x_455, x_464, x_45, x_468, x_471, x_470, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_472) == 0) -{ -lean_object* x_473; lean_object* x_474; -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_16 = x_473; -x_17 = x_474; -goto block_24; +x_369 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_327, x_328, x_329, x_39, x_316, x_326, x_314, x_330, x_58, x_46, x_330, x_330, x_358, x_365, x_368, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_369; +goto block_33; } else { -lean_object* x_475; lean_object* x_476; lean_object* x_477; lean_object* x_478; -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_475 = lean_ctor_get(x_472, 0); -lean_inc(x_475); -x_476 = lean_ctor_get(x_472, 1); -lean_inc(x_476); -if (lean_is_exclusive(x_472)) { - lean_ctor_release(x_472, 0); - lean_ctor_release(x_472, 1); - x_477 = x_472; +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; +x_370 = lean_ctor_get(x_352, 0); +lean_inc(x_370); +lean_dec(x_352); +x_371 = lean_ctor_get(x_353, 0); +lean_inc(x_371); +if (lean_is_exclusive(x_353)) { + lean_ctor_release(x_353, 0); + x_372 = x_353; } else { - lean_dec_ref(x_472); - x_477 = lean_box(0); + lean_dec_ref(x_353); + x_372 = lean_box(0); } -if (lean_is_scalar(x_477)) { - x_478 = lean_alloc_ctor(1, 2, 0); +x_373 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_373, 0, x_370); +lean_ctor_set(x_373, 1, x_371); +if (lean_is_scalar(x_372)) { + x_374 = lean_alloc_ctor(1, 1, 0); } else { - x_478 = x_477; + x_374 = x_372; +} +lean_ctor_set(x_374, 0, x_373); +x_375 = 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_1); +x_376 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_327, x_328, x_329, x_39, x_316, x_326, x_314, x_330, x_58, x_46, x_330, x_374, x_358, x_365, x_375, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_376; +goto block_33; } -lean_ctor_set(x_478, 0, x_475); -lean_ctor_set(x_478, 1, x_476); -return x_478; } } else { -lean_object* x_479; lean_object* x_480; lean_object* x_481; -x_479 = lean_ctor_get(x_469, 0); -lean_inc(x_479); -if (lean_is_exclusive(x_469)) { - lean_ctor_release(x_469, 0); - x_480 = x_469; +lean_object* x_377; lean_object* x_378; lean_object* x_379; +x_377 = lean_box(0); +x_378 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_378, 0, x_377); +lean_ctor_set(x_378, 1, x_355); +if (lean_is_scalar(x_341)) { + x_379 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_469); - x_480 = lean_box(0); + x_379 = x_341; } -x_481 = lean_ctor_get(x_479, 0); -lean_inc(x_481); -if (lean_obj_tag(x_481) == 0) +lean_ctor_set(x_379, 0, x_378); +if (lean_obj_tag(x_352) == 0) { -uint8_t x_482; lean_object* x_483; lean_object* x_484; -lean_dec(x_480); -lean_dec(x_479); -lean_dec(x_46); -x_482 = 0; -x_483 = lean_box(0); +lean_object* x_380; lean_object* x_381; +lean_dec(x_353); +x_380 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -11051,76 +10816,17 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_484 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_453, x_465, x_466, x_467, x_38, x_455, x_464, x_45, x_468, x_482, x_483, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_484) == 0) -{ -lean_object* x_485; lean_object* x_486; -x_485 = lean_ctor_get(x_484, 0); -lean_inc(x_485); -x_486 = lean_ctor_get(x_484, 1); -lean_inc(x_486); -lean_dec(x_484); -x_16 = x_485; -x_17 = x_486; -goto block_24; -} -else -{ -lean_object* x_487; lean_object* x_488; lean_object* x_489; lean_object* x_490; -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_487 = lean_ctor_get(x_484, 0); -lean_inc(x_487); -x_488 = lean_ctor_get(x_484, 1); -lean_inc(x_488); -if (lean_is_exclusive(x_484)) { - lean_ctor_release(x_484, 0); - lean_ctor_release(x_484, 1); - x_489 = x_484; -} else { - lean_dec_ref(x_484); - x_489 = lean_box(0); -} -if (lean_is_scalar(x_489)) { - x_490 = lean_alloc_ctor(1, 2, 0); -} else { - x_490 = x_489; -} -lean_ctor_set(x_490, 0, x_487); -lean_ctor_set(x_490, 1, x_488); -return x_490; -} +x_381 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_327, x_328, x_329, x_39, x_316, x_326, x_314, x_330, x_58, x_46, x_379, x_330, x_358, x_365, x_380, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_381; +goto block_33; } else { -lean_object* x_491; lean_object* x_492; lean_object* x_493; lean_object* x_494; -x_491 = lean_ctor_get(x_481, 0); -lean_inc(x_491); -if (lean_is_exclusive(x_481)) { - lean_ctor_release(x_481, 0); - x_492 = x_481; -} else { - lean_dec_ref(x_481); - x_492 = lean_box(0); -} -x_493 = lean_ctor_get(x_491, 1); -lean_inc(x_493); -lean_dec(x_491); -x_494 = l_Lean_Language_SnapshotTask_get___rarg(x_493); -if (lean_obj_tag(x_494) == 0) +if (lean_obj_tag(x_353) == 0) { -uint8_t x_495; lean_object* x_496; lean_object* x_497; -lean_dec(x_492); -lean_dec(x_480); -lean_dec(x_479); -lean_dec(x_46); -x_495 = 0; -x_496 = lean_box(0); +lean_object* x_382; lean_object* x_383; +lean_dec(x_352); +x_382 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -11128,421 +10834,357 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_497 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_453, x_465, x_466, x_467, x_38, x_455, x_464, x_45, x_468, x_495, x_496, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_497) == 0) -{ -lean_object* x_498; lean_object* x_499; -x_498 = lean_ctor_get(x_497, 0); -lean_inc(x_498); -x_499 = lean_ctor_get(x_497, 1); -lean_inc(x_499); -lean_dec(x_497); -x_16 = x_498; -x_17 = x_499; -goto block_24; +x_383 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_327, x_328, x_329, x_39, x_316, x_326, x_314, x_330, x_58, x_46, x_379, x_330, x_358, x_365, x_382, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_383; +goto block_33; } else { -lean_object* x_500; lean_object* x_501; lean_object* x_502; lean_object* x_503; -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_500 = lean_ctor_get(x_497, 0); -lean_inc(x_500); -x_501 = lean_ctor_get(x_497, 1); -lean_inc(x_501); -if (lean_is_exclusive(x_497)) { - lean_ctor_release(x_497, 0); - lean_ctor_release(x_497, 1); - x_502 = x_497; +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; +x_384 = lean_ctor_get(x_352, 0); +lean_inc(x_384); +lean_dec(x_352); +x_385 = lean_ctor_get(x_353, 0); +lean_inc(x_385); +if (lean_is_exclusive(x_353)) { + lean_ctor_release(x_353, 0); + x_386 = x_353; } else { - lean_dec_ref(x_497); - x_502 = lean_box(0); + lean_dec_ref(x_353); + x_386 = lean_box(0); } -if (lean_is_scalar(x_502)) { - x_503 = lean_alloc_ctor(1, 2, 0); +x_387 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_387, 0, x_384); +lean_ctor_set(x_387, 1, x_385); +if (lean_is_scalar(x_386)) { + x_388 = lean_alloc_ctor(1, 1, 0); } else { - x_503 = x_502; + x_388 = x_386; +} +lean_ctor_set(x_388, 0, x_387); +x_389 = 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_1); +x_390 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_327, x_328, x_329, x_39, x_316, x_326, x_314, x_330, x_58, x_46, x_379, x_388, x_358, x_365, x_389, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_390; +goto block_33; +} +} +} } -lean_ctor_set(x_503, 0, x_500); -lean_ctor_set(x_503, 1, x_501); -return x_503; } } -else -{ -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; lean_object* x_529; uint8_t x_530; uint8_t x_570; -x_504 = lean_ctor_get(x_494, 0); -lean_inc(x_504); -if (lean_is_exclusive(x_494)) { - lean_ctor_release(x_494, 0); - x_505 = x_494; -} else { - lean_dec_ref(x_494); - x_505 = lean_box(0); } -x_506 = lean_ctor_get(x_15, 6); -lean_inc(x_506); -lean_inc(x_453); -lean_inc(x_506); -x_507 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_506, x_453, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -x_508 = lean_ctor_get(x_507, 0); -lean_inc(x_508); -x_509 = lean_ctor_get(x_507, 1); -lean_inc(x_509); -if (lean_is_exclusive(x_507)) { - lean_ctor_release(x_507, 0); - lean_ctor_release(x_507, 1); - x_510 = x_507; -} else { - lean_dec_ref(x_507); - x_510 = lean_box(0); -} -x_511 = lean_ctor_get(x_508, 0); -lean_inc(x_511); -x_512 = lean_ctor_get(x_508, 1); -lean_inc(x_512); -if (lean_is_exclusive(x_508)) { - lean_ctor_release(x_508, 0); - lean_ctor_release(x_508, 1); - x_513 = x_508; -} else { - lean_dec_ref(x_508); - x_513 = lean_box(0); -} -x_514 = lean_ctor_get(x_504, 0); -lean_inc(x_514); -x_515 = lean_ctor_get(x_504, 1); -lean_inc(x_515); -x_516 = lean_ctor_get(x_504, 2); -lean_inc(x_516); -x_517 = lean_ctor_get(x_504, 3); -lean_inc(x_517); -x_518 = lean_ctor_get(x_504, 4); -lean_inc(x_518); -x_519 = lean_ctor_get(x_504, 5); -lean_inc(x_519); -x_520 = lean_ctor_get(x_504, 6); -lean_inc(x_520); -if (lean_is_exclusive(x_504)) { - lean_ctor_release(x_504, 0); - lean_ctor_release(x_504, 1); - lean_ctor_release(x_504, 2); - lean_ctor_release(x_504, 3); - lean_ctor_release(x_504, 4); - lean_ctor_release(x_504, 5); - lean_ctor_release(x_504, 6); - x_521 = x_504; -} else { - lean_dec_ref(x_504); - x_521 = lean_box(0); } -lean_inc(x_56); -lean_inc(x_506); -x_522 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_506, x_56); -lean_inc(x_506); -lean_inc(x_512); -lean_inc(x_516); -lean_inc(x_515); -if (lean_is_scalar(x_521)) { - x_523 = lean_alloc_ctor(0, 7, 0); -} else { - x_523 = x_521; -} -lean_ctor_set(x_523, 0, x_514); -lean_ctor_set(x_523, 1, x_515); -lean_ctor_set(x_523, 2, x_516); -lean_ctor_set(x_523, 3, x_511); -lean_ctor_set(x_523, 4, x_512); -lean_ctor_set(x_523, 5, x_506); -lean_ctor_set(x_523, 6, x_522); -if (lean_is_scalar(x_505)) { - x_524 = lean_alloc_ctor(1, 1, 0); -} else { - x_524 = x_505; -} -lean_ctor_set(x_524, 0, x_523); -x_525 = lean_ctor_get(x_479, 1); -lean_inc(x_525); -lean_dec(x_479); -x_526 = lean_io_promise_resolve(x_524, x_525, x_509); -lean_dec(x_525); -x_527 = lean_ctor_get(x_526, 1); -lean_inc(x_527); -if (lean_is_exclusive(x_526)) { - lean_ctor_release(x_526, 0); - lean_ctor_release(x_526, 1); - x_528 = x_526; -} else { - lean_dec_ref(x_526); - x_528 = lean_box(0); -} -x_529 = lean_ctor_get(x_10, 2); -lean_inc(x_529); -x_570 = lean_unbox(x_46); -if (x_570 == 0) -{ -uint8_t x_571; -lean_dec(x_529); -lean_dec(x_519); -lean_dec(x_506); -x_571 = 0; -x_530 = x_571; -goto block_569; } -else -{ -lean_object* x_572; uint8_t x_573; -x_572 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_529, x_506, x_519); -lean_dec(x_529); -x_573 = lean_unbox(x_572); -lean_dec(x_572); -x_530 = x_573; -goto block_569; } -block_569: -{ -lean_object* x_531; lean_object* x_540; -if (lean_obj_tag(x_512) == 0) -{ -lean_dec(x_518); -lean_dec(x_517); -lean_dec(x_46); -if (x_530 == 0) -{ -lean_dec(x_520); -lean_dec(x_510); -x_531 = x_468; -goto block_539; } else { -lean_dec(x_528); -lean_dec(x_513); -lean_dec(x_492); -lean_dec(x_480); -x_540 = x_468; -goto block_551; -} +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; uint8_t x_398; +lean_dec(x_39); +x_391 = lean_array_fget(x_48, x_49); +x_392 = lean_unsigned_to_nat(1u); +x_393 = lean_nat_add(x_49, x_392); +lean_dec(x_49); +x_394 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_394, 0, x_48); +lean_ctor_set(x_394, 1, x_393); +lean_ctor_set(x_394, 2, x_50); +x_395 = lean_ctor_get(x_43, 0); +lean_inc(x_395); +x_396 = lean_ctor_get(x_43, 1); +lean_inc(x_396); +x_397 = lean_ctor_get(x_43, 2); +lean_inc(x_397); +x_398 = lean_nat_dec_lt(x_396, x_397); +if (x_398 == 0) +{ +lean_object* x_399; lean_object* x_400; +lean_dec(x_397); +lean_dec(x_396); +lean_dec(x_395); +lean_dec(x_391); +lean_dec(x_15); +lean_ctor_set(x_35, 0, x_394); +x_399 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_399, 0, x_5); +x_400 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_400, 0, x_399); +lean_ctor_set(x_400, 1, x_12); +x_16 = x_400; +goto block_33; } else { -lean_object* x_552; uint8_t x_553; -if (lean_is_exclusive(x_512)) { - lean_ctor_release(x_512, 0); - x_552 = x_512; +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; uint8_t x_408; +if (lean_is_exclusive(x_43)) { + lean_ctor_release(x_43, 0); + lean_ctor_release(x_43, 1); + lean_ctor_release(x_43, 2); + x_401 = x_43; } else { - lean_dec_ref(x_512); - x_552 = lean_box(0); + lean_dec_ref(x_43); + x_401 = lean_box(0); } -x_553 = lean_unbox(x_46); -lean_dec(x_46); -if (x_553 == 0) -{ -lean_object* x_554; lean_object* x_555; -lean_dec(x_518); -lean_dec(x_517); -lean_inc(x_453); -x_554 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_554, 0, x_468); -lean_ctor_set(x_554, 1, x_453); -if (lean_is_scalar(x_552)) { - x_555 = lean_alloc_ctor(1, 1, 0); +x_402 = lean_array_fget(x_395, x_396); +x_403 = lean_nat_add(x_396, x_392); +lean_dec(x_396); +if (lean_is_scalar(x_401)) { + x_404 = lean_alloc_ctor(0, 3, 0); } else { - x_555 = x_552; + x_404 = x_401; } -lean_ctor_set(x_555, 0, x_554); -if (x_530 == 0) +lean_ctor_set(x_404, 0, x_395); +lean_ctor_set(x_404, 1, x_403); +lean_ctor_set(x_404, 2, x_397); +x_405 = lean_ctor_get(x_40, 0); +lean_inc(x_405); +x_406 = lean_ctor_get(x_40, 1); +lean_inc(x_406); +x_407 = lean_ctor_get(x_40, 2); +lean_inc(x_407); +x_408 = lean_nat_dec_lt(x_406, x_407); +if (x_408 == 0) { -lean_dec(x_520); -lean_dec(x_510); -x_531 = x_555; -goto block_539; +lean_object* x_409; lean_object* x_410; +lean_dec(x_407); +lean_dec(x_406); +lean_dec(x_405); +lean_dec(x_402); +lean_dec(x_391); +lean_dec(x_15); +lean_ctor_set(x_35, 0, x_394); +lean_ctor_set(x_34, 0, x_404); +x_409 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_409, 0, x_5); +x_410 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_410, 0, x_409); +lean_ctor_set(x_410, 1, x_12); +x_16 = x_410; +goto block_33; } else { -lean_dec(x_528); -lean_dec(x_513); -lean_dec(x_492); -lean_dec(x_480); -x_540 = x_555; -goto block_551; -} +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_free_object(x_38); +lean_free_object(x_34); +lean_free_object(x_5); +lean_free_object(x_35); +if (lean_is_exclusive(x_40)) { + lean_ctor_release(x_40, 0); + lean_ctor_release(x_40, 1); + lean_ctor_release(x_40, 2); + x_411 = x_40; +} else { + lean_dec_ref(x_40); + x_411 = lean_box(0); +} +x_412 = lean_array_fget(x_405, x_406); +x_413 = lean_nat_add(x_406, x_392); +lean_dec(x_406); +if (lean_is_scalar(x_411)) { + x_414 = lean_alloc_ctor(0, 3, 0); +} else { + x_414 = x_411; +} +lean_ctor_set(x_414, 0, x_405); +lean_ctor_set(x_414, 1, x_413); +lean_ctor_set(x_414, 2, x_407); +x_415 = lean_ctor_get(x_412, 0); +lean_inc(x_415); +x_416 = lean_ctor_get(x_412, 1); +lean_inc(x_416); +x_417 = lean_ctor_get(x_412, 2); +lean_inc(x_417); +lean_dec(x_412); +x_418 = lean_box(0); +x_419 = lean_ctor_get(x_15, 7); +lean_inc(x_419); +if (lean_obj_tag(x_419) == 0) +{ +lean_object* x_420; uint8_t x_421; lean_object* x_422; +x_420 = lean_box(0); +x_421 = lean_unbox(x_47); +lean_dec(x_47); +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_422 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_415, x_416, x_417, x_394, x_404, x_414, x_402, x_418, x_391, x_46, x_418, x_418, x_418, x_421, x_420, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_422; +goto block_33; } else { -if (lean_obj_tag(x_517) == 0) -{ -lean_object* x_556; lean_object* x_557; -lean_dec(x_518); -lean_inc(x_453); -x_556 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_556, 0, x_468); -lean_ctor_set(x_556, 1, x_453); -if (lean_is_scalar(x_552)) { - x_557 = lean_alloc_ctor(1, 1, 0); -} else { - x_557 = x_552; -} -lean_ctor_set(x_557, 0, x_556); -if (x_530 == 0) +lean_object* x_423; lean_object* x_424; +x_423 = lean_ctor_get(x_419, 0); +lean_inc(x_423); +lean_dec(x_419); +x_424 = lean_ctor_get(x_423, 0); +lean_inc(x_424); +lean_dec(x_423); +if (lean_obj_tag(x_424) == 0) { -lean_dec(x_520); -lean_dec(x_510); -x_531 = x_557; -goto block_539; +uint8_t x_425; lean_object* x_426; lean_object* x_427; +lean_dec(x_47); +x_425 = 0; +x_426 = 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_1); +x_427 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_415, x_416, x_417, x_394, x_404, x_414, x_402, x_418, x_391, x_46, x_418, x_418, x_418, x_425, x_426, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_427; +goto block_33; } else { -lean_dec(x_528); -lean_dec(x_513); -lean_dec(x_492); -lean_dec(x_480); -x_540 = x_557; -goto block_551; +lean_object* x_428; lean_object* x_429; lean_object* x_430; lean_object* x_431; +x_428 = lean_ctor_get(x_424, 0); +lean_inc(x_428); +if (lean_is_exclusive(x_424)) { + lean_ctor_release(x_424, 0); + x_429 = x_424; +} else { + lean_dec_ref(x_424); + x_429 = lean_box(0); } +x_430 = lean_ctor_get(x_428, 1); +lean_inc(x_430); +lean_dec(x_428); +x_431 = l_Lean_Language_SnapshotTask_get___rarg(x_430); +if (lean_obj_tag(x_431) == 0) +{ +uint8_t x_432; lean_object* x_433; lean_object* x_434; +lean_dec(x_429); +lean_dec(x_47); +x_432 = 0; +x_433 = 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_1); +x_434 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_415, x_416, x_417, x_394, x_404, x_414, x_402, x_418, x_391, x_46, x_418, x_418, x_418, x_432, x_433, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_434; +goto block_33; } else { -lean_dec(x_552); -if (lean_obj_tag(x_518) == 0) -{ -lean_object* x_558; lean_object* x_559; lean_object* x_560; -if (lean_is_exclusive(x_517)) { - lean_ctor_release(x_517, 0); - x_558 = x_517; +lean_object* x_435; lean_object* x_436; lean_object* x_437; lean_object* x_438; lean_object* x_439; lean_object* x_440; lean_object* x_441; lean_object* x_442; lean_object* x_443; lean_object* x_444; lean_object* x_445; lean_object* x_446; uint8_t x_447; +x_435 = lean_ctor_get(x_431, 0); +lean_inc(x_435); +if (lean_is_exclusive(x_431)) { + lean_ctor_release(x_431, 0); + x_436 = x_431; } else { - lean_dec_ref(x_517); - x_558 = lean_box(0); + lean_dec_ref(x_431); + x_436 = lean_box(0); } -lean_inc(x_453); -x_559 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_559, 0, x_468); -lean_ctor_set(x_559, 1, x_453); -if (lean_is_scalar(x_558)) { - x_560 = lean_alloc_ctor(1, 1, 0); +x_437 = lean_ctor_get(x_10, 2); +lean_inc(x_437); +x_438 = lean_ctor_get(x_435, 1); +lean_inc(x_438); +x_439 = lean_ctor_get(x_435, 2); +lean_inc(x_439); +x_440 = lean_ctor_get(x_435, 3); +lean_inc(x_440); +x_441 = lean_ctor_get(x_435, 4); +lean_inc(x_441); +x_442 = lean_ctor_get(x_435, 5); +lean_inc(x_442); +x_443 = lean_ctor_get(x_435, 6); +lean_inc(x_443); +lean_dec(x_435); +lean_inc(x_15); +x_444 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_444, 0, x_15); +lean_ctor_set(x_444, 1, x_438); +lean_ctor_set(x_444, 2, x_418); +lean_ctor_set(x_444, 3, x_418); +x_445 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_445, 0, x_444); +lean_ctor_set(x_445, 1, x_439); +if (lean_is_scalar(x_436)) { + x_446 = lean_alloc_ctor(1, 1, 0); } else { - x_560 = x_558; + x_446 = x_436; } -lean_ctor_set(x_560, 0, x_559); -if (x_530 == 0) -{ -lean_dec(x_520); -lean_dec(x_510); -x_531 = x_560; -goto block_539; +lean_ctor_set(x_446, 0, x_445); +x_447 = lean_unbox(x_47); +lean_dec(x_47); +if (x_447 == 0) +{ +uint8_t x_448; lean_object* x_449; lean_object* x_450; +lean_dec(x_443); +lean_dec(x_442); +lean_dec(x_441); +lean_dec(x_440); +lean_dec(x_437); +lean_dec(x_429); +x_448 = 0; +x_449 = 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_1); +x_450 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_415, x_416, x_417, x_394, x_404, x_414, x_402, x_418, x_391, x_46, x_418, x_418, x_446, x_448, x_449, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_450; +goto block_33; } else { -lean_dec(x_528); -lean_dec(x_513); -lean_dec(x_492); -lean_dec(x_480); -x_540 = x_560; -goto block_551; -} -} -else +lean_object* x_451; lean_object* x_452; uint8_t x_453; +x_451 = lean_ctor_get(x_15, 6); +lean_inc(x_451); +x_452 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_437, x_451, x_442); +lean_dec(x_437); +x_453 = lean_unbox(x_452); +lean_dec(x_452); +if (x_453 == 0) { -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_517, 0); -lean_inc(x_561); -if (lean_is_exclusive(x_517)) { - lean_ctor_release(x_517, 0); - x_562 = x_517; -} else { - lean_dec_ref(x_517); - x_562 = lean_box(0); -} -x_563 = lean_ctor_get(x_518, 0); -lean_inc(x_563); -if (lean_is_exclusive(x_518)) { - lean_ctor_release(x_518, 0); - x_564 = x_518; -} else { - lean_dec_ref(x_518); - x_564 = lean_box(0); -} -x_565 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_565, 0, x_561); -lean_ctor_set(x_565, 1, x_563); -if (lean_is_scalar(x_564)) { - x_566 = lean_alloc_ctor(1, 1, 0); -} else { - x_566 = x_564; -} -lean_ctor_set(x_566, 0, x_565); -lean_inc(x_453); -x_567 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_567, 0, x_566); -lean_ctor_set(x_567, 1, x_453); -if (lean_is_scalar(x_562)) { - x_568 = lean_alloc_ctor(1, 1, 0); -} else { - x_568 = x_562; -} -lean_ctor_set(x_568, 0, x_567); -if (x_530 == 0) +lean_dec(x_443); +lean_dec(x_429); +if (lean_obj_tag(x_440) == 0) { -lean_dec(x_520); -lean_dec(x_510); -x_531 = x_568; -goto block_539; +lean_object* x_454; lean_object* x_455; +lean_dec(x_441); +x_454 = 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_1); +x_455 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_415, x_416, x_417, x_394, x_404, x_414, x_402, x_418, x_391, x_46, x_418, x_418, x_446, x_453, x_454, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_455; +goto block_33; } else { -lean_dec(x_528); -lean_dec(x_513); -lean_dec(x_492); -lean_dec(x_480); -x_540 = x_568; -goto block_551; -} -} -} -} -} -block_539: +if (lean_obj_tag(x_441) == 0) { -lean_object* x_532; lean_object* x_533; lean_object* x_534; lean_object* x_535; lean_object* x_536; lean_object* x_537; lean_object* x_538; -lean_inc(x_56); -if (lean_is_scalar(x_528)) { - x_532 = lean_alloc_ctor(0, 2, 0); -} else { - x_532 = x_528; -} -lean_ctor_set(x_532, 0, x_468); -lean_ctor_set(x_532, 1, x_56); -if (lean_is_scalar(x_492)) { - x_533 = lean_alloc_ctor(1, 1, 0); -} else { - x_533 = x_492; -} -lean_ctor_set(x_533, 0, x_532); -lean_inc(x_15); -x_534 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_534, 0, x_15); -lean_ctor_set(x_534, 1, x_515); -lean_ctor_set(x_534, 2, x_531); -lean_ctor_set(x_534, 3, x_533); -if (lean_is_scalar(x_513)) { - x_535 = lean_alloc_ctor(0, 2, 0); -} else { - x_535 = x_513; -} -lean_ctor_set(x_535, 0, x_534); -lean_ctor_set(x_535, 1, x_516); -if (lean_is_scalar(x_480)) { - x_536 = lean_alloc_ctor(1, 1, 0); -} else { - x_536 = x_480; -} -lean_ctor_set(x_536, 0, x_535); -x_537 = lean_box(0); +lean_object* x_456; lean_object* x_457; +lean_dec(x_440); +x_456 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -11550,41 +11192,35 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_538 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_453, x_465, x_466, x_467, x_38, x_455, x_464, x_45, x_536, x_530, x_537, x_6, x_7, x_8, x_9, x_10, x_11, x_527); -x_25 = x_538; -goto block_32; +x_457 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_415, x_416, x_417, x_394, x_404, x_414, x_402, x_418, x_391, x_46, x_418, x_418, x_446, x_453, x_456, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_457; +goto block_33; } -block_551: +else { -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; -x_541 = lean_box(0); -if (lean_is_scalar(x_510)) { - x_542 = lean_alloc_ctor(0, 2, 0); -} else { - x_542 = x_510; -} -lean_ctor_set(x_542, 0, x_541); -lean_ctor_set(x_542, 1, x_520); -x_543 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_543, 0, x_542); -lean_inc(x_56); -x_544 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_544, 0, x_543); -lean_ctor_set(x_544, 1, x_56); -x_545 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_545, 0, x_544); -lean_inc(x_15); -x_546 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_546, 0, x_15); -lean_ctor_set(x_546, 1, x_515); -lean_ctor_set(x_546, 2, x_540); -lean_ctor_set(x_546, 3, x_545); -x_547 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_547, 0, x_546); -lean_ctor_set(x_547, 1, x_516); -x_548 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_548, 0, x_547); -x_549 = lean_box(0); +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; +x_458 = lean_ctor_get(x_440, 0); +lean_inc(x_458); +lean_dec(x_440); +x_459 = lean_ctor_get(x_441, 0); +lean_inc(x_459); +if (lean_is_exclusive(x_441)) { + lean_ctor_release(x_441, 0); + x_460 = x_441; +} else { + lean_dec_ref(x_441); + x_460 = lean_box(0); +} +x_461 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_461, 0, x_458); +lean_ctor_set(x_461, 1, x_459); +if (lean_is_scalar(x_460)) { + x_462 = lean_alloc_ctor(1, 1, 0); +} else { + x_462 = x_460; +} +lean_ctor_set(x_462, 0, x_461); +x_463 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -11592,142 +11228,30 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_550 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_56, x_453, x_465, x_466, x_467, x_38, x_455, x_464, x_45, x_548, x_530, x_549, x_6, x_7, x_8, x_9, x_10, x_11, x_527); -x_25 = x_550; -goto block_32; -} -} -} -} -} -} +x_464 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_415, x_416, x_417, x_394, x_404, x_414, x_402, x_418, x_391, x_46, x_418, x_462, x_446, x_453, x_463, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_464; +goto block_33; } } } else { -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; uint8_t x_581; -lean_dec(x_38); -x_574 = lean_array_fget(x_47, x_48); -x_575 = lean_unsigned_to_nat(1u); -x_576 = lean_nat_add(x_48, x_575); -lean_dec(x_48); -x_577 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_577, 0, x_47); -lean_ctor_set(x_577, 1, x_576); -lean_ctor_set(x_577, 2, x_49); -x_578 = lean_ctor_get(x_42, 0); -lean_inc(x_578); -x_579 = lean_ctor_get(x_42, 1); -lean_inc(x_579); -x_580 = lean_ctor_get(x_42, 2); -lean_inc(x_580); -x_581 = lean_nat_dec_lt(x_579, x_580); -if (x_581 == 0) -{ -lean_object* x_582; -lean_dec(x_580); -lean_dec(x_579); -lean_dec(x_578); -lean_dec(x_574); -lean_dec(x_15); -lean_ctor_set(x_34, 0, x_577); -x_582 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_582, 0, x_5); -x_16 = x_582; -x_17 = x_12; -goto block_24; -} -else -{ -lean_object* x_583; lean_object* x_584; lean_object* x_585; lean_object* x_586; lean_object* x_587; lean_object* x_588; lean_object* x_589; uint8_t x_590; -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_583 = x_42; +lean_object* x_465; lean_object* x_466; lean_object* x_467; +x_465 = lean_box(0); +x_466 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_466, 0, x_465); +lean_ctor_set(x_466, 1, x_443); +if (lean_is_scalar(x_429)) { + x_467 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_42); - x_583 = lean_box(0); -} -x_584 = lean_array_fget(x_578, x_579); -x_585 = lean_nat_add(x_579, x_575); -lean_dec(x_579); -if (lean_is_scalar(x_583)) { - x_586 = lean_alloc_ctor(0, 3, 0); -} else { - x_586 = x_583; -} -lean_ctor_set(x_586, 0, x_578); -lean_ctor_set(x_586, 1, x_585); -lean_ctor_set(x_586, 2, x_580); -x_587 = lean_ctor_get(x_39, 0); -lean_inc(x_587); -x_588 = lean_ctor_get(x_39, 1); -lean_inc(x_588); -x_589 = lean_ctor_get(x_39, 2); -lean_inc(x_589); -x_590 = lean_nat_dec_lt(x_588, x_589); -if (x_590 == 0) -{ -lean_object* x_591; -lean_dec(x_589); -lean_dec(x_588); -lean_dec(x_587); -lean_dec(x_584); -lean_dec(x_574); -lean_dec(x_15); -lean_ctor_set(x_34, 0, x_577); -lean_ctor_set(x_33, 0, x_586); -x_591 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_591, 0, x_5); -x_16 = x_591; -x_17 = x_12; -goto block_24; + x_467 = x_429; } -else +lean_ctor_set(x_467, 0, x_466); +if (lean_obj_tag(x_440) == 0) { -lean_object* x_592; 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_free_object(x_37); -lean_free_object(x_33); -lean_free_object(x_5); -lean_free_object(x_34); -if (lean_is_exclusive(x_39)) { - lean_ctor_release(x_39, 0); - lean_ctor_release(x_39, 1); - lean_ctor_release(x_39, 2); - x_592 = x_39; -} else { - lean_dec_ref(x_39); - x_592 = lean_box(0); -} -x_593 = lean_array_fget(x_587, x_588); -x_594 = lean_nat_add(x_588, x_575); -lean_dec(x_588); -if (lean_is_scalar(x_592)) { - x_595 = lean_alloc_ctor(0, 3, 0); -} else { - x_595 = x_592; -} -lean_ctor_set(x_595, 0, x_587); -lean_ctor_set(x_595, 1, x_594); -lean_ctor_set(x_595, 2, x_589); -x_596 = lean_ctor_get(x_593, 0); -lean_inc(x_596); -x_597 = lean_ctor_get(x_593, 1); -lean_inc(x_597); -x_598 = lean_ctor_get(x_593, 2); -lean_inc(x_598); -lean_dec(x_593); -x_599 = lean_box(0); -x_600 = lean_ctor_get(x_15, 7); -lean_inc(x_600); -if (lean_obj_tag(x_600) == 0) -{ -lean_object* x_601; uint8_t x_602; lean_object* x_603; -x_601 = lean_box(0); -x_602 = lean_unbox(x_46); -lean_dec(x_46); +lean_object* x_468; lean_object* x_469; +lean_dec(x_441); +x_468 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -11735,73 +11259,17 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_603 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_574, x_584, x_596, x_597, x_598, x_577, x_586, x_595, x_45, x_599, x_602, x_601, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_603) == 0) -{ -lean_object* x_604; lean_object* x_605; -x_604 = lean_ctor_get(x_603, 0); -lean_inc(x_604); -x_605 = lean_ctor_get(x_603, 1); -lean_inc(x_605); -lean_dec(x_603); -x_16 = x_604; -x_17 = x_605; -goto block_24; -} -else -{ -lean_object* x_606; lean_object* x_607; lean_object* x_608; lean_object* x_609; -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_606 = lean_ctor_get(x_603, 0); -lean_inc(x_606); -x_607 = lean_ctor_get(x_603, 1); -lean_inc(x_607); -if (lean_is_exclusive(x_603)) { - lean_ctor_release(x_603, 0); - lean_ctor_release(x_603, 1); - x_608 = x_603; -} else { - lean_dec_ref(x_603); - x_608 = lean_box(0); -} -if (lean_is_scalar(x_608)) { - x_609 = lean_alloc_ctor(1, 2, 0); -} else { - x_609 = x_608; -} -lean_ctor_set(x_609, 0, x_606); -lean_ctor_set(x_609, 1, x_607); -return x_609; -} +x_469 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_415, x_416, x_417, x_394, x_404, x_414, x_402, x_418, x_391, x_46, x_467, x_418, x_446, x_453, x_468, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_469; +goto block_33; } else { -lean_object* x_610; lean_object* x_611; lean_object* x_612; -x_610 = lean_ctor_get(x_600, 0); -lean_inc(x_610); -if (lean_is_exclusive(x_600)) { - lean_ctor_release(x_600, 0); - x_611 = x_600; -} else { - lean_dec_ref(x_600); - x_611 = lean_box(0); -} -x_612 = lean_ctor_get(x_610, 0); -lean_inc(x_612); -if (lean_obj_tag(x_612) == 0) +if (lean_obj_tag(x_441) == 0) { -uint8_t x_613; lean_object* x_614; lean_object* x_615; -lean_dec(x_611); -lean_dec(x_610); -lean_dec(x_46); -x_613 = 0; -x_614 = lean_box(0); +lean_object* x_470; lean_object* x_471; +lean_dec(x_440); +x_470 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -11809,76 +11277,35 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_615 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_574, x_584, x_596, x_597, x_598, x_577, x_586, x_595, x_45, x_599, x_613, x_614, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_615) == 0) -{ -lean_object* x_616; lean_object* x_617; -x_616 = lean_ctor_get(x_615, 0); -lean_inc(x_616); -x_617 = lean_ctor_get(x_615, 1); -lean_inc(x_617); -lean_dec(x_615); -x_16 = x_616; -x_17 = x_617; -goto block_24; +x_471 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_415, x_416, x_417, x_394, x_404, x_414, x_402, x_418, x_391, x_46, x_467, x_418, x_446, x_453, x_470, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_471; +goto block_33; } else { -lean_object* x_618; lean_object* x_619; lean_object* x_620; lean_object* x_621; -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_618 = lean_ctor_get(x_615, 0); -lean_inc(x_618); -x_619 = lean_ctor_get(x_615, 1); -lean_inc(x_619); -if (lean_is_exclusive(x_615)) { - lean_ctor_release(x_615, 0); - lean_ctor_release(x_615, 1); - x_620 = x_615; -} else { - lean_dec_ref(x_615); - x_620 = lean_box(0); -} -if (lean_is_scalar(x_620)) { - x_621 = lean_alloc_ctor(1, 2, 0); +lean_object* x_472; lean_object* x_473; lean_object* x_474; lean_object* x_475; lean_object* x_476; lean_object* x_477; lean_object* x_478; +x_472 = lean_ctor_get(x_440, 0); +lean_inc(x_472); +lean_dec(x_440); +x_473 = lean_ctor_get(x_441, 0); +lean_inc(x_473); +if (lean_is_exclusive(x_441)) { + lean_ctor_release(x_441, 0); + x_474 = x_441; } else { - x_621 = x_620; -} -lean_ctor_set(x_621, 0, x_618); -lean_ctor_set(x_621, 1, x_619); -return x_621; -} + lean_dec_ref(x_441); + x_474 = lean_box(0); } -else -{ -lean_object* x_622; lean_object* x_623; lean_object* x_624; lean_object* x_625; -x_622 = lean_ctor_get(x_612, 0); -lean_inc(x_622); -if (lean_is_exclusive(x_612)) { - lean_ctor_release(x_612, 0); - x_623 = x_612; +x_475 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_475, 0, x_472); +lean_ctor_set(x_475, 1, x_473); +if (lean_is_scalar(x_474)) { + x_476 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_612); - x_623 = lean_box(0); + x_476 = x_474; } -x_624 = lean_ctor_get(x_622, 1); -lean_inc(x_624); -lean_dec(x_622); -x_625 = l_Lean_Language_SnapshotTask_get___rarg(x_624); -if (lean_obj_tag(x_625) == 0) -{ -uint8_t x_626; lean_object* x_627; lean_object* x_628; -lean_dec(x_623); -lean_dec(x_611); -lean_dec(x_610); -lean_dec(x_46); -x_626 = 0; -x_627 = lean_box(0); +lean_ctor_set(x_476, 0, x_475); +x_477 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -11886,421 +11313,460 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_628 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_574, x_584, x_596, x_597, x_598, x_577, x_586, x_595, x_45, x_599, x_626, x_627, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_628) == 0) -{ -lean_object* x_629; lean_object* x_630; -x_629 = lean_ctor_get(x_628, 0); -lean_inc(x_629); -x_630 = lean_ctor_get(x_628, 1); -lean_inc(x_630); -lean_dec(x_628); -x_16 = x_629; -x_17 = x_630; -goto block_24; +x_478 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_415, x_416, x_417, x_394, x_404, x_414, x_402, x_418, x_391, x_46, x_467, x_476, x_446, x_453, x_477, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_478; +goto block_33; +} +} +} +} +} +} +} } -else -{ -lean_object* x_631; lean_object* x_632; lean_object* x_633; lean_object* x_634; -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_631 = lean_ctor_get(x_628, 0); -lean_inc(x_631); -x_632 = lean_ctor_get(x_628, 1); -lean_inc(x_632); -if (lean_is_exclusive(x_628)) { - lean_ctor_release(x_628, 0); - lean_ctor_release(x_628, 1); - x_633 = x_628; -} else { - lean_dec_ref(x_628); - x_633 = lean_box(0); } -if (lean_is_scalar(x_633)) { - x_634 = lean_alloc_ctor(1, 2, 0); -} else { - x_634 = x_633; } -lean_ctor_set(x_634, 0, x_631); -lean_ctor_set(x_634, 1, x_632); -return x_634; } } else { -lean_object* x_635; lean_object* x_636; lean_object* x_637; lean_object* x_638; lean_object* x_639; lean_object* x_640; lean_object* x_641; lean_object* x_642; 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_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_object* x_657; lean_object* x_658; lean_object* x_659; lean_object* x_660; uint8_t x_661; uint8_t x_701; -x_635 = lean_ctor_get(x_625, 0); -lean_inc(x_635); -if (lean_is_exclusive(x_625)) { - lean_ctor_release(x_625, 0); - x_636 = x_625; +lean_object* x_479; lean_object* x_480; lean_object* x_481; lean_object* x_482; lean_object* x_483; uint8_t x_484; +x_479 = lean_ctor_get(x_38, 0); +x_480 = lean_ctor_get(x_38, 1); +lean_inc(x_480); +lean_inc(x_479); +lean_dec(x_38); +x_481 = lean_ctor_get(x_39, 0); +lean_inc(x_481); +x_482 = lean_ctor_get(x_39, 1); +lean_inc(x_482); +x_483 = lean_ctor_get(x_39, 2); +lean_inc(x_483); +x_484 = lean_nat_dec_lt(x_482, x_483); +if (x_484 == 0) +{ +lean_object* x_485; lean_object* x_486; lean_object* x_487; +lean_dec(x_483); +lean_dec(x_482); +lean_dec(x_481); +lean_dec(x_15); +x_485 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_485, 0, x_479); +lean_ctor_set(x_485, 1, x_480); +lean_ctor_set(x_35, 1, x_485); +x_486 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_486, 0, x_5); +x_487 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_487, 0, x_486); +lean_ctor_set(x_487, 1, x_12); +x_16 = x_487; +goto block_33; +} +else +{ +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; +if (lean_is_exclusive(x_39)) { + lean_ctor_release(x_39, 0); + lean_ctor_release(x_39, 1); + lean_ctor_release(x_39, 2); + x_488 = x_39; } else { - lean_dec_ref(x_625); - x_636 = lean_box(0); + lean_dec_ref(x_39); + x_488 = lean_box(0); } -x_637 = lean_ctor_get(x_15, 6); -lean_inc(x_637); -lean_inc(x_584); -lean_inc(x_637); -x_638 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_637, x_584, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -x_639 = lean_ctor_get(x_638, 0); -lean_inc(x_639); -x_640 = lean_ctor_get(x_638, 1); -lean_inc(x_640); -if (lean_is_exclusive(x_638)) { - lean_ctor_release(x_638, 0); - lean_ctor_release(x_638, 1); - x_641 = x_638; +x_489 = lean_array_fget(x_481, x_482); +x_490 = lean_unsigned_to_nat(1u); +x_491 = lean_nat_add(x_482, x_490); +lean_dec(x_482); +if (lean_is_scalar(x_488)) { + x_492 = lean_alloc_ctor(0, 3, 0); } else { - lean_dec_ref(x_638); - x_641 = lean_box(0); + x_492 = x_488; } -x_642 = lean_ctor_get(x_639, 0); -lean_inc(x_642); -x_643 = lean_ctor_get(x_639, 1); -lean_inc(x_643); -if (lean_is_exclusive(x_639)) { - lean_ctor_release(x_639, 0); - lean_ctor_release(x_639, 1); - x_644 = x_639; +lean_ctor_set(x_492, 0, x_481); +lean_ctor_set(x_492, 1, x_491); +lean_ctor_set(x_492, 2, x_483); +x_493 = lean_ctor_get(x_43, 0); +lean_inc(x_493); +x_494 = lean_ctor_get(x_43, 1); +lean_inc(x_494); +x_495 = lean_ctor_get(x_43, 2); +lean_inc(x_495); +x_496 = lean_nat_dec_lt(x_494, x_495); +if (x_496 == 0) +{ +lean_object* x_497; lean_object* x_498; lean_object* x_499; +lean_dec(x_495); +lean_dec(x_494); +lean_dec(x_493); +lean_dec(x_489); +lean_dec(x_15); +x_497 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_497, 0, x_479); +lean_ctor_set(x_497, 1, x_480); +lean_ctor_set(x_35, 1, x_497); +lean_ctor_set(x_35, 0, x_492); +x_498 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_498, 0, x_5); +x_499 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_499, 0, x_498); +lean_ctor_set(x_499, 1, x_12); +x_16 = x_499; +goto block_33; +} +else +{ +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; uint8_t x_507; +if (lean_is_exclusive(x_43)) { + lean_ctor_release(x_43, 0); + lean_ctor_release(x_43, 1); + lean_ctor_release(x_43, 2); + x_500 = x_43; } else { - lean_dec_ref(x_639); - x_644 = lean_box(0); + lean_dec_ref(x_43); + x_500 = lean_box(0); } -x_645 = lean_ctor_get(x_635, 0); -lean_inc(x_645); -x_646 = lean_ctor_get(x_635, 1); -lean_inc(x_646); -x_647 = lean_ctor_get(x_635, 2); -lean_inc(x_647); -x_648 = lean_ctor_get(x_635, 3); -lean_inc(x_648); -x_649 = lean_ctor_get(x_635, 4); -lean_inc(x_649); -x_650 = lean_ctor_get(x_635, 5); -lean_inc(x_650); -x_651 = lean_ctor_get(x_635, 6); -lean_inc(x_651); -if (lean_is_exclusive(x_635)) { - lean_ctor_release(x_635, 0); - lean_ctor_release(x_635, 1); - lean_ctor_release(x_635, 2); - lean_ctor_release(x_635, 3); - lean_ctor_release(x_635, 4); - lean_ctor_release(x_635, 5); - lean_ctor_release(x_635, 6); - x_652 = x_635; -} else { - lean_dec_ref(x_635); - x_652 = lean_box(0); -} -lean_inc(x_574); -lean_inc(x_637); -x_653 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_637, x_574); -lean_inc(x_637); -lean_inc(x_643); -lean_inc(x_647); -lean_inc(x_646); -if (lean_is_scalar(x_652)) { - x_654 = lean_alloc_ctor(0, 7, 0); +x_501 = lean_array_fget(x_493, x_494); +x_502 = lean_nat_add(x_494, x_490); +lean_dec(x_494); +if (lean_is_scalar(x_500)) { + x_503 = lean_alloc_ctor(0, 3, 0); } else { - x_654 = x_652; + x_503 = x_500; } -lean_ctor_set(x_654, 0, x_645); -lean_ctor_set(x_654, 1, x_646); -lean_ctor_set(x_654, 2, x_647); -lean_ctor_set(x_654, 3, x_642); -lean_ctor_set(x_654, 4, x_643); -lean_ctor_set(x_654, 5, x_637); -lean_ctor_set(x_654, 6, x_653); -if (lean_is_scalar(x_636)) { - x_655 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_503, 0, x_493); +lean_ctor_set(x_503, 1, x_502); +lean_ctor_set(x_503, 2, x_495); +x_504 = lean_ctor_get(x_40, 0); +lean_inc(x_504); +x_505 = lean_ctor_get(x_40, 1); +lean_inc(x_505); +x_506 = lean_ctor_get(x_40, 2); +lean_inc(x_506); +x_507 = lean_nat_dec_lt(x_505, x_506); +if (x_507 == 0) +{ +lean_object* x_508; lean_object* x_509; lean_object* x_510; +lean_dec(x_506); +lean_dec(x_505); +lean_dec(x_504); +lean_dec(x_501); +lean_dec(x_489); +lean_dec(x_15); +x_508 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_508, 0, x_479); +lean_ctor_set(x_508, 1, x_480); +lean_ctor_set(x_35, 1, x_508); +lean_ctor_set(x_35, 0, x_492); +lean_ctor_set(x_34, 0, x_503); +x_509 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_509, 0, x_5); +x_510 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_510, 0, x_509); +lean_ctor_set(x_510, 1, x_12); +x_16 = x_510; +goto block_33; +} +else +{ +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_free_object(x_34); +lean_free_object(x_5); +lean_free_object(x_35); +if (lean_is_exclusive(x_40)) { + lean_ctor_release(x_40, 0); + lean_ctor_release(x_40, 1); + lean_ctor_release(x_40, 2); + x_511 = x_40; } else { - x_655 = x_636; + lean_dec_ref(x_40); + x_511 = lean_box(0); } -lean_ctor_set(x_655, 0, x_654); -x_656 = lean_ctor_get(x_610, 1); -lean_inc(x_656); -lean_dec(x_610); -x_657 = lean_io_promise_resolve(x_655, x_656, x_640); -lean_dec(x_656); -x_658 = lean_ctor_get(x_657, 1); -lean_inc(x_658); -if (lean_is_exclusive(x_657)) { - lean_ctor_release(x_657, 0); - lean_ctor_release(x_657, 1); - x_659 = x_657; -} else { - lean_dec_ref(x_657); - x_659 = lean_box(0); -} -x_660 = lean_ctor_get(x_10, 2); -lean_inc(x_660); -x_701 = lean_unbox(x_46); -if (x_701 == 0) -{ -uint8_t x_702; -lean_dec(x_660); -lean_dec(x_650); -lean_dec(x_637); -x_702 = 0; -x_661 = x_702; -goto block_700; -} -else -{ -lean_object* x_703; uint8_t x_704; -x_703 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_660, x_637, x_650); -lean_dec(x_660); -x_704 = lean_unbox(x_703); -lean_dec(x_703); -x_661 = x_704; -goto block_700; -} -block_700: -{ -lean_object* x_662; lean_object* x_671; -if (lean_obj_tag(x_643) == 0) -{ -lean_dec(x_649); -lean_dec(x_648); -lean_dec(x_46); -if (x_661 == 0) +x_512 = lean_array_fget(x_504, x_505); +x_513 = lean_nat_add(x_505, x_490); +lean_dec(x_505); +if (lean_is_scalar(x_511)) { + x_514 = lean_alloc_ctor(0, 3, 0); +} else { + x_514 = x_511; +} +lean_ctor_set(x_514, 0, x_504); +lean_ctor_set(x_514, 1, x_513); +lean_ctor_set(x_514, 2, x_506); +x_515 = lean_ctor_get(x_512, 0); +lean_inc(x_515); +x_516 = lean_ctor_get(x_512, 1); +lean_inc(x_516); +x_517 = lean_ctor_get(x_512, 2); +lean_inc(x_517); +lean_dec(x_512); +x_518 = lean_box(0); +x_519 = lean_ctor_get(x_15, 7); +lean_inc(x_519); +if (lean_obj_tag(x_519) == 0) { -lean_dec(x_651); -lean_dec(x_641); -x_662 = x_599; -goto block_670; +lean_object* x_520; uint8_t x_521; lean_object* x_522; +x_520 = lean_box(0); +x_521 = lean_unbox(x_480); +lean_dec(x_480); +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_522 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_515, x_516, x_517, x_492, x_503, x_514, x_501, x_518, x_489, x_479, x_518, x_518, x_518, x_521, x_520, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_522; +goto block_33; } else { -lean_dec(x_659); -lean_dec(x_644); -lean_dec(x_623); -lean_dec(x_611); -x_671 = x_599; -goto block_682; -} +lean_object* x_523; lean_object* x_524; +x_523 = lean_ctor_get(x_519, 0); +lean_inc(x_523); +lean_dec(x_519); +x_524 = lean_ctor_get(x_523, 0); +lean_inc(x_524); +lean_dec(x_523); +if (lean_obj_tag(x_524) == 0) +{ +uint8_t x_525; lean_object* x_526; lean_object* x_527; +lean_dec(x_480); +x_525 = 0; +x_526 = 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_1); +x_527 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_515, x_516, x_517, x_492, x_503, x_514, x_501, x_518, x_489, x_479, x_518, x_518, x_518, x_525, x_526, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_527; +goto block_33; } else { -lean_object* x_683; uint8_t x_684; -if (lean_is_exclusive(x_643)) { - lean_ctor_release(x_643, 0); - x_683 = x_643; +lean_object* x_528; lean_object* x_529; lean_object* x_530; lean_object* x_531; +x_528 = lean_ctor_get(x_524, 0); +lean_inc(x_528); +if (lean_is_exclusive(x_524)) { + lean_ctor_release(x_524, 0); + x_529 = x_524; } else { - lean_dec_ref(x_643); - x_683 = lean_box(0); + lean_dec_ref(x_524); + x_529 = lean_box(0); } -x_684 = lean_unbox(x_46); -lean_dec(x_46); -if (x_684 == 0) +x_530 = lean_ctor_get(x_528, 1); +lean_inc(x_530); +lean_dec(x_528); +x_531 = l_Lean_Language_SnapshotTask_get___rarg(x_530); +if (lean_obj_tag(x_531) == 0) { -lean_object* x_685; lean_object* x_686; -lean_dec(x_649); -lean_dec(x_648); -lean_inc(x_584); -x_685 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_685, 0, x_599); -lean_ctor_set(x_685, 1, x_584); -if (lean_is_scalar(x_683)) { - x_686 = lean_alloc_ctor(1, 1, 0); +uint8_t x_532; lean_object* x_533; lean_object* x_534; +lean_dec(x_529); +lean_dec(x_480); +x_532 = 0; +x_533 = 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_1); +x_534 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_515, x_516, x_517, x_492, x_503, x_514, x_501, x_518, x_489, x_479, x_518, x_518, x_518, x_532, x_533, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_534; +goto block_33; +} +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; uint8_t x_547; +x_535 = lean_ctor_get(x_531, 0); +lean_inc(x_535); +if (lean_is_exclusive(x_531)) { + lean_ctor_release(x_531, 0); + x_536 = x_531; +} else { + lean_dec_ref(x_531); + x_536 = lean_box(0); +} +x_537 = lean_ctor_get(x_10, 2); +lean_inc(x_537); +x_538 = lean_ctor_get(x_535, 1); +lean_inc(x_538); +x_539 = lean_ctor_get(x_535, 2); +lean_inc(x_539); +x_540 = lean_ctor_get(x_535, 3); +lean_inc(x_540); +x_541 = lean_ctor_get(x_535, 4); +lean_inc(x_541); +x_542 = lean_ctor_get(x_535, 5); +lean_inc(x_542); +x_543 = lean_ctor_get(x_535, 6); +lean_inc(x_543); +lean_dec(x_535); +lean_inc(x_15); +x_544 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_544, 0, x_15); +lean_ctor_set(x_544, 1, x_538); +lean_ctor_set(x_544, 2, x_518); +lean_ctor_set(x_544, 3, x_518); +x_545 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_545, 0, x_544); +lean_ctor_set(x_545, 1, x_539); +if (lean_is_scalar(x_536)) { + x_546 = lean_alloc_ctor(1, 1, 0); } else { - x_686 = x_683; -} -lean_ctor_set(x_686, 0, x_685); -if (x_661 == 0) -{ -lean_dec(x_651); -lean_dec(x_641); -x_662 = x_686; -goto block_670; -} -else -{ -lean_dec(x_659); -lean_dec(x_644); -lean_dec(x_623); -lean_dec(x_611); -x_671 = x_686; -goto block_682; + x_546 = x_536; } +lean_ctor_set(x_546, 0, x_545); +x_547 = lean_unbox(x_480); +lean_dec(x_480); +if (x_547 == 0) +{ +uint8_t x_548; lean_object* x_549; lean_object* x_550; +lean_dec(x_543); +lean_dec(x_542); +lean_dec(x_541); +lean_dec(x_540); +lean_dec(x_537); +lean_dec(x_529); +x_548 = 0; +x_549 = 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_1); +x_550 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_515, x_516, x_517, x_492, x_503, x_514, x_501, x_518, x_489, x_479, x_518, x_518, x_546, x_548, x_549, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_550; +goto block_33; } else { -if (lean_obj_tag(x_648) == 0) +lean_object* x_551; lean_object* x_552; uint8_t x_553; +x_551 = lean_ctor_get(x_15, 6); +lean_inc(x_551); +x_552 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_537, x_551, x_542); +lean_dec(x_537); +x_553 = lean_unbox(x_552); +lean_dec(x_552); +if (x_553 == 0) { -lean_object* x_687; lean_object* x_688; -lean_dec(x_649); -lean_inc(x_584); -x_687 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_687, 0, x_599); -lean_ctor_set(x_687, 1, x_584); -if (lean_is_scalar(x_683)) { - x_688 = lean_alloc_ctor(1, 1, 0); -} else { - x_688 = x_683; -} -lean_ctor_set(x_688, 0, x_687); -if (x_661 == 0) +lean_dec(x_543); +lean_dec(x_529); +if (lean_obj_tag(x_540) == 0) { -lean_dec(x_651); -lean_dec(x_641); -x_662 = x_688; -goto block_670; +lean_object* x_554; lean_object* x_555; +lean_dec(x_541); +x_554 = 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_1); +x_555 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_515, x_516, x_517, x_492, x_503, x_514, x_501, x_518, x_489, x_479, x_518, x_518, x_546, x_553, x_554, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_555; +goto block_33; } else { -lean_dec(x_659); -lean_dec(x_644); -lean_dec(x_623); -lean_dec(x_611); -x_671 = x_688; -goto block_682; -} +if (lean_obj_tag(x_541) == 0) +{ +lean_object* x_556; lean_object* x_557; +lean_dec(x_540); +x_556 = 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_1); +x_557 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_515, x_516, x_517, x_492, x_503, x_514, x_501, x_518, x_489, x_479, x_518, x_518, x_546, x_553, x_556, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_557; +goto block_33; } else { -lean_dec(x_683); -if (lean_obj_tag(x_649) == 0) -{ -lean_object* x_689; lean_object* x_690; lean_object* x_691; -if (lean_is_exclusive(x_648)) { - lean_ctor_release(x_648, 0); - x_689 = x_648; +lean_object* x_558; lean_object* x_559; lean_object* x_560; lean_object* x_561; lean_object* x_562; lean_object* x_563; lean_object* x_564; +x_558 = lean_ctor_get(x_540, 0); +lean_inc(x_558); +lean_dec(x_540); +x_559 = lean_ctor_get(x_541, 0); +lean_inc(x_559); +if (lean_is_exclusive(x_541)) { + lean_ctor_release(x_541, 0); + x_560 = x_541; } else { - lean_dec_ref(x_648); - x_689 = lean_box(0); + lean_dec_ref(x_541); + x_560 = lean_box(0); } -lean_inc(x_584); -x_690 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_690, 0, x_599); -lean_ctor_set(x_690, 1, x_584); -if (lean_is_scalar(x_689)) { - x_691 = lean_alloc_ctor(1, 1, 0); +x_561 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_561, 0, x_558); +lean_ctor_set(x_561, 1, x_559); +if (lean_is_scalar(x_560)) { + x_562 = lean_alloc_ctor(1, 1, 0); } else { - x_691 = x_689; + x_562 = x_560; } -lean_ctor_set(x_691, 0, x_690); -if (x_661 == 0) -{ -lean_dec(x_651); -lean_dec(x_641); -x_662 = x_691; -goto block_670; +lean_ctor_set(x_562, 0, x_561); +x_563 = 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_1); +x_564 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_515, x_516, x_517, x_492, x_503, x_514, x_501, x_518, x_489, x_479, x_518, x_562, x_546, x_553, x_563, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_564; +goto block_33; } -else -{ -lean_dec(x_659); -lean_dec(x_644); -lean_dec(x_623); -lean_dec(x_611); -x_671 = x_691; -goto block_682; } } else { -lean_object* x_692; lean_object* x_693; lean_object* x_694; lean_object* x_695; lean_object* x_696; lean_object* x_697; lean_object* x_698; lean_object* x_699; -x_692 = lean_ctor_get(x_648, 0); -lean_inc(x_692); -if (lean_is_exclusive(x_648)) { - lean_ctor_release(x_648, 0); - x_693 = x_648; -} else { - lean_dec_ref(x_648); - x_693 = lean_box(0); -} -x_694 = lean_ctor_get(x_649, 0); -lean_inc(x_694); -if (lean_is_exclusive(x_649)) { - lean_ctor_release(x_649, 0); - x_695 = x_649; -} else { - lean_dec_ref(x_649); - x_695 = lean_box(0); -} -x_696 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_696, 0, x_692); -lean_ctor_set(x_696, 1, x_694); -if (lean_is_scalar(x_695)) { - x_697 = lean_alloc_ctor(1, 1, 0); -} else { - x_697 = x_695; -} -lean_ctor_set(x_697, 0, x_696); -lean_inc(x_584); -x_698 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_698, 0, x_697); -lean_ctor_set(x_698, 1, x_584); -if (lean_is_scalar(x_693)) { - x_699 = lean_alloc_ctor(1, 1, 0); +lean_object* x_565; lean_object* x_566; lean_object* x_567; +x_565 = lean_box(0); +x_566 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_566, 0, x_565); +lean_ctor_set(x_566, 1, x_543); +if (lean_is_scalar(x_529)) { + x_567 = lean_alloc_ctor(1, 1, 0); } else { - x_699 = x_693; + x_567 = x_529; } -lean_ctor_set(x_699, 0, x_698); -if (x_661 == 0) +lean_ctor_set(x_567, 0, x_566); +if (lean_obj_tag(x_540) == 0) { -lean_dec(x_651); -lean_dec(x_641); -x_662 = x_699; -goto block_670; +lean_object* x_568; lean_object* x_569; +lean_dec(x_541); +x_568 = 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_1); +x_569 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_515, x_516, x_517, x_492, x_503, x_514, x_501, x_518, x_489, x_479, x_567, x_518, x_546, x_553, x_568, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_569; +goto block_33; } else { -lean_dec(x_659); -lean_dec(x_644); -lean_dec(x_623); -lean_dec(x_611); -x_671 = x_699; -goto block_682; -} -} -} -} -} -block_670: +if (lean_obj_tag(x_541) == 0) { -lean_object* x_663; lean_object* x_664; lean_object* x_665; lean_object* x_666; lean_object* x_667; lean_object* x_668; lean_object* x_669; -lean_inc(x_574); -if (lean_is_scalar(x_659)) { - x_663 = lean_alloc_ctor(0, 2, 0); -} else { - x_663 = x_659; -} -lean_ctor_set(x_663, 0, x_599); -lean_ctor_set(x_663, 1, x_574); -if (lean_is_scalar(x_623)) { - x_664 = lean_alloc_ctor(1, 1, 0); -} else { - x_664 = x_623; -} -lean_ctor_set(x_664, 0, x_663); -lean_inc(x_15); -x_665 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_665, 0, x_15); -lean_ctor_set(x_665, 1, x_646); -lean_ctor_set(x_665, 2, x_662); -lean_ctor_set(x_665, 3, x_664); -if (lean_is_scalar(x_644)) { - x_666 = lean_alloc_ctor(0, 2, 0); -} else { - x_666 = x_644; -} -lean_ctor_set(x_666, 0, x_665); -lean_ctor_set(x_666, 1, x_647); -if (lean_is_scalar(x_611)) { - x_667 = lean_alloc_ctor(1, 1, 0); -} else { - x_667 = x_611; -} -lean_ctor_set(x_667, 0, x_666); -x_668 = lean_box(0); +lean_object* x_570; lean_object* x_571; +lean_dec(x_540); +x_570 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -12308,41 +11774,35 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_669 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_574, x_584, x_596, x_597, x_598, x_577, x_586, x_595, x_45, x_667, x_661, x_668, x_6, x_7, x_8, x_9, x_10, x_11, x_658); -x_25 = x_669; -goto block_32; +x_571 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_515, x_516, x_517, x_492, x_503, x_514, x_501, x_518, x_489, x_479, x_567, x_518, x_546, x_553, x_570, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_571; +goto block_33; } -block_682: +else { -lean_object* x_672; 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; lean_object* x_681; -x_672 = lean_box(0); -if (lean_is_scalar(x_641)) { - x_673 = lean_alloc_ctor(0, 2, 0); -} else { - x_673 = x_641; -} -lean_ctor_set(x_673, 0, x_672); -lean_ctor_set(x_673, 1, x_651); -x_674 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_674, 0, x_673); -lean_inc(x_574); -x_675 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_675, 0, x_674); -lean_ctor_set(x_675, 1, x_574); -x_676 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_676, 0, x_675); -lean_inc(x_15); -x_677 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_677, 0, x_15); -lean_ctor_set(x_677, 1, x_646); -lean_ctor_set(x_677, 2, x_671); -lean_ctor_set(x_677, 3, x_676); -x_678 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_678, 0, x_677); -lean_ctor_set(x_678, 1, x_647); -x_679 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_679, 0, x_678); -x_680 = lean_box(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; +x_572 = lean_ctor_get(x_540, 0); +lean_inc(x_572); +lean_dec(x_540); +x_573 = lean_ctor_get(x_541, 0); +lean_inc(x_573); +if (lean_is_exclusive(x_541)) { + lean_ctor_release(x_541, 0); + x_574 = x_541; +} else { + lean_dec_ref(x_541); + x_574 = lean_box(0); +} +x_575 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_575, 0, x_572); +lean_ctor_set(x_575, 1, x_573); +if (lean_is_scalar(x_574)) { + x_576 = lean_alloc_ctor(1, 1, 0); +} else { + x_576 = x_574; +} +lean_ctor_set(x_576, 0, x_575); +x_577 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -12350,9 +11810,10 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_681 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_574, x_584, x_596, x_597, x_598, x_577, x_586, x_595, x_45, x_679, x_661, x_680, x_6, x_7, x_8, x_9, x_10, x_11, x_658); -x_25 = x_681; -goto block_32; +x_578 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_515, x_516, x_517, x_492, x_503, x_514, x_501, x_518, x_489, x_479, x_567, x_576, x_546, x_553, x_577, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_578; +goto block_33; +} } } } @@ -12363,181 +11824,221 @@ goto block_32; } } } -else -{ -lean_object* x_705; lean_object* x_706; lean_object* x_707; lean_object* x_708; lean_object* x_709; uint8_t x_710; -x_705 = lean_ctor_get(x_37, 0); -x_706 = lean_ctor_get(x_37, 1); -lean_inc(x_706); -lean_inc(x_705); -lean_dec(x_37); -x_707 = lean_ctor_get(x_38, 0); -lean_inc(x_707); -x_708 = lean_ctor_get(x_38, 1); -lean_inc(x_708); -x_709 = lean_ctor_get(x_38, 2); -lean_inc(x_709); -x_710 = lean_nat_dec_lt(x_708, x_709); -if (x_710 == 0) -{ -lean_object* x_711; lean_object* x_712; -lean_dec(x_709); -lean_dec(x_708); -lean_dec(x_707); -lean_dec(x_15); -x_711 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_711, 0, x_705); -lean_ctor_set(x_711, 1, x_706); -lean_ctor_set(x_34, 1, x_711); -x_712 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_712, 0, x_5); -x_16 = x_712; -x_17 = x_12; -goto block_24; } else { -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; uint8_t x_721; +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; uint8_t x_586; +x_579 = lean_ctor_get(x_34, 0); +lean_inc(x_579); +lean_dec(x_34); +x_580 = lean_ctor_get(x_38, 0); +lean_inc(x_580); +x_581 = lean_ctor_get(x_38, 1); +lean_inc(x_581); if (lean_is_exclusive(x_38)) { lean_ctor_release(x_38, 0); lean_ctor_release(x_38, 1); - lean_ctor_release(x_38, 2); - x_713 = x_38; + x_582 = x_38; } else { lean_dec_ref(x_38); - x_713 = lean_box(0); -} -x_714 = lean_array_fget(x_707, x_708); -x_715 = lean_unsigned_to_nat(1u); -x_716 = lean_nat_add(x_708, x_715); -lean_dec(x_708); -if (lean_is_scalar(x_713)) { - x_717 = lean_alloc_ctor(0, 3, 0); -} else { - x_717 = x_713; + x_582 = lean_box(0); } -lean_ctor_set(x_717, 0, x_707); -lean_ctor_set(x_717, 1, x_716); -lean_ctor_set(x_717, 2, x_709); -x_718 = lean_ctor_get(x_42, 0); -lean_inc(x_718); -x_719 = lean_ctor_get(x_42, 1); -lean_inc(x_719); -x_720 = lean_ctor_get(x_42, 2); -lean_inc(x_720); -x_721 = lean_nat_dec_lt(x_719, x_720); -if (x_721 == 0) +x_583 = lean_ctor_get(x_39, 0); +lean_inc(x_583); +x_584 = lean_ctor_get(x_39, 1); +lean_inc(x_584); +x_585 = lean_ctor_get(x_39, 2); +lean_inc(x_585); +x_586 = lean_nat_dec_lt(x_584, x_585); +if (x_586 == 0) { -lean_object* x_722; lean_object* x_723; -lean_dec(x_720); -lean_dec(x_719); -lean_dec(x_718); -lean_dec(x_714); +lean_object* x_587; lean_object* x_588; lean_object* x_589; lean_object* x_590; +lean_dec(x_585); +lean_dec(x_584); +lean_dec(x_583); lean_dec(x_15); -x_722 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_722, 0, x_705); -lean_ctor_set(x_722, 1, x_706); -lean_ctor_set(x_34, 1, x_722); -lean_ctor_set(x_34, 0, x_717); -x_723 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_723, 0, x_5); -x_16 = x_723; -x_17 = x_12; -goto block_24; -} -else -{ -lean_object* x_724; lean_object* x_725; lean_object* x_726; lean_object* x_727; lean_object* x_728; lean_object* x_729; lean_object* x_730; uint8_t x_731; -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_724 = x_42; +if (lean_is_scalar(x_582)) { + x_587 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_42); - x_724 = lean_box(0); + x_587 = x_582; } -x_725 = lean_array_fget(x_718, x_719); -x_726 = lean_nat_add(x_719, x_715); -lean_dec(x_719); -if (lean_is_scalar(x_724)) { - x_727 = lean_alloc_ctor(0, 3, 0); -} else { - x_727 = x_724; -} -lean_ctor_set(x_727, 0, x_718); -lean_ctor_set(x_727, 1, x_726); -lean_ctor_set(x_727, 2, x_720); -x_728 = lean_ctor_get(x_39, 0); -lean_inc(x_728); -x_729 = lean_ctor_get(x_39, 1); -lean_inc(x_729); -x_730 = lean_ctor_get(x_39, 2); -lean_inc(x_730); -x_731 = lean_nat_dec_lt(x_729, x_730); -if (x_731 == 0) -{ -lean_object* x_732; lean_object* x_733; -lean_dec(x_730); -lean_dec(x_729); -lean_dec(x_728); -lean_dec(x_725); -lean_dec(x_714); -lean_dec(x_15); -x_732 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_732, 0, x_705); -lean_ctor_set(x_732, 1, x_706); -lean_ctor_set(x_34, 1, x_732); -lean_ctor_set(x_34, 0, x_717); -lean_ctor_set(x_33, 0, x_727); -x_733 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_733, 0, x_5); -x_16 = x_733; -x_17 = x_12; -goto block_24; +lean_ctor_set(x_587, 0, x_580); +lean_ctor_set(x_587, 1, x_581); +lean_ctor_set(x_35, 1, x_587); +x_588 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_588, 0, x_579); +lean_ctor_set(x_588, 1, x_35); +lean_ctor_set(x_5, 1, x_588); +x_589 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_589, 0, x_5); +x_590 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_590, 0, x_589); +lean_ctor_set(x_590, 1, x_12); +x_16 = x_590; +goto block_33; } else { -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; lean_object* x_741; lean_object* x_742; -lean_free_object(x_33); -lean_free_object(x_5); -lean_free_object(x_34); +lean_object* x_591; lean_object* x_592; lean_object* x_593; lean_object* x_594; lean_object* x_595; lean_object* x_596; lean_object* x_597; lean_object* x_598; uint8_t x_599; if (lean_is_exclusive(x_39)) { lean_ctor_release(x_39, 0); lean_ctor_release(x_39, 1); lean_ctor_release(x_39, 2); - x_734 = x_39; + x_591 = x_39; } else { lean_dec_ref(x_39); - x_734 = lean_box(0); + x_591 = lean_box(0); } -x_735 = lean_array_fget(x_728, x_729); -x_736 = lean_nat_add(x_729, x_715); -lean_dec(x_729); -if (lean_is_scalar(x_734)) { - x_737 = lean_alloc_ctor(0, 3, 0); -} else { - x_737 = x_734; -} -lean_ctor_set(x_737, 0, x_728); -lean_ctor_set(x_737, 1, x_736); -lean_ctor_set(x_737, 2, x_730); -x_738 = lean_ctor_get(x_735, 0); -lean_inc(x_738); -x_739 = lean_ctor_get(x_735, 1); -lean_inc(x_739); -x_740 = lean_ctor_get(x_735, 2); -lean_inc(x_740); -lean_dec(x_735); -x_741 = lean_box(0); -x_742 = lean_ctor_get(x_15, 7); -lean_inc(x_742); -if (lean_obj_tag(x_742) == 0) +x_592 = lean_array_fget(x_583, x_584); +x_593 = lean_unsigned_to_nat(1u); +x_594 = lean_nat_add(x_584, x_593); +lean_dec(x_584); +if (lean_is_scalar(x_591)) { + x_595 = lean_alloc_ctor(0, 3, 0); +} else { + x_595 = x_591; +} +lean_ctor_set(x_595, 0, x_583); +lean_ctor_set(x_595, 1, x_594); +lean_ctor_set(x_595, 2, x_585); +x_596 = lean_ctor_get(x_579, 0); +lean_inc(x_596); +x_597 = lean_ctor_get(x_579, 1); +lean_inc(x_597); +x_598 = lean_ctor_get(x_579, 2); +lean_inc(x_598); +x_599 = lean_nat_dec_lt(x_597, x_598); +if (x_599 == 0) +{ +lean_object* x_600; lean_object* x_601; lean_object* x_602; lean_object* x_603; +lean_dec(x_598); +lean_dec(x_597); +lean_dec(x_596); +lean_dec(x_592); +lean_dec(x_15); +if (lean_is_scalar(x_582)) { + x_600 = lean_alloc_ctor(0, 2, 0); +} else { + x_600 = x_582; +} +lean_ctor_set(x_600, 0, x_580); +lean_ctor_set(x_600, 1, x_581); +lean_ctor_set(x_35, 1, x_600); +lean_ctor_set(x_35, 0, x_595); +x_601 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_601, 0, x_579); +lean_ctor_set(x_601, 1, x_35); +lean_ctor_set(x_5, 1, x_601); +x_602 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_602, 0, x_5); +x_603 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_603, 0, x_602); +lean_ctor_set(x_603, 1, x_12); +x_16 = x_603; +goto block_33; +} +else +{ +lean_object* x_604; lean_object* x_605; lean_object* x_606; lean_object* x_607; lean_object* x_608; lean_object* x_609; lean_object* x_610; uint8_t x_611; +if (lean_is_exclusive(x_579)) { + lean_ctor_release(x_579, 0); + lean_ctor_release(x_579, 1); + lean_ctor_release(x_579, 2); + x_604 = x_579; +} else { + lean_dec_ref(x_579); + x_604 = lean_box(0); +} +x_605 = lean_array_fget(x_596, x_597); +x_606 = lean_nat_add(x_597, x_593); +lean_dec(x_597); +if (lean_is_scalar(x_604)) { + x_607 = lean_alloc_ctor(0, 3, 0); +} else { + x_607 = x_604; +} +lean_ctor_set(x_607, 0, x_596); +lean_ctor_set(x_607, 1, x_606); +lean_ctor_set(x_607, 2, x_598); +x_608 = lean_ctor_get(x_40, 0); +lean_inc(x_608); +x_609 = lean_ctor_get(x_40, 1); +lean_inc(x_609); +x_610 = lean_ctor_get(x_40, 2); +lean_inc(x_610); +x_611 = lean_nat_dec_lt(x_609, x_610); +if (x_611 == 0) { -lean_object* x_743; uint8_t x_744; lean_object* x_745; -x_743 = lean_box(0); -x_744 = lean_unbox(x_706); -lean_dec(x_706); +lean_object* x_612; lean_object* x_613; lean_object* x_614; lean_object* x_615; +lean_dec(x_610); +lean_dec(x_609); +lean_dec(x_608); +lean_dec(x_605); +lean_dec(x_592); +lean_dec(x_15); +if (lean_is_scalar(x_582)) { + x_612 = lean_alloc_ctor(0, 2, 0); +} else { + x_612 = x_582; +} +lean_ctor_set(x_612, 0, x_580); +lean_ctor_set(x_612, 1, x_581); +lean_ctor_set(x_35, 1, x_612); +lean_ctor_set(x_35, 0, x_595); +x_613 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_613, 0, x_607); +lean_ctor_set(x_613, 1, x_35); +lean_ctor_set(x_5, 1, x_613); +x_614 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_614, 0, x_5); +x_615 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_615, 0, x_614); +lean_ctor_set(x_615, 1, x_12); +x_16 = x_615; +goto block_33; +} +else +{ +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; lean_object* x_623; lean_object* x_624; +lean_dec(x_582); +lean_free_object(x_5); +lean_free_object(x_35); +if (lean_is_exclusive(x_40)) { + lean_ctor_release(x_40, 0); + lean_ctor_release(x_40, 1); + lean_ctor_release(x_40, 2); + x_616 = x_40; +} else { + lean_dec_ref(x_40); + x_616 = lean_box(0); +} +x_617 = lean_array_fget(x_608, x_609); +x_618 = lean_nat_add(x_609, x_593); +lean_dec(x_609); +if (lean_is_scalar(x_616)) { + x_619 = lean_alloc_ctor(0, 3, 0); +} else { + x_619 = x_616; +} +lean_ctor_set(x_619, 0, x_608); +lean_ctor_set(x_619, 1, x_618); +lean_ctor_set(x_619, 2, x_610); +x_620 = lean_ctor_get(x_617, 0); +lean_inc(x_620); +x_621 = lean_ctor_get(x_617, 1); +lean_inc(x_621); +x_622 = lean_ctor_get(x_617, 2); +lean_inc(x_622); +lean_dec(x_617); +x_623 = lean_box(0); +x_624 = lean_ctor_get(x_15, 7); +lean_inc(x_624); +if (lean_obj_tag(x_624) == 0) +{ +lean_object* x_625; uint8_t x_626; lean_object* x_627; +x_625 = lean_box(0); +x_626 = lean_unbox(x_581); +lean_dec(x_581); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -12545,73 +12046,154 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_745 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_714, x_725, x_738, x_739, x_740, x_717, x_727, x_737, x_705, x_741, x_744, x_743, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_745) == 0) +x_627 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_620, x_621, x_622, x_595, x_607, x_619, x_605, x_623, x_592, x_580, x_623, x_623, x_623, x_626, x_625, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_627; +goto block_33; +} +else { -lean_object* x_746; lean_object* x_747; -x_746 = lean_ctor_get(x_745, 0); -lean_inc(x_746); -x_747 = lean_ctor_get(x_745, 1); -lean_inc(x_747); -lean_dec(x_745); -x_16 = x_746; -x_17 = x_747; -goto block_24; +lean_object* x_628; lean_object* x_629; +x_628 = lean_ctor_get(x_624, 0); +lean_inc(x_628); +lean_dec(x_624); +x_629 = lean_ctor_get(x_628, 0); +lean_inc(x_629); +lean_dec(x_628); +if (lean_obj_tag(x_629) == 0) +{ +uint8_t x_630; lean_object* x_631; lean_object* x_632; +lean_dec(x_581); +x_630 = 0; +x_631 = 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_1); +x_632 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_620, x_621, x_622, x_595, x_607, x_619, x_605, x_623, x_592, x_580, x_623, x_623, x_623, x_630, x_631, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_632; +goto block_33; } else { -lean_object* x_748; lean_object* x_749; lean_object* x_750; lean_object* x_751; -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_748 = lean_ctor_get(x_745, 0); -lean_inc(x_748); -x_749 = lean_ctor_get(x_745, 1); -lean_inc(x_749); -if (lean_is_exclusive(x_745)) { - lean_ctor_release(x_745, 0); - lean_ctor_release(x_745, 1); - x_750 = x_745; +lean_object* x_633; lean_object* x_634; lean_object* x_635; lean_object* x_636; +x_633 = lean_ctor_get(x_629, 0); +lean_inc(x_633); +if (lean_is_exclusive(x_629)) { + lean_ctor_release(x_629, 0); + x_634 = x_629; } else { - lean_dec_ref(x_745); - x_750 = lean_box(0); + lean_dec_ref(x_629); + x_634 = lean_box(0); +} +x_635 = lean_ctor_get(x_633, 1); +lean_inc(x_635); +lean_dec(x_633); +x_636 = l_Lean_Language_SnapshotTask_get___rarg(x_635); +if (lean_obj_tag(x_636) == 0) +{ +uint8_t x_637; lean_object* x_638; lean_object* x_639; +lean_dec(x_634); +lean_dec(x_581); +x_637 = 0; +x_638 = 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_1); +x_639 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_620, x_621, x_622, x_595, x_607, x_619, x_605, x_623, x_592, x_580, x_623, x_623, x_623, x_637, x_638, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_639; +goto block_33; } -if (lean_is_scalar(x_750)) { - x_751 = lean_alloc_ctor(1, 2, 0); +else +{ +lean_object* x_640; lean_object* x_641; lean_object* x_642; 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_object* x_650; lean_object* x_651; uint8_t x_652; +x_640 = lean_ctor_get(x_636, 0); +lean_inc(x_640); +if (lean_is_exclusive(x_636)) { + lean_ctor_release(x_636, 0); + x_641 = x_636; } else { - x_751 = x_750; + lean_dec_ref(x_636); + x_641 = lean_box(0); } -lean_ctor_set(x_751, 0, x_748); -lean_ctor_set(x_751, 1, x_749); -return x_751; +x_642 = lean_ctor_get(x_10, 2); +lean_inc(x_642); +x_643 = lean_ctor_get(x_640, 1); +lean_inc(x_643); +x_644 = lean_ctor_get(x_640, 2); +lean_inc(x_644); +x_645 = lean_ctor_get(x_640, 3); +lean_inc(x_645); +x_646 = lean_ctor_get(x_640, 4); +lean_inc(x_646); +x_647 = lean_ctor_get(x_640, 5); +lean_inc(x_647); +x_648 = lean_ctor_get(x_640, 6); +lean_inc(x_648); +lean_dec(x_640); +lean_inc(x_15); +x_649 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_649, 0, x_15); +lean_ctor_set(x_649, 1, x_643); +lean_ctor_set(x_649, 2, x_623); +lean_ctor_set(x_649, 3, x_623); +x_650 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_650, 0, x_649); +lean_ctor_set(x_650, 1, x_644); +if (lean_is_scalar(x_641)) { + x_651 = lean_alloc_ctor(1, 1, 0); +} else { + x_651 = x_641; } +lean_ctor_set(x_651, 0, x_650); +x_652 = lean_unbox(x_581); +lean_dec(x_581); +if (x_652 == 0) +{ +uint8_t x_653; lean_object* x_654; lean_object* x_655; +lean_dec(x_648); +lean_dec(x_647); +lean_dec(x_646); +lean_dec(x_645); +lean_dec(x_642); +lean_dec(x_634); +x_653 = 0; +x_654 = 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_1); +x_655 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_620, x_621, x_622, x_595, x_607, x_619, x_605, x_623, x_592, x_580, x_623, x_623, x_651, x_653, x_654, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_655; +goto block_33; } else { -lean_object* x_752; lean_object* x_753; lean_object* x_754; -x_752 = lean_ctor_get(x_742, 0); -lean_inc(x_752); -if (lean_is_exclusive(x_742)) { - lean_ctor_release(x_742, 0); - x_753 = x_742; -} else { - lean_dec_ref(x_742); - x_753 = lean_box(0); -} -x_754 = lean_ctor_get(x_752, 0); -lean_inc(x_754); -if (lean_obj_tag(x_754) == 0) +lean_object* x_656; lean_object* x_657; uint8_t x_658; +x_656 = lean_ctor_get(x_15, 6); +lean_inc(x_656); +x_657 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_642, x_656, x_647); +lean_dec(x_642); +x_658 = lean_unbox(x_657); +lean_dec(x_657); +if (x_658 == 0) { -uint8_t x_755; lean_object* x_756; lean_object* x_757; -lean_dec(x_753); -lean_dec(x_752); -lean_dec(x_706); -x_755 = 0; -x_756 = lean_box(0); +lean_dec(x_648); +lean_dec(x_634); +if (lean_obj_tag(x_645) == 0) +{ +lean_object* x_659; lean_object* x_660; +lean_dec(x_646); +x_659 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -12619,76 +12201,84 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_757 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_714, x_725, x_738, x_739, x_740, x_717, x_727, x_737, x_705, x_741, x_755, x_756, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_757) == 0) +x_660 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_620, x_621, x_622, x_595, x_607, x_619, x_605, x_623, x_592, x_580, x_623, x_623, x_651, x_658, x_659, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_660; +goto block_33; +} +else { -lean_object* x_758; lean_object* x_759; -x_758 = lean_ctor_get(x_757, 0); -lean_inc(x_758); -x_759 = lean_ctor_get(x_757, 1); -lean_inc(x_759); -lean_dec(x_757); -x_16 = x_758; -x_17 = x_759; -goto block_24; +if (lean_obj_tag(x_646) == 0) +{ +lean_object* x_661; lean_object* x_662; +lean_dec(x_645); +x_661 = 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_1); +x_662 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_620, x_621, x_622, x_595, x_607, x_619, x_605, x_623, x_592, x_580, x_623, x_623, x_651, x_658, x_661, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_662; +goto block_33; } else { -lean_object* x_760; lean_object* x_761; lean_object* x_762; lean_object* x_763; -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_760 = lean_ctor_get(x_757, 0); -lean_inc(x_760); -x_761 = lean_ctor_get(x_757, 1); -lean_inc(x_761); -if (lean_is_exclusive(x_757)) { - lean_ctor_release(x_757, 0); - lean_ctor_release(x_757, 1); - x_762 = x_757; +lean_object* x_663; lean_object* x_664; lean_object* x_665; lean_object* x_666; lean_object* x_667; lean_object* x_668; lean_object* x_669; +x_663 = lean_ctor_get(x_645, 0); +lean_inc(x_663); +lean_dec(x_645); +x_664 = lean_ctor_get(x_646, 0); +lean_inc(x_664); +if (lean_is_exclusive(x_646)) { + lean_ctor_release(x_646, 0); + x_665 = x_646; +} else { + lean_dec_ref(x_646); + x_665 = lean_box(0); +} +x_666 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_666, 0, x_663); +lean_ctor_set(x_666, 1, x_664); +if (lean_is_scalar(x_665)) { + x_667 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_757); - x_762 = lean_box(0); + x_667 = x_665; } -if (lean_is_scalar(x_762)) { - x_763 = lean_alloc_ctor(1, 2, 0); -} else { - x_763 = x_762; +lean_ctor_set(x_667, 0, x_666); +x_668 = 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_1); +x_669 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_620, x_621, x_622, x_595, x_607, x_619, x_605, x_623, x_592, x_580, x_623, x_667, x_651, x_658, x_668, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_669; +goto block_33; } -lean_ctor_set(x_763, 0, x_760); -lean_ctor_set(x_763, 1, x_761); -return x_763; } } else { -lean_object* x_764; lean_object* x_765; lean_object* x_766; lean_object* x_767; -x_764 = lean_ctor_get(x_754, 0); -lean_inc(x_764); -if (lean_is_exclusive(x_754)) { - lean_ctor_release(x_754, 0); - x_765 = x_754; +lean_object* x_670; lean_object* x_671; lean_object* x_672; +x_670 = lean_box(0); +x_671 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_671, 0, x_670); +lean_ctor_set(x_671, 1, x_648); +if (lean_is_scalar(x_634)) { + x_672 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_754); - x_765 = lean_box(0); + x_672 = x_634; } -x_766 = lean_ctor_get(x_764, 1); -lean_inc(x_766); -lean_dec(x_764); -x_767 = l_Lean_Language_SnapshotTask_get___rarg(x_766); -if (lean_obj_tag(x_767) == 0) +lean_ctor_set(x_672, 0, x_671); +if (lean_obj_tag(x_645) == 0) { -uint8_t x_768; lean_object* x_769; lean_object* x_770; -lean_dec(x_765); -lean_dec(x_753); -lean_dec(x_752); -lean_dec(x_706); -x_768 = 0; -x_769 = lean_box(0); +lean_object* x_673; lean_object* x_674; +lean_dec(x_646); +x_673 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -12696,421 +12286,445 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_770 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_714, x_725, x_738, x_739, x_740, x_717, x_727, x_737, x_705, x_741, x_768, x_769, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_770) == 0) +x_674 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_620, x_621, x_622, x_595, x_607, x_619, x_605, x_623, x_592, x_580, x_672, x_623, x_651, x_658, x_673, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_674; +goto block_33; +} +else { -lean_object* x_771; lean_object* x_772; -x_771 = lean_ctor_get(x_770, 0); -lean_inc(x_771); -x_772 = lean_ctor_get(x_770, 1); -lean_inc(x_772); -lean_dec(x_770); -x_16 = x_771; -x_17 = x_772; -goto block_24; +if (lean_obj_tag(x_646) == 0) +{ +lean_object* x_675; lean_object* x_676; +lean_dec(x_645); +x_675 = 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_1); +x_676 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_620, x_621, x_622, x_595, x_607, x_619, x_605, x_623, x_592, x_580, x_672, x_623, x_651, x_658, x_675, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_676; +goto block_33; } else { -lean_object* x_773; lean_object* x_774; lean_object* x_775; lean_object* x_776; -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_773 = lean_ctor_get(x_770, 0); -lean_inc(x_773); -x_774 = lean_ctor_get(x_770, 1); -lean_inc(x_774); -if (lean_is_exclusive(x_770)) { - lean_ctor_release(x_770, 0); - lean_ctor_release(x_770, 1); - x_775 = x_770; +lean_object* x_677; lean_object* x_678; lean_object* x_679; lean_object* x_680; lean_object* x_681; lean_object* x_682; lean_object* x_683; +x_677 = lean_ctor_get(x_645, 0); +lean_inc(x_677); +lean_dec(x_645); +x_678 = lean_ctor_get(x_646, 0); +lean_inc(x_678); +if (lean_is_exclusive(x_646)) { + lean_ctor_release(x_646, 0); + x_679 = x_646; } else { - lean_dec_ref(x_770); - x_775 = lean_box(0); + lean_dec_ref(x_646); + x_679 = lean_box(0); } -if (lean_is_scalar(x_775)) { - x_776 = lean_alloc_ctor(1, 2, 0); +x_680 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_680, 0, x_677); +lean_ctor_set(x_680, 1, x_678); +if (lean_is_scalar(x_679)) { + x_681 = lean_alloc_ctor(1, 1, 0); } else { - x_776 = x_775; + x_681 = x_679; +} +lean_ctor_set(x_681, 0, x_680); +x_682 = 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_1); +x_683 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_620, x_621, x_622, x_595, x_607, x_619, x_605, x_623, x_592, x_580, x_672, x_681, x_651, x_658, x_682, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_683; +goto block_33; } -lean_ctor_set(x_776, 0, x_773); -lean_ctor_set(x_776, 1, x_774); -return x_776; } } -else -{ -lean_object* x_777; lean_object* x_778; lean_object* x_779; lean_object* x_780; 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_object* x_788; lean_object* x_789; lean_object* x_790; lean_object* x_791; lean_object* x_792; lean_object* x_793; lean_object* x_794; 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_object* x_802; uint8_t x_803; uint8_t x_843; -x_777 = lean_ctor_get(x_767, 0); -lean_inc(x_777); -if (lean_is_exclusive(x_767)) { - lean_ctor_release(x_767, 0); - x_778 = x_767; -} else { - lean_dec_ref(x_767); - x_778 = lean_box(0); } -x_779 = lean_ctor_get(x_15, 6); -lean_inc(x_779); -lean_inc(x_725); -lean_inc(x_779); -x_780 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_779, x_725, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -x_781 = lean_ctor_get(x_780, 0); -lean_inc(x_781); -x_782 = lean_ctor_get(x_780, 1); -lean_inc(x_782); -if (lean_is_exclusive(x_780)) { - lean_ctor_release(x_780, 0); - lean_ctor_release(x_780, 1); - x_783 = x_780; -} else { - lean_dec_ref(x_780); - x_783 = lean_box(0); } -x_784 = lean_ctor_get(x_781, 0); -lean_inc(x_784); -x_785 = lean_ctor_get(x_781, 1); -lean_inc(x_785); -if (lean_is_exclusive(x_781)) { - lean_ctor_release(x_781, 0); - lean_ctor_release(x_781, 1); - x_786 = x_781; -} else { - lean_dec_ref(x_781); - x_786 = lean_box(0); } -x_787 = lean_ctor_get(x_777, 0); -lean_inc(x_787); -x_788 = lean_ctor_get(x_777, 1); -lean_inc(x_788); -x_789 = lean_ctor_get(x_777, 2); -lean_inc(x_789); -x_790 = lean_ctor_get(x_777, 3); -lean_inc(x_790); -x_791 = lean_ctor_get(x_777, 4); -lean_inc(x_791); -x_792 = lean_ctor_get(x_777, 5); -lean_inc(x_792); -x_793 = lean_ctor_get(x_777, 6); -lean_inc(x_793); -if (lean_is_exclusive(x_777)) { - lean_ctor_release(x_777, 0); - lean_ctor_release(x_777, 1); - lean_ctor_release(x_777, 2); - lean_ctor_release(x_777, 3); - lean_ctor_release(x_777, 4); - lean_ctor_release(x_777, 5); - lean_ctor_release(x_777, 6); - x_794 = x_777; -} else { - lean_dec_ref(x_777); - x_794 = lean_box(0); -} -lean_inc(x_714); -lean_inc(x_779); -x_795 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_779, x_714); -lean_inc(x_779); -lean_inc(x_785); -lean_inc(x_789); -lean_inc(x_788); -if (lean_is_scalar(x_794)) { - x_796 = lean_alloc_ctor(0, 7, 0); -} else { - x_796 = x_794; -} -lean_ctor_set(x_796, 0, x_787); -lean_ctor_set(x_796, 1, x_788); -lean_ctor_set(x_796, 2, x_789); -lean_ctor_set(x_796, 3, x_784); -lean_ctor_set(x_796, 4, x_785); -lean_ctor_set(x_796, 5, x_779); -lean_ctor_set(x_796, 6, x_795); -if (lean_is_scalar(x_778)) { - x_797 = lean_alloc_ctor(1, 1, 0); -} else { - x_797 = x_778; -} -lean_ctor_set(x_797, 0, x_796); -x_798 = lean_ctor_get(x_752, 1); -lean_inc(x_798); -lean_dec(x_752); -x_799 = lean_io_promise_resolve(x_797, x_798, x_782); -lean_dec(x_798); -x_800 = lean_ctor_get(x_799, 1); -lean_inc(x_800); -if (lean_is_exclusive(x_799)) { - lean_ctor_release(x_799, 0); - lean_ctor_release(x_799, 1); - x_801 = x_799; -} else { - lean_dec_ref(x_799); - x_801 = lean_box(0); } -x_802 = lean_ctor_get(x_10, 2); -lean_inc(x_802); -x_843 = lean_unbox(x_706); -if (x_843 == 0) -{ -uint8_t x_844; -lean_dec(x_802); -lean_dec(x_792); -lean_dec(x_779); -x_844 = 0; -x_803 = x_844; -goto block_842; } -else -{ -lean_object* x_845; uint8_t x_846; -x_845 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_802, x_779, x_792); -lean_dec(x_802); -x_846 = lean_unbox(x_845); -lean_dec(x_845); -x_803 = x_846; -goto block_842; } -block_842: -{ -lean_object* x_804; lean_object* x_813; -if (lean_obj_tag(x_785) == 0) -{ -lean_dec(x_791); -lean_dec(x_790); -lean_dec(x_706); -if (x_803 == 0) -{ -lean_dec(x_793); -lean_dec(x_783); -x_804 = x_741; -goto block_812; } -else -{ -lean_dec(x_801); -lean_dec(x_786); -lean_dec(x_765); -lean_dec(x_753); -x_813 = x_741; -goto block_824; } } else { -lean_object* x_825; uint8_t x_826; -if (lean_is_exclusive(x_785)) { - lean_ctor_release(x_785, 0); - x_825 = x_785; +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_693; lean_object* x_694; uint8_t x_695; +x_684 = lean_ctor_get(x_35, 1); +x_685 = lean_ctor_get(x_35, 0); +x_686 = lean_ctor_get(x_5, 0); +lean_inc(x_686); +lean_dec(x_5); +x_687 = lean_ctor_get(x_34, 0); +lean_inc(x_687); +if (lean_is_exclusive(x_34)) { + lean_ctor_release(x_34, 0); + lean_ctor_release(x_34, 1); + x_688 = x_34; } else { - lean_dec_ref(x_785); - x_825 = lean_box(0); + lean_dec_ref(x_34); + x_688 = lean_box(0); } -x_826 = lean_unbox(x_706); -lean_dec(x_706); -if (x_826 == 0) -{ -lean_object* x_827; lean_object* x_828; -lean_dec(x_791); -lean_dec(x_790); -lean_inc(x_725); -x_827 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_827, 0, x_741); -lean_ctor_set(x_827, 1, x_725); -if (lean_is_scalar(x_825)) { - x_828 = lean_alloc_ctor(1, 1, 0); +x_689 = lean_ctor_get(x_684, 0); +lean_inc(x_689); +x_690 = lean_ctor_get(x_684, 1); +lean_inc(x_690); +if (lean_is_exclusive(x_684)) { + lean_ctor_release(x_684, 0); + lean_ctor_release(x_684, 1); + x_691 = x_684; } else { - x_828 = x_825; + lean_dec_ref(x_684); + x_691 = lean_box(0); } -lean_ctor_set(x_828, 0, x_827); -if (x_803 == 0) +x_692 = lean_ctor_get(x_685, 0); +lean_inc(x_692); +x_693 = lean_ctor_get(x_685, 1); +lean_inc(x_693); +x_694 = lean_ctor_get(x_685, 2); +lean_inc(x_694); +x_695 = lean_nat_dec_lt(x_693, x_694); +if (x_695 == 0) { -lean_dec(x_793); -lean_dec(x_783); -x_804 = x_828; -goto block_812; +lean_object* x_696; lean_object* x_697; lean_object* x_698; lean_object* x_699; lean_object* x_700; +lean_dec(x_694); +lean_dec(x_693); +lean_dec(x_692); +lean_dec(x_15); +if (lean_is_scalar(x_691)) { + x_696 = lean_alloc_ctor(0, 2, 0); +} else { + x_696 = x_691; } -else -{ -lean_dec(x_801); -lean_dec(x_786); -lean_dec(x_765); -lean_dec(x_753); -x_813 = x_828; -goto block_824; +lean_ctor_set(x_696, 0, x_689); +lean_ctor_set(x_696, 1, x_690); +lean_ctor_set(x_35, 1, x_696); +if (lean_is_scalar(x_688)) { + x_697 = lean_alloc_ctor(0, 2, 0); +} else { + x_697 = x_688; } +lean_ctor_set(x_697, 0, x_687); +lean_ctor_set(x_697, 1, x_35); +x_698 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_698, 0, x_686); +lean_ctor_set(x_698, 1, x_697); +x_699 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_699, 0, x_698); +x_700 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_700, 0, x_699); +lean_ctor_set(x_700, 1, x_12); +x_16 = x_700; +goto block_33; } else { -if (lean_obj_tag(x_790) == 0) -{ -lean_object* x_829; lean_object* x_830; -lean_dec(x_791); -lean_inc(x_725); -x_829 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_829, 0, x_741); -lean_ctor_set(x_829, 1, x_725); -if (lean_is_scalar(x_825)) { - x_830 = lean_alloc_ctor(1, 1, 0); +lean_object* x_701; lean_object* x_702; lean_object* x_703; lean_object* x_704; lean_object* x_705; lean_object* x_706; lean_object* x_707; lean_object* x_708; uint8_t x_709; +if (lean_is_exclusive(x_685)) { + lean_ctor_release(x_685, 0); + lean_ctor_release(x_685, 1); + lean_ctor_release(x_685, 2); + x_701 = x_685; } else { - x_830 = x_825; + lean_dec_ref(x_685); + x_701 = lean_box(0); } -lean_ctor_set(x_830, 0, x_829); -if (x_803 == 0) -{ -lean_dec(x_793); -lean_dec(x_783); -x_804 = x_830; -goto block_812; +x_702 = lean_array_fget(x_692, x_693); +x_703 = lean_unsigned_to_nat(1u); +x_704 = lean_nat_add(x_693, x_703); +lean_dec(x_693); +if (lean_is_scalar(x_701)) { + x_705 = lean_alloc_ctor(0, 3, 0); +} else { + x_705 = x_701; } -else -{ -lean_dec(x_801); -lean_dec(x_786); -lean_dec(x_765); -lean_dec(x_753); -x_813 = x_830; -goto block_824; -} -} -else -{ -lean_dec(x_825); -if (lean_obj_tag(x_791) == 0) +lean_ctor_set(x_705, 0, x_692); +lean_ctor_set(x_705, 1, x_704); +lean_ctor_set(x_705, 2, x_694); +x_706 = lean_ctor_get(x_687, 0); +lean_inc(x_706); +x_707 = lean_ctor_get(x_687, 1); +lean_inc(x_707); +x_708 = lean_ctor_get(x_687, 2); +lean_inc(x_708); +x_709 = lean_nat_dec_lt(x_707, x_708); +if (x_709 == 0) { -lean_object* x_831; lean_object* x_832; lean_object* x_833; -if (lean_is_exclusive(x_790)) { - lean_ctor_release(x_790, 0); - x_831 = x_790; -} else { - lean_dec_ref(x_790); - x_831 = lean_box(0); -} -lean_inc(x_725); -x_832 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_832, 0, x_741); -lean_ctor_set(x_832, 1, x_725); -if (lean_is_scalar(x_831)) { - x_833 = lean_alloc_ctor(1, 1, 0); +lean_object* x_710; lean_object* x_711; lean_object* x_712; lean_object* x_713; lean_object* x_714; +lean_dec(x_708); +lean_dec(x_707); +lean_dec(x_706); +lean_dec(x_702); +lean_dec(x_15); +if (lean_is_scalar(x_691)) { + x_710 = lean_alloc_ctor(0, 2, 0); +} else { + x_710 = x_691; +} +lean_ctor_set(x_710, 0, x_689); +lean_ctor_set(x_710, 1, x_690); +lean_ctor_set(x_35, 1, x_710); +lean_ctor_set(x_35, 0, x_705); +if (lean_is_scalar(x_688)) { + x_711 = lean_alloc_ctor(0, 2, 0); +} else { + x_711 = x_688; +} +lean_ctor_set(x_711, 0, x_687); +lean_ctor_set(x_711, 1, x_35); +x_712 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_712, 0, x_686); +lean_ctor_set(x_712, 1, x_711); +x_713 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_713, 0, x_712); +x_714 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_714, 0, x_713); +lean_ctor_set(x_714, 1, x_12); +x_16 = x_714; +goto block_33; +} +else +{ +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_object* x_721; uint8_t x_722; +if (lean_is_exclusive(x_687)) { + lean_ctor_release(x_687, 0); + lean_ctor_release(x_687, 1); + lean_ctor_release(x_687, 2); + x_715 = x_687; +} else { + lean_dec_ref(x_687); + x_715 = lean_box(0); +} +x_716 = lean_array_fget(x_706, x_707); +x_717 = lean_nat_add(x_707, x_703); +lean_dec(x_707); +if (lean_is_scalar(x_715)) { + x_718 = lean_alloc_ctor(0, 3, 0); } else { - x_833 = x_831; + x_718 = x_715; } -lean_ctor_set(x_833, 0, x_832); -if (x_803 == 0) +lean_ctor_set(x_718, 0, x_706); +lean_ctor_set(x_718, 1, x_717); +lean_ctor_set(x_718, 2, x_708); +x_719 = lean_ctor_get(x_686, 0); +lean_inc(x_719); +x_720 = lean_ctor_get(x_686, 1); +lean_inc(x_720); +x_721 = lean_ctor_get(x_686, 2); +lean_inc(x_721); +x_722 = lean_nat_dec_lt(x_720, x_721); +if (x_722 == 0) { -lean_dec(x_793); -lean_dec(x_783); -x_804 = x_833; -goto block_812; +lean_object* x_723; lean_object* x_724; lean_object* x_725; lean_object* x_726; lean_object* x_727; +lean_dec(x_721); +lean_dec(x_720); +lean_dec(x_719); +lean_dec(x_716); +lean_dec(x_702); +lean_dec(x_15); +if (lean_is_scalar(x_691)) { + x_723 = lean_alloc_ctor(0, 2, 0); +} else { + x_723 = x_691; +} +lean_ctor_set(x_723, 0, x_689); +lean_ctor_set(x_723, 1, x_690); +lean_ctor_set(x_35, 1, x_723); +lean_ctor_set(x_35, 0, x_705); +if (lean_is_scalar(x_688)) { + x_724 = lean_alloc_ctor(0, 2, 0); +} else { + x_724 = x_688; +} +lean_ctor_set(x_724, 0, x_718); +lean_ctor_set(x_724, 1, x_35); +x_725 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_725, 0, x_686); +lean_ctor_set(x_725, 1, x_724); +x_726 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_726, 0, x_725); +x_727 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_727, 0, x_726); +lean_ctor_set(x_727, 1, x_12); +x_16 = x_727; +goto block_33; +} +else +{ +lean_object* x_728; lean_object* x_729; lean_object* x_730; lean_object* x_731; lean_object* x_732; lean_object* x_733; lean_object* x_734; lean_object* x_735; lean_object* x_736; +lean_dec(x_691); +lean_dec(x_688); +lean_free_object(x_35); +if (lean_is_exclusive(x_686)) { + lean_ctor_release(x_686, 0); + lean_ctor_release(x_686, 1); + lean_ctor_release(x_686, 2); + x_728 = x_686; +} else { + lean_dec_ref(x_686); + x_728 = lean_box(0); +} +x_729 = lean_array_fget(x_719, x_720); +x_730 = lean_nat_add(x_720, x_703); +lean_dec(x_720); +if (lean_is_scalar(x_728)) { + x_731 = lean_alloc_ctor(0, 3, 0); +} else { + x_731 = x_728; +} +lean_ctor_set(x_731, 0, x_719); +lean_ctor_set(x_731, 1, x_730); +lean_ctor_set(x_731, 2, x_721); +x_732 = lean_ctor_get(x_729, 0); +lean_inc(x_732); +x_733 = lean_ctor_get(x_729, 1); +lean_inc(x_733); +x_734 = lean_ctor_get(x_729, 2); +lean_inc(x_734); +lean_dec(x_729); +x_735 = lean_box(0); +x_736 = lean_ctor_get(x_15, 7); +lean_inc(x_736); +if (lean_obj_tag(x_736) == 0) +{ +lean_object* x_737; uint8_t x_738; lean_object* x_739; +x_737 = lean_box(0); +x_738 = lean_unbox(x_690); +lean_dec(x_690); +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_739 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_732, x_733, x_734, x_705, x_718, x_731, x_716, x_735, x_702, x_689, x_735, x_735, x_735, x_738, x_737, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_739; +goto block_33; } else { -lean_dec(x_801); -lean_dec(x_786); -lean_dec(x_765); -lean_dec(x_753); -x_813 = x_833; -goto block_824; -} +lean_object* x_740; lean_object* x_741; +x_740 = lean_ctor_get(x_736, 0); +lean_inc(x_740); +lean_dec(x_736); +x_741 = lean_ctor_get(x_740, 0); +lean_inc(x_741); +lean_dec(x_740); +if (lean_obj_tag(x_741) == 0) +{ +uint8_t x_742; lean_object* x_743; lean_object* x_744; +lean_dec(x_690); +x_742 = 0; +x_743 = 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_1); +x_744 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_732, x_733, x_734, x_705, x_718, x_731, x_716, x_735, x_702, x_689, x_735, x_735, x_735, x_742, x_743, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_744; +goto block_33; } else { -lean_object* x_834; 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; -x_834 = lean_ctor_get(x_790, 0); -lean_inc(x_834); -if (lean_is_exclusive(x_790)) { - lean_ctor_release(x_790, 0); - x_835 = x_790; -} else { - lean_dec_ref(x_790); - x_835 = lean_box(0); -} -x_836 = lean_ctor_get(x_791, 0); -lean_inc(x_836); -if (lean_is_exclusive(x_791)) { - lean_ctor_release(x_791, 0); - x_837 = x_791; -} else { - lean_dec_ref(x_791); - x_837 = lean_box(0); -} -x_838 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_838, 0, x_834); -lean_ctor_set(x_838, 1, x_836); -if (lean_is_scalar(x_837)) { - x_839 = lean_alloc_ctor(1, 1, 0); +lean_object* x_745; lean_object* x_746; lean_object* x_747; lean_object* x_748; +x_745 = lean_ctor_get(x_741, 0); +lean_inc(x_745); +if (lean_is_exclusive(x_741)) { + lean_ctor_release(x_741, 0); + x_746 = x_741; } else { - x_839 = x_837; + lean_dec_ref(x_741); + x_746 = lean_box(0); } -lean_ctor_set(x_839, 0, x_838); -lean_inc(x_725); -x_840 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_840, 0, x_839); -lean_ctor_set(x_840, 1, x_725); -if (lean_is_scalar(x_835)) { - x_841 = lean_alloc_ctor(1, 1, 0); -} else { - x_841 = x_835; -} -lean_ctor_set(x_841, 0, x_840); -if (x_803 == 0) -{ -lean_dec(x_793); -lean_dec(x_783); -x_804 = x_841; -goto block_812; +x_747 = lean_ctor_get(x_745, 1); +lean_inc(x_747); +lean_dec(x_745); +x_748 = l_Lean_Language_SnapshotTask_get___rarg(x_747); +if (lean_obj_tag(x_748) == 0) +{ +uint8_t x_749; lean_object* x_750; lean_object* x_751; +lean_dec(x_746); +lean_dec(x_690); +x_749 = 0; +x_750 = 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_1); +x_751 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_732, x_733, x_734, x_705, x_718, x_731, x_716, x_735, x_702, x_689, x_735, x_735, x_735, x_749, x_750, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_751; +goto block_33; } else { -lean_dec(x_801); -lean_dec(x_786); -lean_dec(x_765); -lean_dec(x_753); -x_813 = x_841; -goto block_824; -} -} -} -} -} -block_812: -{ -lean_object* x_805; lean_object* x_806; lean_object* x_807; lean_object* x_808; lean_object* x_809; lean_object* x_810; lean_object* x_811; -lean_inc(x_714); -if (lean_is_scalar(x_801)) { - x_805 = lean_alloc_ctor(0, 2, 0); -} else { - x_805 = x_801; -} -lean_ctor_set(x_805, 0, x_741); -lean_ctor_set(x_805, 1, x_714); -if (lean_is_scalar(x_765)) { - x_806 = lean_alloc_ctor(1, 1, 0); +lean_object* x_752; lean_object* x_753; lean_object* x_754; lean_object* x_755; lean_object* x_756; lean_object* x_757; lean_object* x_758; lean_object* x_759; lean_object* x_760; lean_object* x_761; lean_object* x_762; lean_object* x_763; uint8_t x_764; +x_752 = lean_ctor_get(x_748, 0); +lean_inc(x_752); +if (lean_is_exclusive(x_748)) { + lean_ctor_release(x_748, 0); + x_753 = x_748; } else { - x_806 = x_765; + lean_dec_ref(x_748); + x_753 = lean_box(0); } -lean_ctor_set(x_806, 0, x_805); +x_754 = lean_ctor_get(x_10, 2); +lean_inc(x_754); +x_755 = lean_ctor_get(x_752, 1); +lean_inc(x_755); +x_756 = lean_ctor_get(x_752, 2); +lean_inc(x_756); +x_757 = lean_ctor_get(x_752, 3); +lean_inc(x_757); +x_758 = lean_ctor_get(x_752, 4); +lean_inc(x_758); +x_759 = lean_ctor_get(x_752, 5); +lean_inc(x_759); +x_760 = lean_ctor_get(x_752, 6); +lean_inc(x_760); +lean_dec(x_752); lean_inc(x_15); -x_807 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_807, 0, x_15); -lean_ctor_set(x_807, 1, x_788); -lean_ctor_set(x_807, 2, x_804); -lean_ctor_set(x_807, 3, x_806); -if (lean_is_scalar(x_786)) { - x_808 = lean_alloc_ctor(0, 2, 0); -} else { - x_808 = x_786; -} -lean_ctor_set(x_808, 0, x_807); -lean_ctor_set(x_808, 1, x_789); +x_761 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_761, 0, x_15); +lean_ctor_set(x_761, 1, x_755); +lean_ctor_set(x_761, 2, x_735); +lean_ctor_set(x_761, 3, x_735); +x_762 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_762, 0, x_761); +lean_ctor_set(x_762, 1, x_756); if (lean_is_scalar(x_753)) { - x_809 = lean_alloc_ctor(1, 1, 0); + x_763 = lean_alloc_ctor(1, 1, 0); } else { - x_809 = x_753; + x_763 = x_753; } -lean_ctor_set(x_809, 0, x_808); -x_810 = lean_box(0); +lean_ctor_set(x_763, 0, x_762); +x_764 = lean_unbox(x_690); +lean_dec(x_690); +if (x_764 == 0) +{ +uint8_t x_765; lean_object* x_766; lean_object* x_767; +lean_dec(x_760); +lean_dec(x_759); +lean_dec(x_758); +lean_dec(x_757); +lean_dec(x_754); +lean_dec(x_746); +x_765 = 0; +x_766 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -13118,41 +12732,28 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_811 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_714, x_725, x_738, x_739, x_740, x_717, x_727, x_737, x_705, x_809, x_803, x_810, x_6, x_7, x_8, x_9, x_10, x_11, x_800); -x_25 = x_811; -goto block_32; +x_767 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_732, x_733, x_734, x_705, x_718, x_731, x_716, x_735, x_702, x_689, x_735, x_735, x_763, x_765, x_766, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_767; +goto block_33; } -block_824: -{ -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_object* x_820; lean_object* x_821; lean_object* x_822; lean_object* x_823; -x_814 = lean_box(0); -if (lean_is_scalar(x_783)) { - x_815 = lean_alloc_ctor(0, 2, 0); -} else { - x_815 = x_783; -} -lean_ctor_set(x_815, 0, x_814); -lean_ctor_set(x_815, 1, x_793); -x_816 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_816, 0, x_815); -lean_inc(x_714); -x_817 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_817, 0, x_816); -lean_ctor_set(x_817, 1, x_714); -x_818 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_818, 0, x_817); -lean_inc(x_15); -x_819 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_819, 0, x_15); -lean_ctor_set(x_819, 1, x_788); -lean_ctor_set(x_819, 2, x_813); -lean_ctor_set(x_819, 3, x_818); -x_820 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_820, 0, x_819); -lean_ctor_set(x_820, 1, x_789); -x_821 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_821, 0, x_820); -x_822 = lean_box(0); +else +{ +lean_object* x_768; lean_object* x_769; uint8_t x_770; +x_768 = lean_ctor_get(x_15, 6); +lean_inc(x_768); +x_769 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_754, x_768, x_759); +lean_dec(x_754); +x_770 = lean_unbox(x_769); +lean_dec(x_769); +if (x_770 == 0) +{ +lean_dec(x_760); +lean_dec(x_746); +if (lean_obj_tag(x_757) == 0) +{ +lean_object* x_771; lean_object* x_772; +lean_dec(x_758); +x_771 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -13160,227 +12761,53 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_823 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_714, x_725, x_738, x_739, x_740, x_717, x_727, x_737, x_705, x_821, x_803, x_822, x_6, x_7, x_8, x_9, x_10, x_11, x_800); -x_25 = x_823; -goto block_32; -} -} -} -} -} -} -} -} -} +x_772 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_732, x_733, x_734, x_705, x_718, x_731, x_716, x_735, x_702, x_689, x_735, x_735, x_763, x_770, x_771, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_772; +goto block_33; } else { -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; uint8_t x_854; -x_847 = lean_ctor_get(x_33, 0); -lean_inc(x_847); -lean_dec(x_33); -x_848 = lean_ctor_get(x_37, 0); -lean_inc(x_848); -x_849 = lean_ctor_get(x_37, 1); -lean_inc(x_849); -if (lean_is_exclusive(x_37)) { - lean_ctor_release(x_37, 0); - lean_ctor_release(x_37, 1); - x_850 = x_37; -} else { - lean_dec_ref(x_37); - x_850 = lean_box(0); -} -x_851 = lean_ctor_get(x_38, 0); -lean_inc(x_851); -x_852 = lean_ctor_get(x_38, 1); -lean_inc(x_852); -x_853 = lean_ctor_get(x_38, 2); -lean_inc(x_853); -x_854 = lean_nat_dec_lt(x_852, x_853); -if (x_854 == 0) +if (lean_obj_tag(x_758) == 0) { -lean_object* x_855; lean_object* x_856; lean_object* x_857; -lean_dec(x_853); -lean_dec(x_852); -lean_dec(x_851); -lean_dec(x_15); -if (lean_is_scalar(x_850)) { - x_855 = lean_alloc_ctor(0, 2, 0); -} else { - x_855 = x_850; -} -lean_ctor_set(x_855, 0, x_848); -lean_ctor_set(x_855, 1, x_849); -lean_ctor_set(x_34, 1, x_855); -x_856 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_856, 0, x_847); -lean_ctor_set(x_856, 1, x_34); -lean_ctor_set(x_5, 1, x_856); -x_857 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_857, 0, x_5); -x_16 = x_857; -x_17 = x_12; -goto block_24; +lean_object* x_773; lean_object* x_774; +lean_dec(x_757); +x_773 = 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_1); +x_774 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_732, x_733, x_734, x_705, x_718, x_731, x_716, x_735, x_702, x_689, x_735, x_735, x_763, x_770, x_773, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_774; +goto block_33; } else { -lean_object* x_858; lean_object* x_859; lean_object* x_860; lean_object* x_861; lean_object* x_862; lean_object* x_863; lean_object* x_864; lean_object* x_865; uint8_t x_866; -if (lean_is_exclusive(x_38)) { - lean_ctor_release(x_38, 0); - lean_ctor_release(x_38, 1); - lean_ctor_release(x_38, 2); - x_858 = x_38; -} else { - lean_dec_ref(x_38); - x_858 = lean_box(0); -} -x_859 = lean_array_fget(x_851, x_852); -x_860 = lean_unsigned_to_nat(1u); -x_861 = lean_nat_add(x_852, x_860); -lean_dec(x_852); -if (lean_is_scalar(x_858)) { - x_862 = lean_alloc_ctor(0, 3, 0); -} else { - x_862 = x_858; -} -lean_ctor_set(x_862, 0, x_851); -lean_ctor_set(x_862, 1, x_861); -lean_ctor_set(x_862, 2, x_853); -x_863 = lean_ctor_get(x_847, 0); -lean_inc(x_863); -x_864 = lean_ctor_get(x_847, 1); -lean_inc(x_864); -x_865 = lean_ctor_get(x_847, 2); -lean_inc(x_865); -x_866 = lean_nat_dec_lt(x_864, x_865); -if (x_866 == 0) -{ -lean_object* x_867; lean_object* x_868; lean_object* x_869; -lean_dec(x_865); -lean_dec(x_864); -lean_dec(x_863); -lean_dec(x_859); -lean_dec(x_15); -if (lean_is_scalar(x_850)) { - x_867 = lean_alloc_ctor(0, 2, 0); -} else { - x_867 = x_850; -} -lean_ctor_set(x_867, 0, x_848); -lean_ctor_set(x_867, 1, x_849); -lean_ctor_set(x_34, 1, x_867); -lean_ctor_set(x_34, 0, x_862); -x_868 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_868, 0, x_847); -lean_ctor_set(x_868, 1, x_34); -lean_ctor_set(x_5, 1, x_868); -x_869 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_869, 0, x_5); -x_16 = x_869; -x_17 = x_12; -goto block_24; -} -else -{ -lean_object* x_870; lean_object* x_871; lean_object* x_872; lean_object* x_873; lean_object* x_874; lean_object* x_875; lean_object* x_876; uint8_t x_877; -if (lean_is_exclusive(x_847)) { - lean_ctor_release(x_847, 0); - lean_ctor_release(x_847, 1); - lean_ctor_release(x_847, 2); - x_870 = x_847; -} else { - lean_dec_ref(x_847); - x_870 = lean_box(0); -} -x_871 = lean_array_fget(x_863, x_864); -x_872 = lean_nat_add(x_864, x_860); -lean_dec(x_864); -if (lean_is_scalar(x_870)) { - x_873 = lean_alloc_ctor(0, 3, 0); -} else { - x_873 = x_870; -} -lean_ctor_set(x_873, 0, x_863); -lean_ctor_set(x_873, 1, x_872); -lean_ctor_set(x_873, 2, x_865); -x_874 = lean_ctor_get(x_39, 0); -lean_inc(x_874); -x_875 = lean_ctor_get(x_39, 1); -lean_inc(x_875); -x_876 = lean_ctor_get(x_39, 2); -lean_inc(x_876); -x_877 = lean_nat_dec_lt(x_875, x_876); -if (x_877 == 0) -{ -lean_object* x_878; lean_object* x_879; lean_object* x_880; -lean_dec(x_876); -lean_dec(x_875); -lean_dec(x_874); -lean_dec(x_871); -lean_dec(x_859); -lean_dec(x_15); -if (lean_is_scalar(x_850)) { - x_878 = lean_alloc_ctor(0, 2, 0); +lean_object* x_775; lean_object* x_776; lean_object* x_777; lean_object* x_778; lean_object* x_779; lean_object* x_780; lean_object* x_781; +x_775 = lean_ctor_get(x_757, 0); +lean_inc(x_775); +lean_dec(x_757); +x_776 = lean_ctor_get(x_758, 0); +lean_inc(x_776); +if (lean_is_exclusive(x_758)) { + lean_ctor_release(x_758, 0); + x_777 = x_758; } else { - x_878 = x_850; + lean_dec_ref(x_758); + x_777 = lean_box(0); } -lean_ctor_set(x_878, 0, x_848); -lean_ctor_set(x_878, 1, x_849); -lean_ctor_set(x_34, 1, x_878); -lean_ctor_set(x_34, 0, x_862); -x_879 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_879, 0, x_873); -lean_ctor_set(x_879, 1, x_34); -lean_ctor_set(x_5, 1, x_879); -x_880 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_880, 0, x_5); -x_16 = x_880; -x_17 = x_12; -goto block_24; -} -else -{ -lean_object* x_881; lean_object* x_882; lean_object* x_883; lean_object* x_884; lean_object* x_885; lean_object* x_886; lean_object* x_887; lean_object* x_888; lean_object* x_889; -lean_dec(x_850); -lean_free_object(x_5); -lean_free_object(x_34); -if (lean_is_exclusive(x_39)) { - lean_ctor_release(x_39, 0); - lean_ctor_release(x_39, 1); - lean_ctor_release(x_39, 2); - x_881 = x_39; +x_778 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_778, 0, x_775); +lean_ctor_set(x_778, 1, x_776); +if (lean_is_scalar(x_777)) { + x_779 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_39); - x_881 = lean_box(0); + x_779 = x_777; } -x_882 = lean_array_fget(x_874, x_875); -x_883 = lean_nat_add(x_875, x_860); -lean_dec(x_875); -if (lean_is_scalar(x_881)) { - x_884 = lean_alloc_ctor(0, 3, 0); -} else { - x_884 = x_881; -} -lean_ctor_set(x_884, 0, x_874); -lean_ctor_set(x_884, 1, x_883); -lean_ctor_set(x_884, 2, x_876); -x_885 = lean_ctor_get(x_882, 0); -lean_inc(x_885); -x_886 = lean_ctor_get(x_882, 1); -lean_inc(x_886); -x_887 = lean_ctor_get(x_882, 2); -lean_inc(x_887); -lean_dec(x_882); -x_888 = lean_box(0); -x_889 = lean_ctor_get(x_15, 7); -lean_inc(x_889); -if (lean_obj_tag(x_889) == 0) -{ -lean_object* x_890; uint8_t x_891; lean_object* x_892; -x_890 = lean_box(0); -x_891 = lean_unbox(x_849); -lean_dec(x_849); +lean_ctor_set(x_779, 0, x_778); +x_780 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -13388,73 +12815,30 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_892 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_859, x_871, x_885, x_886, x_887, x_862, x_873, x_884, x_848, x_888, x_891, x_890, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_892) == 0) -{ -lean_object* x_893; lean_object* x_894; -x_893 = lean_ctor_get(x_892, 0); -lean_inc(x_893); -x_894 = lean_ctor_get(x_892, 1); -lean_inc(x_894); -lean_dec(x_892); -x_16 = x_893; -x_17 = x_894; -goto block_24; -} -else -{ -lean_object* x_895; lean_object* x_896; lean_object* x_897; lean_object* x_898; -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_895 = lean_ctor_get(x_892, 0); -lean_inc(x_895); -x_896 = lean_ctor_get(x_892, 1); -lean_inc(x_896); -if (lean_is_exclusive(x_892)) { - lean_ctor_release(x_892, 0); - lean_ctor_release(x_892, 1); - x_897 = x_892; -} else { - lean_dec_ref(x_892); - x_897 = lean_box(0); -} -if (lean_is_scalar(x_897)) { - x_898 = lean_alloc_ctor(1, 2, 0); -} else { - x_898 = x_897; +x_781 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_732, x_733, x_734, x_705, x_718, x_731, x_716, x_735, x_702, x_689, x_735, x_779, x_763, x_770, x_780, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_781; +goto block_33; } -lean_ctor_set(x_898, 0, x_895); -lean_ctor_set(x_898, 1, x_896); -return x_898; } } else { -lean_object* x_899; lean_object* x_900; lean_object* x_901; -x_899 = lean_ctor_get(x_889, 0); -lean_inc(x_899); -if (lean_is_exclusive(x_889)) { - lean_ctor_release(x_889, 0); - x_900 = x_889; +lean_object* x_782; lean_object* x_783; lean_object* x_784; +x_782 = lean_box(0); +x_783 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_783, 0, x_782); +lean_ctor_set(x_783, 1, x_760); +if (lean_is_scalar(x_746)) { + x_784 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_889); - x_900 = lean_box(0); + x_784 = x_746; } -x_901 = lean_ctor_get(x_899, 0); -lean_inc(x_901); -if (lean_obj_tag(x_901) == 0) +lean_ctor_set(x_784, 0, x_783); +if (lean_obj_tag(x_757) == 0) { -uint8_t x_902; lean_object* x_903; lean_object* x_904; -lean_dec(x_900); -lean_dec(x_899); -lean_dec(x_849); -x_902 = 0; -x_903 = lean_box(0); +lean_object* x_785; lean_object* x_786; +lean_dec(x_758); +x_785 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -13462,76 +12846,17 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_904 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_859, x_871, x_885, x_886, x_887, x_862, x_873, x_884, x_848, x_888, x_902, x_903, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_904) == 0) -{ -lean_object* x_905; lean_object* x_906; -x_905 = lean_ctor_get(x_904, 0); -lean_inc(x_905); -x_906 = lean_ctor_get(x_904, 1); -lean_inc(x_906); -lean_dec(x_904); -x_16 = x_905; -x_17 = x_906; -goto block_24; -} -else -{ -lean_object* x_907; lean_object* x_908; lean_object* x_909; lean_object* x_910; -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_907 = lean_ctor_get(x_904, 0); -lean_inc(x_907); -x_908 = lean_ctor_get(x_904, 1); -lean_inc(x_908); -if (lean_is_exclusive(x_904)) { - lean_ctor_release(x_904, 0); - lean_ctor_release(x_904, 1); - x_909 = x_904; -} else { - lean_dec_ref(x_904); - x_909 = lean_box(0); -} -if (lean_is_scalar(x_909)) { - x_910 = lean_alloc_ctor(1, 2, 0); -} else { - x_910 = x_909; -} -lean_ctor_set(x_910, 0, x_907); -lean_ctor_set(x_910, 1, x_908); -return x_910; -} +x_786 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_732, x_733, x_734, x_705, x_718, x_731, x_716, x_735, x_702, x_689, x_784, x_735, x_763, x_770, x_785, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_786; +goto block_33; } else { -lean_object* x_911; lean_object* x_912; lean_object* x_913; lean_object* x_914; -x_911 = lean_ctor_get(x_901, 0); -lean_inc(x_911); -if (lean_is_exclusive(x_901)) { - lean_ctor_release(x_901, 0); - x_912 = x_901; -} else { - lean_dec_ref(x_901); - x_912 = lean_box(0); -} -x_913 = lean_ctor_get(x_911, 1); -lean_inc(x_913); -lean_dec(x_911); -x_914 = l_Lean_Language_SnapshotTask_get___rarg(x_913); -if (lean_obj_tag(x_914) == 0) +if (lean_obj_tag(x_758) == 0) { -uint8_t x_915; lean_object* x_916; lean_object* x_917; -lean_dec(x_912); -lean_dec(x_900); -lean_dec(x_899); -lean_dec(x_849); -x_915 = 0; -x_916 = lean_box(0); +lean_object* x_787; lean_object* x_788; +lean_dec(x_757); +x_787 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -13539,421 +12864,327 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_917 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_859, x_871, x_885, x_886, x_887, x_862, x_873, x_884, x_848, x_888, x_915, x_916, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_917) == 0) -{ -lean_object* x_918; lean_object* x_919; -x_918 = lean_ctor_get(x_917, 0); -lean_inc(x_918); -x_919 = lean_ctor_get(x_917, 1); -lean_inc(x_919); -lean_dec(x_917); -x_16 = x_918; -x_17 = x_919; -goto block_24; +x_788 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_732, x_733, x_734, x_705, x_718, x_731, x_716, x_735, x_702, x_689, x_784, x_735, x_763, x_770, x_787, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_788; +goto block_33; } else { -lean_object* x_920; lean_object* x_921; lean_object* x_922; lean_object* x_923; -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_920 = lean_ctor_get(x_917, 0); -lean_inc(x_920); -x_921 = lean_ctor_get(x_917, 1); -lean_inc(x_921); -if (lean_is_exclusive(x_917)) { - lean_ctor_release(x_917, 0); - lean_ctor_release(x_917, 1); - x_922 = x_917; +lean_object* x_789; lean_object* x_790; lean_object* x_791; lean_object* x_792; lean_object* x_793; lean_object* x_794; lean_object* x_795; +x_789 = lean_ctor_get(x_757, 0); +lean_inc(x_789); +lean_dec(x_757); +x_790 = lean_ctor_get(x_758, 0); +lean_inc(x_790); +if (lean_is_exclusive(x_758)) { + lean_ctor_release(x_758, 0); + x_791 = x_758; } else { - lean_dec_ref(x_917); - x_922 = lean_box(0); + lean_dec_ref(x_758); + x_791 = lean_box(0); } -if (lean_is_scalar(x_922)) { - x_923 = lean_alloc_ctor(1, 2, 0); +x_792 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_792, 0, x_789); +lean_ctor_set(x_792, 1, x_790); +if (lean_is_scalar(x_791)) { + x_793 = lean_alloc_ctor(1, 1, 0); } else { - x_923 = x_922; + x_793 = x_791; +} +lean_ctor_set(x_793, 0, x_792); +x_794 = 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_1); +x_795 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_732, x_733, x_734, x_705, x_718, x_731, x_716, x_735, x_702, x_689, x_784, x_793, x_763, x_770, x_794, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_795; +goto block_33; } -lean_ctor_set(x_923, 0, x_920); -lean_ctor_set(x_923, 1, x_921); -return x_923; } } -else -{ -lean_object* x_924; lean_object* x_925; lean_object* x_926; lean_object* x_927; lean_object* x_928; lean_object* x_929; lean_object* x_930; lean_object* x_931; lean_object* x_932; lean_object* x_933; lean_object* x_934; lean_object* x_935; lean_object* x_936; lean_object* x_937; lean_object* x_938; lean_object* x_939; lean_object* x_940; lean_object* x_941; lean_object* x_942; lean_object* x_943; lean_object* x_944; lean_object* x_945; lean_object* x_946; lean_object* x_947; lean_object* x_948; lean_object* x_949; uint8_t x_950; uint8_t x_990; -x_924 = lean_ctor_get(x_914, 0); -lean_inc(x_924); -if (lean_is_exclusive(x_914)) { - lean_ctor_release(x_914, 0); - x_925 = x_914; -} else { - lean_dec_ref(x_914); - x_925 = lean_box(0); } -x_926 = lean_ctor_get(x_15, 6); -lean_inc(x_926); -lean_inc(x_871); -lean_inc(x_926); -x_927 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_926, x_871, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -x_928 = lean_ctor_get(x_927, 0); -lean_inc(x_928); -x_929 = lean_ctor_get(x_927, 1); -lean_inc(x_929); -if (lean_is_exclusive(x_927)) { - lean_ctor_release(x_927, 0); - lean_ctor_release(x_927, 1); - x_930 = x_927; -} else { - lean_dec_ref(x_927); - x_930 = lean_box(0); -} -x_931 = lean_ctor_get(x_928, 0); -lean_inc(x_931); -x_932 = lean_ctor_get(x_928, 1); -lean_inc(x_932); -if (lean_is_exclusive(x_928)) { - lean_ctor_release(x_928, 0); - lean_ctor_release(x_928, 1); - x_933 = x_928; -} else { - lean_dec_ref(x_928); - x_933 = lean_box(0); -} -x_934 = lean_ctor_get(x_924, 0); -lean_inc(x_934); -x_935 = lean_ctor_get(x_924, 1); -lean_inc(x_935); -x_936 = lean_ctor_get(x_924, 2); -lean_inc(x_936); -x_937 = lean_ctor_get(x_924, 3); -lean_inc(x_937); -x_938 = lean_ctor_get(x_924, 4); -lean_inc(x_938); -x_939 = lean_ctor_get(x_924, 5); -lean_inc(x_939); -x_940 = lean_ctor_get(x_924, 6); -lean_inc(x_940); -if (lean_is_exclusive(x_924)) { - lean_ctor_release(x_924, 0); - lean_ctor_release(x_924, 1); - lean_ctor_release(x_924, 2); - lean_ctor_release(x_924, 3); - lean_ctor_release(x_924, 4); - lean_ctor_release(x_924, 5); - lean_ctor_release(x_924, 6); - x_941 = x_924; -} else { - lean_dec_ref(x_924); - x_941 = lean_box(0); -} -lean_inc(x_859); -lean_inc(x_926); -x_942 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_926, x_859); -lean_inc(x_926); -lean_inc(x_932); -lean_inc(x_936); -lean_inc(x_935); -if (lean_is_scalar(x_941)) { - x_943 = lean_alloc_ctor(0, 7, 0); -} else { - x_943 = x_941; -} -lean_ctor_set(x_943, 0, x_934); -lean_ctor_set(x_943, 1, x_935); -lean_ctor_set(x_943, 2, x_936); -lean_ctor_set(x_943, 3, x_931); -lean_ctor_set(x_943, 4, x_932); -lean_ctor_set(x_943, 5, x_926); -lean_ctor_set(x_943, 6, x_942); -if (lean_is_scalar(x_925)) { - x_944 = lean_alloc_ctor(1, 1, 0); -} else { - x_944 = x_925; -} -lean_ctor_set(x_944, 0, x_943); -x_945 = lean_ctor_get(x_899, 1); -lean_inc(x_945); -lean_dec(x_899); -x_946 = lean_io_promise_resolve(x_944, x_945, x_929); -lean_dec(x_945); -x_947 = lean_ctor_get(x_946, 1); -lean_inc(x_947); -if (lean_is_exclusive(x_946)) { - lean_ctor_release(x_946, 0); - lean_ctor_release(x_946, 1); - x_948 = x_946; -} else { - lean_dec_ref(x_946); - x_948 = lean_box(0); -} -x_949 = lean_ctor_get(x_10, 2); -lean_inc(x_949); -x_990 = lean_unbox(x_849); -if (x_990 == 0) -{ -uint8_t x_991; -lean_dec(x_949); -lean_dec(x_939); -lean_dec(x_926); -x_991 = 0; -x_950 = x_991; -goto block_989; -} -else -{ -lean_object* x_992; uint8_t x_993; -x_992 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_949, x_926, x_939); -lean_dec(x_949); -x_993 = lean_unbox(x_992); -lean_dec(x_992); -x_950 = x_993; -goto block_989; -} -block_989: -{ -lean_object* x_951; lean_object* x_960; -if (lean_obj_tag(x_932) == 0) -{ -lean_dec(x_938); -lean_dec(x_937); -lean_dec(x_849); -if (x_950 == 0) -{ -lean_dec(x_940); -lean_dec(x_930); -x_951 = x_888; -goto block_959; -} -else -{ -lean_dec(x_948); -lean_dec(x_933); -lean_dec(x_912); -lean_dec(x_900); -x_960 = x_888; -goto block_971; -} -} -else -{ -lean_object* x_972; uint8_t x_973; -if (lean_is_exclusive(x_932)) { - lean_ctor_release(x_932, 0); - x_972 = x_932; -} else { - lean_dec_ref(x_932); - x_972 = lean_box(0); -} -x_973 = lean_unbox(x_849); -lean_dec(x_849); -if (x_973 == 0) -{ -lean_object* x_974; lean_object* x_975; -lean_dec(x_938); -lean_dec(x_937); -lean_inc(x_871); -x_974 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_974, 0, x_888); -lean_ctor_set(x_974, 1, x_871); -if (lean_is_scalar(x_972)) { - x_975 = lean_alloc_ctor(1, 1, 0); -} else { - x_975 = x_972; } -lean_ctor_set(x_975, 0, x_974); -if (x_950 == 0) -{ -lean_dec(x_940); -lean_dec(x_930); -x_951 = x_975; -goto block_959; } -else -{ -lean_dec(x_948); -lean_dec(x_933); -lean_dec(x_912); -lean_dec(x_900); -x_960 = x_975; -goto block_971; } } -else -{ -if (lean_obj_tag(x_937) == 0) -{ -lean_object* x_976; lean_object* x_977; -lean_dec(x_938); -lean_inc(x_871); -x_976 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_976, 0, x_888); -lean_ctor_set(x_976, 1, x_871); -if (lean_is_scalar(x_972)) { - x_977 = lean_alloc_ctor(1, 1, 0); -} else { - x_977 = x_972; } -lean_ctor_set(x_977, 0, x_976); -if (x_950 == 0) -{ -lean_dec(x_940); -lean_dec(x_930); -x_951 = x_977; -goto block_959; } -else -{ -lean_dec(x_948); -lean_dec(x_933); -lean_dec(x_912); -lean_dec(x_900); -x_960 = x_977; -goto block_971; } } else { -lean_dec(x_972); -if (lean_obj_tag(x_938) == 0) -{ -lean_object* x_978; lean_object* x_979; lean_object* x_980; -if (lean_is_exclusive(x_937)) { - lean_ctor_release(x_937, 0); - x_978 = x_937; +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_object* x_802; lean_object* x_803; lean_object* x_804; lean_object* x_805; lean_object* x_806; lean_object* x_807; uint8_t x_808; +x_796 = lean_ctor_get(x_35, 1); +x_797 = lean_ctor_get(x_35, 0); +lean_inc(x_796); +lean_inc(x_797); +lean_dec(x_35); +x_798 = lean_ctor_get(x_5, 0); +lean_inc(x_798); +if (lean_is_exclusive(x_5)) { + lean_ctor_release(x_5, 0); + lean_ctor_release(x_5, 1); + x_799 = x_5; } else { - lean_dec_ref(x_937); - x_978 = lean_box(0); + lean_dec_ref(x_5); + x_799 = lean_box(0); } -lean_inc(x_871); -x_979 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_979, 0, x_888); -lean_ctor_set(x_979, 1, x_871); -if (lean_is_scalar(x_978)) { - x_980 = lean_alloc_ctor(1, 1, 0); +x_800 = lean_ctor_get(x_34, 0); +lean_inc(x_800); +if (lean_is_exclusive(x_34)) { + lean_ctor_release(x_34, 0); + lean_ctor_release(x_34, 1); + x_801 = x_34; } else { - x_980 = x_978; -} -lean_ctor_set(x_980, 0, x_979); -if (x_950 == 0) -{ -lean_dec(x_940); -lean_dec(x_930); -x_951 = x_980; -goto block_959; -} -else -{ -lean_dec(x_948); -lean_dec(x_933); -lean_dec(x_912); -lean_dec(x_900); -x_960 = x_980; -goto block_971; -} + lean_dec_ref(x_34); + x_801 = lean_box(0); } -else -{ -lean_object* x_981; lean_object* x_982; lean_object* x_983; lean_object* x_984; lean_object* x_985; lean_object* x_986; lean_object* x_987; lean_object* x_988; -x_981 = lean_ctor_get(x_937, 0); -lean_inc(x_981); -if (lean_is_exclusive(x_937)) { - lean_ctor_release(x_937, 0); - x_982 = x_937; +x_802 = lean_ctor_get(x_796, 0); +lean_inc(x_802); +x_803 = lean_ctor_get(x_796, 1); +lean_inc(x_803); +if (lean_is_exclusive(x_796)) { + lean_ctor_release(x_796, 0); + lean_ctor_release(x_796, 1); + x_804 = x_796; +} else { + lean_dec_ref(x_796); + x_804 = lean_box(0); +} +x_805 = lean_ctor_get(x_797, 0); +lean_inc(x_805); +x_806 = lean_ctor_get(x_797, 1); +lean_inc(x_806); +x_807 = lean_ctor_get(x_797, 2); +lean_inc(x_807); +x_808 = lean_nat_dec_lt(x_806, x_807); +if (x_808 == 0) +{ +lean_object* x_809; lean_object* x_810; lean_object* x_811; lean_object* x_812; lean_object* x_813; lean_object* x_814; +lean_dec(x_807); +lean_dec(x_806); +lean_dec(x_805); +lean_dec(x_15); +if (lean_is_scalar(x_804)) { + x_809 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_937); - x_982 = lean_box(0); + x_809 = x_804; } -x_983 = lean_ctor_get(x_938, 0); -lean_inc(x_983); -if (lean_is_exclusive(x_938)) { - lean_ctor_release(x_938, 0); - x_984 = x_938; +lean_ctor_set(x_809, 0, x_802); +lean_ctor_set(x_809, 1, x_803); +x_810 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_810, 0, x_797); +lean_ctor_set(x_810, 1, x_809); +if (lean_is_scalar(x_801)) { + x_811 = lean_alloc_ctor(0, 2, 0); +} else { + x_811 = x_801; +} +lean_ctor_set(x_811, 0, x_800); +lean_ctor_set(x_811, 1, x_810); +if (lean_is_scalar(x_799)) { + x_812 = lean_alloc_ctor(0, 2, 0); +} else { + x_812 = x_799; +} +lean_ctor_set(x_812, 0, x_798); +lean_ctor_set(x_812, 1, x_811); +x_813 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_813, 0, x_812); +x_814 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_814, 0, x_813); +lean_ctor_set(x_814, 1, x_12); +x_16 = x_814; +goto block_33; +} +else +{ +lean_object* x_815; lean_object* x_816; lean_object* x_817; lean_object* x_818; lean_object* x_819; lean_object* x_820; lean_object* x_821; lean_object* x_822; uint8_t x_823; +if (lean_is_exclusive(x_797)) { + lean_ctor_release(x_797, 0); + lean_ctor_release(x_797, 1); + lean_ctor_release(x_797, 2); + x_815 = x_797; +} else { + lean_dec_ref(x_797); + x_815 = lean_box(0); +} +x_816 = lean_array_fget(x_805, x_806); +x_817 = lean_unsigned_to_nat(1u); +x_818 = lean_nat_add(x_806, x_817); +lean_dec(x_806); +if (lean_is_scalar(x_815)) { + x_819 = lean_alloc_ctor(0, 3, 0); +} else { + x_819 = x_815; +} +lean_ctor_set(x_819, 0, x_805); +lean_ctor_set(x_819, 1, x_818); +lean_ctor_set(x_819, 2, x_807); +x_820 = lean_ctor_get(x_800, 0); +lean_inc(x_820); +x_821 = lean_ctor_get(x_800, 1); +lean_inc(x_821); +x_822 = lean_ctor_get(x_800, 2); +lean_inc(x_822); +x_823 = lean_nat_dec_lt(x_821, x_822); +if (x_823 == 0) +{ +lean_object* x_824; lean_object* x_825; lean_object* x_826; lean_object* x_827; lean_object* x_828; lean_object* x_829; +lean_dec(x_822); +lean_dec(x_821); +lean_dec(x_820); +lean_dec(x_816); +lean_dec(x_15); +if (lean_is_scalar(x_804)) { + x_824 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_938); - x_984 = lean_box(0); + x_824 = x_804; } -x_985 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_985, 0, x_981); -lean_ctor_set(x_985, 1, x_983); -if (lean_is_scalar(x_984)) { - x_986 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_824, 0, x_802); +lean_ctor_set(x_824, 1, x_803); +x_825 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_825, 0, x_819); +lean_ctor_set(x_825, 1, x_824); +if (lean_is_scalar(x_801)) { + x_826 = lean_alloc_ctor(0, 2, 0); } else { - x_986 = x_984; + x_826 = x_801; } -lean_ctor_set(x_986, 0, x_985); -lean_inc(x_871); -x_987 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_987, 0, x_986); -lean_ctor_set(x_987, 1, x_871); -if (lean_is_scalar(x_982)) { - x_988 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_826, 0, x_800); +lean_ctor_set(x_826, 1, x_825); +if (lean_is_scalar(x_799)) { + x_827 = lean_alloc_ctor(0, 2, 0); } else { - x_988 = x_982; + x_827 = x_799; } -lean_ctor_set(x_988, 0, x_987); -if (x_950 == 0) -{ -lean_dec(x_940); -lean_dec(x_930); -x_951 = x_988; -goto block_959; +lean_ctor_set(x_827, 0, x_798); +lean_ctor_set(x_827, 1, x_826); +x_828 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_828, 0, x_827); +x_829 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_829, 0, x_828); +lean_ctor_set(x_829, 1, x_12); +x_16 = x_829; +goto block_33; } else { -lean_dec(x_948); -lean_dec(x_933); -lean_dec(x_912); -lean_dec(x_900); -x_960 = x_988; -goto block_971; -} -} -} -} +lean_object* x_830; lean_object* x_831; lean_object* x_832; lean_object* x_833; lean_object* x_834; lean_object* x_835; lean_object* x_836; uint8_t x_837; +if (lean_is_exclusive(x_800)) { + lean_ctor_release(x_800, 0); + lean_ctor_release(x_800, 1); + lean_ctor_release(x_800, 2); + x_830 = x_800; +} else { + lean_dec_ref(x_800); + x_830 = lean_box(0); } -block_959: -{ -lean_object* x_952; lean_object* x_953; lean_object* x_954; lean_object* x_955; lean_object* x_956; lean_object* x_957; lean_object* x_958; -lean_inc(x_859); -if (lean_is_scalar(x_948)) { - x_952 = lean_alloc_ctor(0, 2, 0); +x_831 = lean_array_fget(x_820, x_821); +x_832 = lean_nat_add(x_821, x_817); +lean_dec(x_821); +if (lean_is_scalar(x_830)) { + x_833 = lean_alloc_ctor(0, 3, 0); } else { - x_952 = x_948; + x_833 = x_830; } -lean_ctor_set(x_952, 0, x_888); -lean_ctor_set(x_952, 1, x_859); -if (lean_is_scalar(x_912)) { - x_953 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_833, 0, x_820); +lean_ctor_set(x_833, 1, x_832); +lean_ctor_set(x_833, 2, x_822); +x_834 = lean_ctor_get(x_798, 0); +lean_inc(x_834); +x_835 = lean_ctor_get(x_798, 1); +lean_inc(x_835); +x_836 = lean_ctor_get(x_798, 2); +lean_inc(x_836); +x_837 = lean_nat_dec_lt(x_835, x_836); +if (x_837 == 0) +{ +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_dec(x_836); +lean_dec(x_835); +lean_dec(x_834); +lean_dec(x_831); +lean_dec(x_816); +lean_dec(x_15); +if (lean_is_scalar(x_804)) { + x_838 = lean_alloc_ctor(0, 2, 0); } else { - x_953 = x_912; + x_838 = x_804; } -lean_ctor_set(x_953, 0, x_952); -lean_inc(x_15); -x_954 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_954, 0, x_15); -lean_ctor_set(x_954, 1, x_935); -lean_ctor_set(x_954, 2, x_951); -lean_ctor_set(x_954, 3, x_953); -if (lean_is_scalar(x_933)) { - x_955 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_838, 0, x_802); +lean_ctor_set(x_838, 1, x_803); +x_839 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_839, 0, x_819); +lean_ctor_set(x_839, 1, x_838); +if (lean_is_scalar(x_801)) { + x_840 = lean_alloc_ctor(0, 2, 0); } else { - x_955 = x_933; + x_840 = x_801; } -lean_ctor_set(x_955, 0, x_954); -lean_ctor_set(x_955, 1, x_936); -if (lean_is_scalar(x_900)) { - x_956 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_840, 0, x_833); +lean_ctor_set(x_840, 1, x_839); +if (lean_is_scalar(x_799)) { + x_841 = lean_alloc_ctor(0, 2, 0); } else { - x_956 = x_900; + x_841 = x_799; +} +lean_ctor_set(x_841, 0, x_798); +lean_ctor_set(x_841, 1, x_840); +x_842 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_842, 0, x_841); +x_843 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_843, 0, x_842); +lean_ctor_set(x_843, 1, x_12); +x_16 = x_843; +goto block_33; } -lean_ctor_set(x_956, 0, x_955); -x_957 = lean_box(0); +else +{ +lean_object* x_844; lean_object* x_845; lean_object* x_846; 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_dec(x_804); +lean_dec(x_801); +lean_dec(x_799); +if (lean_is_exclusive(x_798)) { + lean_ctor_release(x_798, 0); + lean_ctor_release(x_798, 1); + lean_ctor_release(x_798, 2); + x_844 = x_798; +} else { + lean_dec_ref(x_798); + x_844 = lean_box(0); +} +x_845 = lean_array_fget(x_834, x_835); +x_846 = lean_nat_add(x_835, x_817); +lean_dec(x_835); +if (lean_is_scalar(x_844)) { + x_847 = lean_alloc_ctor(0, 3, 0); +} else { + x_847 = x_844; +} +lean_ctor_set(x_847, 0, x_834); +lean_ctor_set(x_847, 1, x_846); +lean_ctor_set(x_847, 2, x_836); +x_848 = lean_ctor_get(x_845, 0); +lean_inc(x_848); +x_849 = lean_ctor_get(x_845, 1); +lean_inc(x_849); +x_850 = lean_ctor_get(x_845, 2); +lean_inc(x_850); +lean_dec(x_845); +x_851 = lean_box(0); +x_852 = lean_ctor_get(x_15, 7); +lean_inc(x_852); +if (lean_obj_tag(x_852) == 0) +{ +lean_object* x_853; uint8_t x_854; lean_object* x_855; +x_853 = lean_box(0); +x_854 = lean_unbox(x_803); +lean_dec(x_803); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -13961,41 +13192,25 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_958 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_859, x_871, x_885, x_886, x_887, x_862, x_873, x_884, x_848, x_956, x_950, x_957, x_6, x_7, x_8, x_9, x_10, x_11, x_947); -x_25 = x_958; -goto block_32; +x_855 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_848, x_849, x_850, x_819, x_833, x_847, x_831, x_851, x_816, x_802, x_851, x_851, x_851, x_854, x_853, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_855; +goto block_33; } -block_971: -{ -lean_object* x_961; lean_object* x_962; lean_object* x_963; lean_object* x_964; lean_object* x_965; lean_object* x_966; lean_object* x_967; lean_object* x_968; lean_object* x_969; lean_object* x_970; -x_961 = lean_box(0); -if (lean_is_scalar(x_930)) { - x_962 = lean_alloc_ctor(0, 2, 0); -} else { - x_962 = x_930; -} -lean_ctor_set(x_962, 0, x_961); -lean_ctor_set(x_962, 1, x_940); -x_963 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_963, 0, x_962); -lean_inc(x_859); -x_964 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_964, 0, x_963); -lean_ctor_set(x_964, 1, x_859); -x_965 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_965, 0, x_964); -lean_inc(x_15); -x_966 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_966, 0, x_15); -lean_ctor_set(x_966, 1, x_935); -lean_ctor_set(x_966, 2, x_960); -lean_ctor_set(x_966, 3, x_965); -x_967 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_967, 0, x_966); -lean_ctor_set(x_967, 1, x_936); -x_968 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_968, 0, x_967); -x_969 = lean_box(0); +else +{ +lean_object* x_856; lean_object* x_857; +x_856 = lean_ctor_get(x_852, 0); +lean_inc(x_856); +lean_dec(x_852); +x_857 = lean_ctor_get(x_856, 0); +lean_inc(x_857); +lean_dec(x_856); +if (lean_obj_tag(x_857) == 0) +{ +uint8_t x_858; lean_object* x_859; lean_object* x_860; +lean_dec(x_803); +x_858 = 0; +x_859 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -14003,257 +13218,33 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_970 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_859, x_871, x_885, x_886, x_887, x_862, x_873, x_884, x_848, x_968, x_950, x_969, x_6, x_7, x_8, x_9, x_10, x_11, x_947); -x_25 = x_970; -goto block_32; -} -} -} -} -} -} -} -} -} +x_860 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_848, x_849, x_850, x_819, x_833, x_847, x_831, x_851, x_816, x_802, x_851, x_851, x_851, x_858, x_859, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_860; +goto block_33; } else { -lean_object* x_994; lean_object* x_995; lean_object* x_996; lean_object* x_997; lean_object* x_998; lean_object* x_999; lean_object* x_1000; lean_object* x_1001; lean_object* x_1002; lean_object* x_1003; lean_object* x_1004; uint8_t x_1005; -x_994 = lean_ctor_get(x_34, 1); -x_995 = lean_ctor_get(x_34, 0); -x_996 = lean_ctor_get(x_5, 0); -lean_inc(x_996); -lean_dec(x_5); -x_997 = lean_ctor_get(x_33, 0); -lean_inc(x_997); -if (lean_is_exclusive(x_33)) { - lean_ctor_release(x_33, 0); - lean_ctor_release(x_33, 1); - x_998 = x_33; -} else { - lean_dec_ref(x_33); - x_998 = lean_box(0); -} -x_999 = lean_ctor_get(x_994, 0); -lean_inc(x_999); -x_1000 = lean_ctor_get(x_994, 1); -lean_inc(x_1000); -if (lean_is_exclusive(x_994)) { - lean_ctor_release(x_994, 0); - lean_ctor_release(x_994, 1); - x_1001 = x_994; -} else { - lean_dec_ref(x_994); - x_1001 = lean_box(0); -} -x_1002 = lean_ctor_get(x_995, 0); -lean_inc(x_1002); -x_1003 = lean_ctor_get(x_995, 1); -lean_inc(x_1003); -x_1004 = lean_ctor_get(x_995, 2); -lean_inc(x_1004); -x_1005 = lean_nat_dec_lt(x_1003, x_1004); -if (x_1005 == 0) -{ -lean_object* x_1006; lean_object* x_1007; lean_object* x_1008; lean_object* x_1009; -lean_dec(x_1004); -lean_dec(x_1003); -lean_dec(x_1002); -lean_dec(x_15); -if (lean_is_scalar(x_1001)) { - x_1006 = lean_alloc_ctor(0, 2, 0); -} else { - x_1006 = x_1001; -} -lean_ctor_set(x_1006, 0, x_999); -lean_ctor_set(x_1006, 1, x_1000); -lean_ctor_set(x_34, 1, x_1006); -if (lean_is_scalar(x_998)) { - x_1007 = lean_alloc_ctor(0, 2, 0); -} else { - x_1007 = x_998; -} -lean_ctor_set(x_1007, 0, x_997); -lean_ctor_set(x_1007, 1, x_34); -x_1008 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1008, 0, x_996); -lean_ctor_set(x_1008, 1, x_1007); -x_1009 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_1009, 0, x_1008); -x_16 = x_1009; -x_17 = x_12; -goto block_24; -} -else -{ -lean_object* x_1010; lean_object* x_1011; lean_object* x_1012; lean_object* x_1013; lean_object* x_1014; lean_object* x_1015; lean_object* x_1016; lean_object* x_1017; uint8_t x_1018; -if (lean_is_exclusive(x_995)) { - lean_ctor_release(x_995, 0); - lean_ctor_release(x_995, 1); - lean_ctor_release(x_995, 2); - x_1010 = x_995; -} else { - lean_dec_ref(x_995); - x_1010 = lean_box(0); -} -x_1011 = lean_array_fget(x_1002, x_1003); -x_1012 = lean_unsigned_to_nat(1u); -x_1013 = lean_nat_add(x_1003, x_1012); -lean_dec(x_1003); -if (lean_is_scalar(x_1010)) { - x_1014 = lean_alloc_ctor(0, 3, 0); -} else { - x_1014 = x_1010; -} -lean_ctor_set(x_1014, 0, x_1002); -lean_ctor_set(x_1014, 1, x_1013); -lean_ctor_set(x_1014, 2, x_1004); -x_1015 = lean_ctor_get(x_997, 0); -lean_inc(x_1015); -x_1016 = lean_ctor_get(x_997, 1); -lean_inc(x_1016); -x_1017 = lean_ctor_get(x_997, 2); -lean_inc(x_1017); -x_1018 = lean_nat_dec_lt(x_1016, x_1017); -if (x_1018 == 0) -{ -lean_object* x_1019; lean_object* x_1020; lean_object* x_1021; lean_object* x_1022; -lean_dec(x_1017); -lean_dec(x_1016); -lean_dec(x_1015); -lean_dec(x_1011); -lean_dec(x_15); -if (lean_is_scalar(x_1001)) { - x_1019 = lean_alloc_ctor(0, 2, 0); -} else { - x_1019 = x_1001; -} -lean_ctor_set(x_1019, 0, x_999); -lean_ctor_set(x_1019, 1, x_1000); -lean_ctor_set(x_34, 1, x_1019); -lean_ctor_set(x_34, 0, x_1014); -if (lean_is_scalar(x_998)) { - x_1020 = lean_alloc_ctor(0, 2, 0); -} else { - x_1020 = x_998; -} -lean_ctor_set(x_1020, 0, x_997); -lean_ctor_set(x_1020, 1, x_34); -x_1021 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1021, 0, x_996); -lean_ctor_set(x_1021, 1, x_1020); -x_1022 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_1022, 0, x_1021); -x_16 = x_1022; -x_17 = x_12; -goto block_24; -} -else -{ -lean_object* x_1023; lean_object* x_1024; lean_object* x_1025; lean_object* x_1026; lean_object* x_1027; lean_object* x_1028; lean_object* x_1029; uint8_t x_1030; -if (lean_is_exclusive(x_997)) { - lean_ctor_release(x_997, 0); - lean_ctor_release(x_997, 1); - lean_ctor_release(x_997, 2); - x_1023 = x_997; -} else { - lean_dec_ref(x_997); - x_1023 = lean_box(0); -} -x_1024 = lean_array_fget(x_1015, x_1016); -x_1025 = lean_nat_add(x_1016, x_1012); -lean_dec(x_1016); -if (lean_is_scalar(x_1023)) { - x_1026 = lean_alloc_ctor(0, 3, 0); -} else { - x_1026 = x_1023; -} -lean_ctor_set(x_1026, 0, x_1015); -lean_ctor_set(x_1026, 1, x_1025); -lean_ctor_set(x_1026, 2, x_1017); -x_1027 = lean_ctor_get(x_996, 0); -lean_inc(x_1027); -x_1028 = lean_ctor_get(x_996, 1); -lean_inc(x_1028); -x_1029 = lean_ctor_get(x_996, 2); -lean_inc(x_1029); -x_1030 = lean_nat_dec_lt(x_1028, x_1029); -if (x_1030 == 0) -{ -lean_object* x_1031; lean_object* x_1032; lean_object* x_1033; lean_object* x_1034; -lean_dec(x_1029); -lean_dec(x_1028); -lean_dec(x_1027); -lean_dec(x_1024); -lean_dec(x_1011); -lean_dec(x_15); -if (lean_is_scalar(x_1001)) { - x_1031 = lean_alloc_ctor(0, 2, 0); -} else { - x_1031 = x_1001; -} -lean_ctor_set(x_1031, 0, x_999); -lean_ctor_set(x_1031, 1, x_1000); -lean_ctor_set(x_34, 1, x_1031); -lean_ctor_set(x_34, 0, x_1014); -if (lean_is_scalar(x_998)) { - x_1032 = lean_alloc_ctor(0, 2, 0); +lean_object* x_861; lean_object* x_862; lean_object* x_863; lean_object* x_864; +x_861 = lean_ctor_get(x_857, 0); +lean_inc(x_861); +if (lean_is_exclusive(x_857)) { + lean_ctor_release(x_857, 0); + x_862 = x_857; } else { - x_1032 = x_998; + lean_dec_ref(x_857); + x_862 = lean_box(0); } -lean_ctor_set(x_1032, 0, x_1026); -lean_ctor_set(x_1032, 1, x_34); -x_1033 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1033, 0, x_996); -lean_ctor_set(x_1033, 1, x_1032); -x_1034 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_1034, 0, x_1033); -x_16 = x_1034; -x_17 = x_12; -goto block_24; -} -else -{ -lean_object* x_1035; lean_object* x_1036; lean_object* x_1037; lean_object* x_1038; lean_object* x_1039; lean_object* x_1040; lean_object* x_1041; lean_object* x_1042; lean_object* x_1043; -lean_dec(x_1001); -lean_dec(x_998); -lean_free_object(x_34); -if (lean_is_exclusive(x_996)) { - lean_ctor_release(x_996, 0); - lean_ctor_release(x_996, 1); - lean_ctor_release(x_996, 2); - x_1035 = x_996; -} else { - lean_dec_ref(x_996); - x_1035 = lean_box(0); -} -x_1036 = lean_array_fget(x_1027, x_1028); -x_1037 = lean_nat_add(x_1028, x_1012); -lean_dec(x_1028); -if (lean_is_scalar(x_1035)) { - x_1038 = lean_alloc_ctor(0, 3, 0); -} else { - x_1038 = x_1035; -} -lean_ctor_set(x_1038, 0, x_1027); -lean_ctor_set(x_1038, 1, x_1037); -lean_ctor_set(x_1038, 2, x_1029); -x_1039 = lean_ctor_get(x_1036, 0); -lean_inc(x_1039); -x_1040 = lean_ctor_get(x_1036, 1); -lean_inc(x_1040); -x_1041 = lean_ctor_get(x_1036, 2); -lean_inc(x_1041); -lean_dec(x_1036); -x_1042 = lean_box(0); -x_1043 = lean_ctor_get(x_15, 7); -lean_inc(x_1043); -if (lean_obj_tag(x_1043) == 0) -{ -lean_object* x_1044; uint8_t x_1045; lean_object* x_1046; -x_1044 = lean_box(0); -x_1045 = lean_unbox(x_1000); -lean_dec(x_1000); +x_863 = lean_ctor_get(x_861, 1); +lean_inc(x_863); +lean_dec(x_861); +x_864 = l_Lean_Language_SnapshotTask_get___rarg(x_863); +if (lean_obj_tag(x_864) == 0) +{ +uint8_t x_865; lean_object* x_866; lean_object* x_867; +lean_dec(x_862); +lean_dec(x_803); +x_865 = 0; +x_866 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -14261,73 +13252,65 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_1046 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_1011, x_1024, x_1039, x_1040, x_1041, x_1014, x_1026, x_1038, x_999, x_1042, x_1045, x_1044, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_1046) == 0) -{ -lean_object* x_1047; lean_object* x_1048; -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_16 = x_1047; -x_17 = x_1048; -goto block_24; -} -else -{ -lean_object* x_1049; lean_object* x_1050; lean_object* x_1051; lean_object* x_1052; -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_1049 = lean_ctor_get(x_1046, 0); -lean_inc(x_1049); -x_1050 = lean_ctor_get(x_1046, 1); -lean_inc(x_1050); -if (lean_is_exclusive(x_1046)) { - lean_ctor_release(x_1046, 0); - lean_ctor_release(x_1046, 1); - x_1051 = x_1046; -} else { - lean_dec_ref(x_1046); - x_1051 = lean_box(0); -} -if (lean_is_scalar(x_1051)) { - x_1052 = lean_alloc_ctor(1, 2, 0); -} else { - x_1052 = x_1051; -} -lean_ctor_set(x_1052, 0, x_1049); -lean_ctor_set(x_1052, 1, x_1050); -return x_1052; -} +x_867 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_848, x_849, x_850, x_819, x_833, x_847, x_831, x_851, x_816, x_802, x_851, x_851, x_851, x_865, x_866, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_867; +goto block_33; } else { -lean_object* x_1053; lean_object* x_1054; lean_object* x_1055; -x_1053 = lean_ctor_get(x_1043, 0); -lean_inc(x_1053); -if (lean_is_exclusive(x_1043)) { - lean_ctor_release(x_1043, 0); - x_1054 = x_1043; +lean_object* x_868; lean_object* x_869; lean_object* x_870; lean_object* x_871; lean_object* x_872; lean_object* x_873; lean_object* x_874; lean_object* x_875; lean_object* x_876; lean_object* x_877; lean_object* x_878; lean_object* x_879; uint8_t x_880; +x_868 = lean_ctor_get(x_864, 0); +lean_inc(x_868); +if (lean_is_exclusive(x_864)) { + lean_ctor_release(x_864, 0); + x_869 = x_864; } else { - lean_dec_ref(x_1043); - x_1054 = lean_box(0); + lean_dec_ref(x_864); + x_869 = lean_box(0); } -x_1055 = lean_ctor_get(x_1053, 0); -lean_inc(x_1055); -if (lean_obj_tag(x_1055) == 0) -{ -uint8_t x_1056; lean_object* x_1057; lean_object* x_1058; -lean_dec(x_1054); -lean_dec(x_1053); -lean_dec(x_1000); -x_1056 = 0; -x_1057 = lean_box(0); +x_870 = lean_ctor_get(x_10, 2); +lean_inc(x_870); +x_871 = lean_ctor_get(x_868, 1); +lean_inc(x_871); +x_872 = lean_ctor_get(x_868, 2); +lean_inc(x_872); +x_873 = lean_ctor_get(x_868, 3); +lean_inc(x_873); +x_874 = lean_ctor_get(x_868, 4); +lean_inc(x_874); +x_875 = lean_ctor_get(x_868, 5); +lean_inc(x_875); +x_876 = lean_ctor_get(x_868, 6); +lean_inc(x_876); +lean_dec(x_868); +lean_inc(x_15); +x_877 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_877, 0, x_15); +lean_ctor_set(x_877, 1, x_871); +lean_ctor_set(x_877, 2, x_851); +lean_ctor_set(x_877, 3, x_851); +x_878 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_878, 0, x_877); +lean_ctor_set(x_878, 1, x_872); +if (lean_is_scalar(x_869)) { + x_879 = lean_alloc_ctor(1, 1, 0); +} else { + x_879 = x_869; +} +lean_ctor_set(x_879, 0, x_878); +x_880 = lean_unbox(x_803); +lean_dec(x_803); +if (x_880 == 0) +{ +uint8_t x_881; lean_object* x_882; lean_object* x_883; +lean_dec(x_876); +lean_dec(x_875); +lean_dec(x_874); +lean_dec(x_873); +lean_dec(x_870); +lean_dec(x_862); +x_881 = 0; +x_882 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -14335,76 +13318,28 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_1058 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_1011, x_1024, x_1039, x_1040, x_1041, x_1014, x_1026, x_1038, x_999, x_1042, x_1056, x_1057, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_1058) == 0) -{ -lean_object* x_1059; lean_object* x_1060; -x_1059 = lean_ctor_get(x_1058, 0); -lean_inc(x_1059); -x_1060 = lean_ctor_get(x_1058, 1); -lean_inc(x_1060); -lean_dec(x_1058); -x_16 = x_1059; -x_17 = x_1060; -goto block_24; +x_883 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_848, x_849, x_850, x_819, x_833, x_847, x_831, x_851, x_816, x_802, x_851, x_851, x_879, x_881, x_882, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_883; +goto block_33; } else { -lean_object* x_1061; lean_object* x_1062; lean_object* x_1063; lean_object* x_1064; -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_1061 = lean_ctor_get(x_1058, 0); -lean_inc(x_1061); -x_1062 = lean_ctor_get(x_1058, 1); -lean_inc(x_1062); -if (lean_is_exclusive(x_1058)) { - lean_ctor_release(x_1058, 0); - lean_ctor_release(x_1058, 1); - x_1063 = x_1058; -} else { - lean_dec_ref(x_1058); - x_1063 = lean_box(0); -} -if (lean_is_scalar(x_1063)) { - x_1064 = lean_alloc_ctor(1, 2, 0); -} else { - x_1064 = x_1063; -} -lean_ctor_set(x_1064, 0, x_1061); -lean_ctor_set(x_1064, 1, x_1062); -return x_1064; -} -} -else +lean_object* x_884; lean_object* x_885; uint8_t x_886; +x_884 = lean_ctor_get(x_15, 6); +lean_inc(x_884); +x_885 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_870, x_884, x_875); +lean_dec(x_870); +x_886 = lean_unbox(x_885); +lean_dec(x_885); +if (x_886 == 0) { -lean_object* x_1065; lean_object* x_1066; lean_object* x_1067; lean_object* x_1068; -x_1065 = lean_ctor_get(x_1055, 0); -lean_inc(x_1065); -if (lean_is_exclusive(x_1055)) { - lean_ctor_release(x_1055, 0); - x_1066 = x_1055; -} else { - lean_dec_ref(x_1055); - x_1066 = lean_box(0); -} -x_1067 = lean_ctor_get(x_1065, 1); -lean_inc(x_1067); -lean_dec(x_1065); -x_1068 = l_Lean_Language_SnapshotTask_get___rarg(x_1067); -if (lean_obj_tag(x_1068) == 0) +lean_dec(x_876); +lean_dec(x_862); +if (lean_obj_tag(x_873) == 0) { -uint8_t x_1069; lean_object* x_1070; lean_object* x_1071; -lean_dec(x_1066); -lean_dec(x_1054); -lean_dec(x_1053); -lean_dec(x_1000); -x_1069 = 0; -x_1070 = lean_box(0); +lean_object* x_887; lean_object* x_888; +lean_dec(x_874); +x_887 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -14412,421 +13347,102 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_1071 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_1011, x_1024, x_1039, x_1040, x_1041, x_1014, x_1026, x_1038, x_999, x_1042, x_1069, x_1070, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_1071) == 0) -{ -lean_object* x_1072; lean_object* x_1073; -x_1072 = lean_ctor_get(x_1071, 0); -lean_inc(x_1072); -x_1073 = lean_ctor_get(x_1071, 1); -lean_inc(x_1073); -lean_dec(x_1071); -x_16 = x_1072; -x_17 = x_1073; -goto block_24; -} -else -{ -lean_object* x_1074; lean_object* x_1075; lean_object* x_1076; lean_object* x_1077; -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_1074 = lean_ctor_get(x_1071, 0); -lean_inc(x_1074); -x_1075 = lean_ctor_get(x_1071, 1); -lean_inc(x_1075); -if (lean_is_exclusive(x_1071)) { - lean_ctor_release(x_1071, 0); - lean_ctor_release(x_1071, 1); - x_1076 = x_1071; -} else { - lean_dec_ref(x_1071); - x_1076 = lean_box(0); -} -if (lean_is_scalar(x_1076)) { - x_1077 = lean_alloc_ctor(1, 2, 0); -} else { - x_1077 = x_1076; -} -lean_ctor_set(x_1077, 0, x_1074); -lean_ctor_set(x_1077, 1, x_1075); -return x_1077; -} -} -else -{ -lean_object* x_1078; lean_object* x_1079; lean_object* x_1080; lean_object* x_1081; lean_object* x_1082; lean_object* x_1083; lean_object* x_1084; lean_object* x_1085; lean_object* x_1086; lean_object* x_1087; lean_object* x_1088; lean_object* x_1089; lean_object* x_1090; lean_object* x_1091; lean_object* x_1092; lean_object* x_1093; lean_object* x_1094; lean_object* x_1095; lean_object* x_1096; lean_object* x_1097; lean_object* x_1098; lean_object* x_1099; lean_object* x_1100; lean_object* x_1101; lean_object* x_1102; lean_object* x_1103; uint8_t x_1104; uint8_t x_1144; -x_1078 = lean_ctor_get(x_1068, 0); -lean_inc(x_1078); -if (lean_is_exclusive(x_1068)) { - lean_ctor_release(x_1068, 0); - x_1079 = x_1068; -} else { - lean_dec_ref(x_1068); - x_1079 = lean_box(0); -} -x_1080 = lean_ctor_get(x_15, 6); -lean_inc(x_1080); -lean_inc(x_1024); -lean_inc(x_1080); -x_1081 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_1080, x_1024, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -x_1082 = lean_ctor_get(x_1081, 0); -lean_inc(x_1082); -x_1083 = lean_ctor_get(x_1081, 1); -lean_inc(x_1083); -if (lean_is_exclusive(x_1081)) { - lean_ctor_release(x_1081, 0); - lean_ctor_release(x_1081, 1); - x_1084 = x_1081; -} else { - lean_dec_ref(x_1081); - x_1084 = lean_box(0); -} -x_1085 = lean_ctor_get(x_1082, 0); -lean_inc(x_1085); -x_1086 = lean_ctor_get(x_1082, 1); -lean_inc(x_1086); -if (lean_is_exclusive(x_1082)) { - lean_ctor_release(x_1082, 0); - lean_ctor_release(x_1082, 1); - x_1087 = x_1082; -} else { - lean_dec_ref(x_1082); - x_1087 = lean_box(0); -} -x_1088 = lean_ctor_get(x_1078, 0); -lean_inc(x_1088); -x_1089 = lean_ctor_get(x_1078, 1); -lean_inc(x_1089); -x_1090 = lean_ctor_get(x_1078, 2); -lean_inc(x_1090); -x_1091 = lean_ctor_get(x_1078, 3); -lean_inc(x_1091); -x_1092 = lean_ctor_get(x_1078, 4); -lean_inc(x_1092); -x_1093 = lean_ctor_get(x_1078, 5); -lean_inc(x_1093); -x_1094 = lean_ctor_get(x_1078, 6); -lean_inc(x_1094); -if (lean_is_exclusive(x_1078)) { - lean_ctor_release(x_1078, 0); - lean_ctor_release(x_1078, 1); - lean_ctor_release(x_1078, 2); - lean_ctor_release(x_1078, 3); - lean_ctor_release(x_1078, 4); - lean_ctor_release(x_1078, 5); - lean_ctor_release(x_1078, 6); - x_1095 = x_1078; -} else { - lean_dec_ref(x_1078); - x_1095 = lean_box(0); -} -lean_inc(x_1011); -lean_inc(x_1080); -x_1096 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_1080, x_1011); -lean_inc(x_1080); -lean_inc(x_1086); -lean_inc(x_1090); -lean_inc(x_1089); -if (lean_is_scalar(x_1095)) { - x_1097 = lean_alloc_ctor(0, 7, 0); -} else { - x_1097 = x_1095; -} -lean_ctor_set(x_1097, 0, x_1088); -lean_ctor_set(x_1097, 1, x_1089); -lean_ctor_set(x_1097, 2, x_1090); -lean_ctor_set(x_1097, 3, x_1085); -lean_ctor_set(x_1097, 4, x_1086); -lean_ctor_set(x_1097, 5, x_1080); -lean_ctor_set(x_1097, 6, x_1096); -if (lean_is_scalar(x_1079)) { - x_1098 = lean_alloc_ctor(1, 1, 0); -} else { - x_1098 = x_1079; -} -lean_ctor_set(x_1098, 0, x_1097); -x_1099 = lean_ctor_get(x_1053, 1); -lean_inc(x_1099); -lean_dec(x_1053); -x_1100 = lean_io_promise_resolve(x_1098, x_1099, x_1083); -lean_dec(x_1099); -x_1101 = lean_ctor_get(x_1100, 1); -lean_inc(x_1101); -if (lean_is_exclusive(x_1100)) { - lean_ctor_release(x_1100, 0); - lean_ctor_release(x_1100, 1); - x_1102 = x_1100; -} else { - lean_dec_ref(x_1100); - x_1102 = lean_box(0); -} -x_1103 = lean_ctor_get(x_10, 2); -lean_inc(x_1103); -x_1144 = lean_unbox(x_1000); -if (x_1144 == 0) -{ -uint8_t x_1145; -lean_dec(x_1103); -lean_dec(x_1093); -lean_dec(x_1080); -x_1145 = 0; -x_1104 = x_1145; -goto block_1143; -} -else -{ -lean_object* x_1146; uint8_t x_1147; -x_1146 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_1103, x_1080, x_1093); -lean_dec(x_1103); -x_1147 = lean_unbox(x_1146); -lean_dec(x_1146); -x_1104 = x_1147; -goto block_1143; -} -block_1143: -{ -lean_object* x_1105; lean_object* x_1114; -if (lean_obj_tag(x_1086) == 0) -{ -lean_dec(x_1092); -lean_dec(x_1091); -lean_dec(x_1000); -if (x_1104 == 0) -{ -lean_dec(x_1094); -lean_dec(x_1084); -x_1105 = x_1042; -goto block_1113; -} -else -{ -lean_dec(x_1102); -lean_dec(x_1087); -lean_dec(x_1066); -lean_dec(x_1054); -x_1114 = x_1042; -goto block_1125; -} -} -else -{ -lean_object* x_1126; uint8_t x_1127; -if (lean_is_exclusive(x_1086)) { - lean_ctor_release(x_1086, 0); - x_1126 = x_1086; -} else { - lean_dec_ref(x_1086); - x_1126 = lean_box(0); -} -x_1127 = lean_unbox(x_1000); -lean_dec(x_1000); -if (x_1127 == 0) -{ -lean_object* x_1128; lean_object* x_1129; -lean_dec(x_1092); -lean_dec(x_1091); -lean_inc(x_1024); -x_1128 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1128, 0, x_1042); -lean_ctor_set(x_1128, 1, x_1024); -if (lean_is_scalar(x_1126)) { - x_1129 = lean_alloc_ctor(1, 1, 0); -} else { - x_1129 = x_1126; -} -lean_ctor_set(x_1129, 0, x_1128); -if (x_1104 == 0) -{ -lean_dec(x_1094); -lean_dec(x_1084); -x_1105 = x_1129; -goto block_1113; -} -else -{ -lean_dec(x_1102); -lean_dec(x_1087); -lean_dec(x_1066); -lean_dec(x_1054); -x_1114 = x_1129; -goto block_1125; -} +x_888 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_848, x_849, x_850, x_819, x_833, x_847, x_831, x_851, x_816, x_802, x_851, x_851, x_879, x_886, x_887, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_888; +goto block_33; } else { -if (lean_obj_tag(x_1091) == 0) -{ -lean_object* x_1130; lean_object* x_1131; -lean_dec(x_1092); -lean_inc(x_1024); -x_1130 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1130, 0, x_1042); -lean_ctor_set(x_1130, 1, x_1024); -if (lean_is_scalar(x_1126)) { - x_1131 = lean_alloc_ctor(1, 1, 0); -} else { - x_1131 = x_1126; -} -lean_ctor_set(x_1131, 0, x_1130); -if (x_1104 == 0) -{ -lean_dec(x_1094); -lean_dec(x_1084); -x_1105 = x_1131; -goto block_1113; -} -else +if (lean_obj_tag(x_874) == 0) { -lean_dec(x_1102); -lean_dec(x_1087); -lean_dec(x_1066); -lean_dec(x_1054); -x_1114 = x_1131; -goto block_1125; -} +lean_object* x_889; lean_object* x_890; +lean_dec(x_873); +x_889 = 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_1); +x_890 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_848, x_849, x_850, x_819, x_833, x_847, x_831, x_851, x_816, x_802, x_851, x_851, x_879, x_886, x_889, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_890; +goto block_33; } else { -lean_dec(x_1126); -if (lean_obj_tag(x_1092) == 0) -{ -lean_object* x_1132; lean_object* x_1133; lean_object* x_1134; -if (lean_is_exclusive(x_1091)) { - lean_ctor_release(x_1091, 0); - x_1132 = x_1091; +lean_object* x_891; lean_object* x_892; lean_object* x_893; lean_object* x_894; lean_object* x_895; lean_object* x_896; lean_object* x_897; +x_891 = lean_ctor_get(x_873, 0); +lean_inc(x_891); +lean_dec(x_873); +x_892 = lean_ctor_get(x_874, 0); +lean_inc(x_892); +if (lean_is_exclusive(x_874)) { + lean_ctor_release(x_874, 0); + x_893 = x_874; } else { - lean_dec_ref(x_1091); - x_1132 = lean_box(0); + lean_dec_ref(x_874); + x_893 = lean_box(0); } -lean_inc(x_1024); -x_1133 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1133, 0, x_1042); -lean_ctor_set(x_1133, 1, x_1024); -if (lean_is_scalar(x_1132)) { - x_1134 = lean_alloc_ctor(1, 1, 0); +x_894 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_894, 0, x_891); +lean_ctor_set(x_894, 1, x_892); +if (lean_is_scalar(x_893)) { + x_895 = lean_alloc_ctor(1, 1, 0); } else { - x_1134 = x_1132; + x_895 = x_893; } -lean_ctor_set(x_1134, 0, x_1133); -if (x_1104 == 0) -{ -lean_dec(x_1094); -lean_dec(x_1084); -x_1105 = x_1134; -goto block_1113; +lean_ctor_set(x_895, 0, x_894); +x_896 = 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_1); +x_897 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_848, x_849, x_850, x_819, x_833, x_847, x_831, x_851, x_816, x_802, x_851, x_895, x_879, x_886, x_896, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_897; +goto block_33; } -else -{ -lean_dec(x_1102); -lean_dec(x_1087); -lean_dec(x_1066); -lean_dec(x_1054); -x_1114 = x_1134; -goto block_1125; } } else { -lean_object* x_1135; lean_object* x_1136; lean_object* x_1137; lean_object* x_1138; lean_object* x_1139; lean_object* x_1140; lean_object* x_1141; lean_object* x_1142; -x_1135 = lean_ctor_get(x_1091, 0); -lean_inc(x_1135); -if (lean_is_exclusive(x_1091)) { - lean_ctor_release(x_1091, 0); - x_1136 = x_1091; -} else { - lean_dec_ref(x_1091); - x_1136 = lean_box(0); -} -x_1137 = lean_ctor_get(x_1092, 0); -lean_inc(x_1137); -if (lean_is_exclusive(x_1092)) { - lean_ctor_release(x_1092, 0); - x_1138 = x_1092; +lean_object* x_898; lean_object* x_899; lean_object* x_900; +x_898 = lean_box(0); +x_899 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_899, 0, x_898); +lean_ctor_set(x_899, 1, x_876); +if (lean_is_scalar(x_862)) { + x_900 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_1092); - x_1138 = lean_box(0); + x_900 = x_862; } -x_1139 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1139, 0, x_1135); -lean_ctor_set(x_1139, 1, x_1137); -if (lean_is_scalar(x_1138)) { - x_1140 = lean_alloc_ctor(1, 1, 0); -} else { - x_1140 = x_1138; -} -lean_ctor_set(x_1140, 0, x_1139); -lean_inc(x_1024); -x_1141 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1141, 0, x_1140); -lean_ctor_set(x_1141, 1, x_1024); -if (lean_is_scalar(x_1136)) { - x_1142 = lean_alloc_ctor(1, 1, 0); -} else { - x_1142 = x_1136; -} -lean_ctor_set(x_1142, 0, x_1141); -if (x_1104 == 0) +lean_ctor_set(x_900, 0, x_899); +if (lean_obj_tag(x_873) == 0) { -lean_dec(x_1094); -lean_dec(x_1084); -x_1105 = x_1142; -goto block_1113; +lean_object* x_901; lean_object* x_902; +lean_dec(x_874); +x_901 = 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_1); +x_902 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_848, x_849, x_850, x_819, x_833, x_847, x_831, x_851, x_816, x_802, x_900, x_851, x_879, x_886, x_901, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_902; +goto block_33; } else { -lean_dec(x_1102); -lean_dec(x_1087); -lean_dec(x_1066); -lean_dec(x_1054); -x_1114 = x_1142; -goto block_1125; -} -} -} -} -} -block_1113: +if (lean_obj_tag(x_874) == 0) { -lean_object* x_1106; lean_object* x_1107; lean_object* x_1108; lean_object* x_1109; lean_object* x_1110; lean_object* x_1111; lean_object* x_1112; -lean_inc(x_1011); -if (lean_is_scalar(x_1102)) { - x_1106 = lean_alloc_ctor(0, 2, 0); -} else { - x_1106 = x_1102; -} -lean_ctor_set(x_1106, 0, x_1042); -lean_ctor_set(x_1106, 1, x_1011); -if (lean_is_scalar(x_1066)) { - x_1107 = lean_alloc_ctor(1, 1, 0); -} else { - x_1107 = x_1066; -} -lean_ctor_set(x_1107, 0, x_1106); -lean_inc(x_15); -x_1108 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_1108, 0, x_15); -lean_ctor_set(x_1108, 1, x_1089); -lean_ctor_set(x_1108, 2, x_1105); -lean_ctor_set(x_1108, 3, x_1107); -if (lean_is_scalar(x_1087)) { - x_1109 = lean_alloc_ctor(0, 2, 0); -} else { - x_1109 = x_1087; -} -lean_ctor_set(x_1109, 0, x_1108); -lean_ctor_set(x_1109, 1, x_1090); -if (lean_is_scalar(x_1054)) { - x_1110 = lean_alloc_ctor(1, 1, 0); -} else { - x_1110 = x_1054; -} -lean_ctor_set(x_1110, 0, x_1109); -x_1111 = lean_box(0); +lean_object* x_903; lean_object* x_904; +lean_dec(x_873); +x_903 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -14834,41 +13450,35 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_1112 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_1011, x_1024, x_1039, x_1040, x_1041, x_1014, x_1026, x_1038, x_999, x_1110, x_1104, x_1111, x_6, x_7, x_8, x_9, x_10, x_11, x_1101); -x_25 = x_1112; -goto block_32; +x_904 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_848, x_849, x_850, x_819, x_833, x_847, x_831, x_851, x_816, x_802, x_900, x_851, x_879, x_886, x_903, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_904; +goto block_33; } -block_1125: -{ -lean_object* x_1115; lean_object* x_1116; lean_object* x_1117; lean_object* x_1118; lean_object* x_1119; lean_object* x_1120; lean_object* x_1121; lean_object* x_1122; lean_object* x_1123; lean_object* x_1124; -x_1115 = lean_box(0); -if (lean_is_scalar(x_1084)) { - x_1116 = lean_alloc_ctor(0, 2, 0); -} else { - x_1116 = x_1084; -} -lean_ctor_set(x_1116, 0, x_1115); -lean_ctor_set(x_1116, 1, x_1094); -x_1117 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_1117, 0, x_1116); -lean_inc(x_1011); -x_1118 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1118, 0, x_1117); -lean_ctor_set(x_1118, 1, x_1011); -x_1119 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_1119, 0, x_1118); -lean_inc(x_15); -x_1120 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_1120, 0, x_15); -lean_ctor_set(x_1120, 1, x_1089); -lean_ctor_set(x_1120, 2, x_1114); -lean_ctor_set(x_1120, 3, x_1119); -x_1121 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1121, 0, x_1120); -lean_ctor_set(x_1121, 1, x_1090); -x_1122 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_1122, 0, x_1121); -x_1123 = lean_box(0); +else +{ +lean_object* x_905; lean_object* x_906; lean_object* x_907; lean_object* x_908; lean_object* x_909; lean_object* x_910; lean_object* x_911; +x_905 = lean_ctor_get(x_873, 0); +lean_inc(x_905); +lean_dec(x_873); +x_906 = lean_ctor_get(x_874, 0); +lean_inc(x_906); +if (lean_is_exclusive(x_874)) { + lean_ctor_release(x_874, 0); + x_907 = x_874; +} else { + lean_dec_ref(x_874); + x_907 = lean_box(0); +} +x_908 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_908, 0, x_905); +lean_ctor_set(x_908, 1, x_906); +if (lean_is_scalar(x_907)) { + x_909 = lean_alloc_ctor(1, 1, 0); +} else { + x_909 = x_907; +} +lean_ctor_set(x_909, 0, x_908); +x_910 = lean_box(0); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -14876,9 +13486,9 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_1); -x_1124 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_1011, x_1024, x_1039, x_1040, x_1041, x_1014, x_1026, x_1038, x_999, x_1122, x_1104, x_1123, x_6, x_7, x_8, x_9, x_10, x_11, x_1101); -x_25 = x_1124; -goto block_32; +x_911 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2(x_15, x_1, x_848, x_849, x_850, x_819, x_833, x_847, x_831, x_851, x_816, x_802, x_900, x_909, x_879, x_886, x_910, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_16 = x_911; +goto block_33; } } } @@ -14889,293 +13499,17 @@ goto block_32; } } } -else -{ -lean_object* x_1148; lean_object* x_1149; lean_object* x_1150; lean_object* x_1151; lean_object* x_1152; lean_object* x_1153; lean_object* x_1154; lean_object* x_1155; lean_object* x_1156; lean_object* x_1157; lean_object* x_1158; lean_object* x_1159; uint8_t x_1160; -x_1148 = lean_ctor_get(x_34, 1); -x_1149 = lean_ctor_get(x_34, 0); -lean_inc(x_1148); -lean_inc(x_1149); -lean_dec(x_34); -x_1150 = lean_ctor_get(x_5, 0); -lean_inc(x_1150); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_1151 = x_5; -} else { - lean_dec_ref(x_5); - x_1151 = lean_box(0); } -x_1152 = lean_ctor_get(x_33, 0); -lean_inc(x_1152); -if (lean_is_exclusive(x_33)) { - lean_ctor_release(x_33, 0); - lean_ctor_release(x_33, 1); - x_1153 = x_33; -} else { - lean_dec_ref(x_33); - x_1153 = lean_box(0); -} -x_1154 = lean_ctor_get(x_1148, 0); -lean_inc(x_1154); -x_1155 = lean_ctor_get(x_1148, 1); -lean_inc(x_1155); -if (lean_is_exclusive(x_1148)) { - lean_ctor_release(x_1148, 0); - lean_ctor_release(x_1148, 1); - x_1156 = x_1148; -} else { - lean_dec_ref(x_1148); - x_1156 = lean_box(0); -} -x_1157 = lean_ctor_get(x_1149, 0); -lean_inc(x_1157); -x_1158 = lean_ctor_get(x_1149, 1); -lean_inc(x_1158); -x_1159 = lean_ctor_get(x_1149, 2); -lean_inc(x_1159); -x_1160 = lean_nat_dec_lt(x_1158, x_1159); -if (x_1160 == 0) -{ -lean_object* x_1161; lean_object* x_1162; lean_object* x_1163; lean_object* x_1164; lean_object* x_1165; -lean_dec(x_1159); -lean_dec(x_1158); -lean_dec(x_1157); -lean_dec(x_15); -if (lean_is_scalar(x_1156)) { - x_1161 = lean_alloc_ctor(0, 2, 0); -} else { - x_1161 = x_1156; -} -lean_ctor_set(x_1161, 0, x_1154); -lean_ctor_set(x_1161, 1, x_1155); -x_1162 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1162, 0, x_1149); -lean_ctor_set(x_1162, 1, x_1161); -if (lean_is_scalar(x_1153)) { - x_1163 = lean_alloc_ctor(0, 2, 0); -} else { - x_1163 = x_1153; -} -lean_ctor_set(x_1163, 0, x_1152); -lean_ctor_set(x_1163, 1, x_1162); -if (lean_is_scalar(x_1151)) { - x_1164 = lean_alloc_ctor(0, 2, 0); -} else { - x_1164 = x_1151; -} -lean_ctor_set(x_1164, 0, x_1150); -lean_ctor_set(x_1164, 1, x_1163); -x_1165 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_1165, 0, x_1164); -x_16 = x_1165; -x_17 = x_12; -goto block_24; -} -else -{ -lean_object* x_1166; lean_object* x_1167; lean_object* x_1168; lean_object* x_1169; lean_object* x_1170; lean_object* x_1171; lean_object* x_1172; lean_object* x_1173; uint8_t x_1174; -if (lean_is_exclusive(x_1149)) { - lean_ctor_release(x_1149, 0); - lean_ctor_release(x_1149, 1); - lean_ctor_release(x_1149, 2); - x_1166 = x_1149; -} else { - lean_dec_ref(x_1149); - x_1166 = lean_box(0); -} -x_1167 = lean_array_fget(x_1157, x_1158); -x_1168 = lean_unsigned_to_nat(1u); -x_1169 = lean_nat_add(x_1158, x_1168); -lean_dec(x_1158); -if (lean_is_scalar(x_1166)) { - x_1170 = lean_alloc_ctor(0, 3, 0); -} else { - x_1170 = x_1166; -} -lean_ctor_set(x_1170, 0, x_1157); -lean_ctor_set(x_1170, 1, x_1169); -lean_ctor_set(x_1170, 2, x_1159); -x_1171 = lean_ctor_get(x_1152, 0); -lean_inc(x_1171); -x_1172 = lean_ctor_get(x_1152, 1); -lean_inc(x_1172); -x_1173 = lean_ctor_get(x_1152, 2); -lean_inc(x_1173); -x_1174 = lean_nat_dec_lt(x_1172, x_1173); -if (x_1174 == 0) -{ -lean_object* x_1175; lean_object* x_1176; lean_object* x_1177; lean_object* x_1178; lean_object* x_1179; -lean_dec(x_1173); -lean_dec(x_1172); -lean_dec(x_1171); -lean_dec(x_1167); -lean_dec(x_15); -if (lean_is_scalar(x_1156)) { - x_1175 = lean_alloc_ctor(0, 2, 0); -} else { - x_1175 = x_1156; -} -lean_ctor_set(x_1175, 0, x_1154); -lean_ctor_set(x_1175, 1, x_1155); -x_1176 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1176, 0, x_1170); -lean_ctor_set(x_1176, 1, x_1175); -if (lean_is_scalar(x_1153)) { - x_1177 = lean_alloc_ctor(0, 2, 0); -} else { - x_1177 = x_1153; -} -lean_ctor_set(x_1177, 0, x_1152); -lean_ctor_set(x_1177, 1, x_1176); -if (lean_is_scalar(x_1151)) { - x_1178 = lean_alloc_ctor(0, 2, 0); -} else { - x_1178 = x_1151; -} -lean_ctor_set(x_1178, 0, x_1150); -lean_ctor_set(x_1178, 1, x_1177); -x_1179 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_1179, 0, x_1178); -x_16 = x_1179; -x_17 = x_12; -goto block_24; -} -else -{ -lean_object* x_1180; lean_object* x_1181; lean_object* x_1182; lean_object* x_1183; lean_object* x_1184; lean_object* x_1185; lean_object* x_1186; uint8_t x_1187; -if (lean_is_exclusive(x_1152)) { - lean_ctor_release(x_1152, 0); - lean_ctor_release(x_1152, 1); - lean_ctor_release(x_1152, 2); - x_1180 = x_1152; -} else { - lean_dec_ref(x_1152); - x_1180 = lean_box(0); -} -x_1181 = lean_array_fget(x_1171, x_1172); -x_1182 = lean_nat_add(x_1172, x_1168); -lean_dec(x_1172); -if (lean_is_scalar(x_1180)) { - x_1183 = lean_alloc_ctor(0, 3, 0); -} else { - x_1183 = x_1180; -} -lean_ctor_set(x_1183, 0, x_1171); -lean_ctor_set(x_1183, 1, x_1182); -lean_ctor_set(x_1183, 2, x_1173); -x_1184 = lean_ctor_get(x_1150, 0); -lean_inc(x_1184); -x_1185 = lean_ctor_get(x_1150, 1); -lean_inc(x_1185); -x_1186 = lean_ctor_get(x_1150, 2); -lean_inc(x_1186); -x_1187 = lean_nat_dec_lt(x_1185, x_1186); -if (x_1187 == 0) -{ -lean_object* x_1188; lean_object* x_1189; lean_object* x_1190; lean_object* x_1191; lean_object* x_1192; -lean_dec(x_1186); -lean_dec(x_1185); -lean_dec(x_1184); -lean_dec(x_1181); -lean_dec(x_1167); -lean_dec(x_15); -if (lean_is_scalar(x_1156)) { - x_1188 = lean_alloc_ctor(0, 2, 0); -} else { - x_1188 = x_1156; -} -lean_ctor_set(x_1188, 0, x_1154); -lean_ctor_set(x_1188, 1, x_1155); -x_1189 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1189, 0, x_1170); -lean_ctor_set(x_1189, 1, x_1188); -if (lean_is_scalar(x_1153)) { - x_1190 = lean_alloc_ctor(0, 2, 0); -} else { - x_1190 = x_1153; -} -lean_ctor_set(x_1190, 0, x_1183); -lean_ctor_set(x_1190, 1, x_1189); -if (lean_is_scalar(x_1151)) { - x_1191 = lean_alloc_ctor(0, 2, 0); -} else { - x_1191 = x_1151; -} -lean_ctor_set(x_1191, 0, x_1150); -lean_ctor_set(x_1191, 1, x_1190); -x_1192 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_1192, 0, x_1191); -x_16 = x_1192; -x_17 = x_12; -goto block_24; -} -else -{ -lean_object* x_1193; lean_object* x_1194; lean_object* x_1195; lean_object* x_1196; lean_object* x_1197; lean_object* x_1198; lean_object* x_1199; lean_object* x_1200; lean_object* x_1201; -lean_dec(x_1156); -lean_dec(x_1153); -lean_dec(x_1151); -if (lean_is_exclusive(x_1150)) { - lean_ctor_release(x_1150, 0); - lean_ctor_release(x_1150, 1); - lean_ctor_release(x_1150, 2); - x_1193 = x_1150; -} else { - lean_dec_ref(x_1150); - x_1193 = lean_box(0); -} -x_1194 = lean_array_fget(x_1184, x_1185); -x_1195 = lean_nat_add(x_1185, x_1168); -lean_dec(x_1185); -if (lean_is_scalar(x_1193)) { - x_1196 = lean_alloc_ctor(0, 3, 0); -} else { - x_1196 = x_1193; -} -lean_ctor_set(x_1196, 0, x_1184); -lean_ctor_set(x_1196, 1, x_1195); -lean_ctor_set(x_1196, 2, x_1186); -x_1197 = lean_ctor_get(x_1194, 0); -lean_inc(x_1197); -x_1198 = lean_ctor_get(x_1194, 1); -lean_inc(x_1198); -x_1199 = lean_ctor_get(x_1194, 2); -lean_inc(x_1199); -lean_dec(x_1194); -x_1200 = lean_box(0); -x_1201 = lean_ctor_get(x_15, 7); -lean_inc(x_1201); -if (lean_obj_tag(x_1201) == 0) -{ -lean_object* x_1202; uint8_t x_1203; lean_object* x_1204; -x_1202 = lean_box(0); -x_1203 = lean_unbox(x_1155); -lean_dec(x_1155); -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_1204 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_1167, x_1181, x_1197, x_1198, x_1199, x_1170, x_1183, x_1196, x_1154, x_1200, x_1203, x_1202, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_1204) == 0) +block_33: { -lean_object* x_1205; lean_object* x_1206; -x_1205 = lean_ctor_get(x_1204, 0); -lean_inc(x_1205); -x_1206 = lean_ctor_get(x_1204, 1); -lean_inc(x_1206); -lean_dec(x_1204); -x_16 = x_1205; -x_17 = x_1206; -goto block_24; -} -else +if (lean_obj_tag(x_16) == 0) { -lean_object* x_1207; lean_object* x_1208; lean_object* x_1209; lean_object* x_1210; +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_11); lean_dec(x_10); lean_dec(x_9); @@ -15183,73 +13517,53 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_1); -x_1207 = lean_ctor_get(x_1204, 0); -lean_inc(x_1207); -x_1208 = lean_ctor_get(x_1204, 1); -lean_inc(x_1208); -if (lean_is_exclusive(x_1204)) { - lean_ctor_release(x_1204, 0); - lean_ctor_release(x_1204, 1); - x_1209 = x_1204; -} else { - lean_dec_ref(x_1204); - x_1209 = lean_box(0); -} -if (lean_is_scalar(x_1209)) { - x_1210 = lean_alloc_ctor(1, 2, 0); -} else { - x_1210 = x_1209; +x_18 = !lean_is_exclusive(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_16, 0); +lean_dec(x_19); +x_20 = lean_ctor_get(x_17, 0); +lean_inc(x_20); +lean_dec(x_17); +lean_ctor_set(x_16, 0, x_20); +return x_16; } -lean_ctor_set(x_1210, 0, x_1207); -lean_ctor_set(x_1210, 1, x_1208); -return x_1210; +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_16, 1); +lean_inc(x_21); +lean_dec(x_16); +x_22 = lean_ctor_get(x_17, 0); +lean_inc(x_22); +lean_dec(x_17); +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_1211; lean_object* x_1212; lean_object* x_1213; -x_1211 = lean_ctor_get(x_1201, 0); -lean_inc(x_1211); -if (lean_is_exclusive(x_1201)) { - lean_ctor_release(x_1201, 0); - x_1212 = x_1201; -} else { - lean_dec_ref(x_1201); - x_1212 = lean_box(0); +lean_object* x_24; lean_object* x_25; size_t x_26; size_t x_27; +x_24 = lean_ctor_get(x_16, 1); +lean_inc(x_24); +lean_dec(x_16); +x_25 = lean_ctor_get(x_17, 0); +lean_inc(x_25); +lean_dec(x_17); +x_26 = 1; +x_27 = lean_usize_add(x_4, x_26); +x_4 = x_27; +x_5 = x_25; +x_12 = x_24; +goto _start; } -x_1213 = lean_ctor_get(x_1211, 0); -lean_inc(x_1213); -if (lean_obj_tag(x_1213) == 0) -{ -uint8_t x_1214; lean_object* x_1215; lean_object* x_1216; -lean_dec(x_1212); -lean_dec(x_1211); -lean_dec(x_1155); -x_1214 = 0; -x_1215 = 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_1); -x_1216 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_1167, x_1181, x_1197, x_1198, x_1199, x_1170, x_1183, x_1196, x_1154, x_1200, x_1214, x_1215, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_1216) == 0) -{ -lean_object* x_1217; lean_object* x_1218; -x_1217 = lean_ctor_get(x_1216, 0); -lean_inc(x_1217); -x_1218 = lean_ctor_get(x_1216, 1); -lean_inc(x_1218); -lean_dec(x_1216); -x_16 = x_1217; -x_17 = x_1218; -goto block_24; } else { -lean_object* x_1219; lean_object* x_1220; lean_object* x_1221; lean_object* x_1222; +uint8_t x_29; lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -15257,611 +13571,23 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_1); -x_1219 = lean_ctor_get(x_1216, 0); -lean_inc(x_1219); -x_1220 = lean_ctor_get(x_1216, 1); -lean_inc(x_1220); -if (lean_is_exclusive(x_1216)) { - lean_ctor_release(x_1216, 0); - lean_ctor_release(x_1216, 1); - x_1221 = x_1216; -} else { - lean_dec_ref(x_1216); - x_1221 = lean_box(0); -} -if (lean_is_scalar(x_1221)) { - x_1222 = lean_alloc_ctor(1, 2, 0); -} else { - x_1222 = x_1221; -} -lean_ctor_set(x_1222, 0, x_1219); -lean_ctor_set(x_1222, 1, x_1220); -return x_1222; -} -} -else -{ -lean_object* x_1223; lean_object* x_1224; lean_object* x_1225; lean_object* x_1226; -x_1223 = lean_ctor_get(x_1213, 0); -lean_inc(x_1223); -if (lean_is_exclusive(x_1213)) { - lean_ctor_release(x_1213, 0); - x_1224 = x_1213; -} else { - lean_dec_ref(x_1213); - x_1224 = lean_box(0); -} -x_1225 = lean_ctor_get(x_1223, 1); -lean_inc(x_1225); -lean_dec(x_1223); -x_1226 = l_Lean_Language_SnapshotTask_get___rarg(x_1225); -if (lean_obj_tag(x_1226) == 0) -{ -uint8_t x_1227; lean_object* x_1228; lean_object* x_1229; -lean_dec(x_1224); -lean_dec(x_1212); -lean_dec(x_1211); -lean_dec(x_1155); -x_1227 = 0; -x_1228 = 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_1); -x_1229 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_1167, x_1181, x_1197, x_1198, x_1199, x_1170, x_1183, x_1196, x_1154, x_1200, x_1227, x_1228, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_1229) == 0) -{ -lean_object* x_1230; lean_object* x_1231; -x_1230 = lean_ctor_get(x_1229, 0); -lean_inc(x_1230); -x_1231 = lean_ctor_get(x_1229, 1); -lean_inc(x_1231); -lean_dec(x_1229); -x_16 = x_1230; -x_17 = x_1231; -goto block_24; -} -else -{ -lean_object* x_1232; lean_object* x_1233; lean_object* x_1234; lean_object* x_1235; -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_1232 = lean_ctor_get(x_1229, 0); -lean_inc(x_1232); -x_1233 = lean_ctor_get(x_1229, 1); -lean_inc(x_1233); -if (lean_is_exclusive(x_1229)) { - lean_ctor_release(x_1229, 0); - lean_ctor_release(x_1229, 1); - x_1234 = x_1229; -} else { - lean_dec_ref(x_1229); - x_1234 = lean_box(0); -} -if (lean_is_scalar(x_1234)) { - x_1235 = lean_alloc_ctor(1, 2, 0); -} else { - x_1235 = x_1234; -} -lean_ctor_set(x_1235, 0, x_1232); -lean_ctor_set(x_1235, 1, x_1233); -return x_1235; -} -} -else -{ -lean_object* x_1236; lean_object* x_1237; lean_object* x_1238; lean_object* x_1239; lean_object* x_1240; lean_object* x_1241; lean_object* x_1242; lean_object* x_1243; lean_object* x_1244; lean_object* x_1245; lean_object* x_1246; lean_object* x_1247; lean_object* x_1248; lean_object* x_1249; lean_object* x_1250; lean_object* x_1251; lean_object* x_1252; lean_object* x_1253; lean_object* x_1254; lean_object* x_1255; lean_object* x_1256; lean_object* x_1257; lean_object* x_1258; lean_object* x_1259; lean_object* x_1260; lean_object* x_1261; uint8_t x_1262; uint8_t x_1302; -x_1236 = lean_ctor_get(x_1226, 0); -lean_inc(x_1236); -if (lean_is_exclusive(x_1226)) { - lean_ctor_release(x_1226, 0); - x_1237 = x_1226; -} else { - lean_dec_ref(x_1226); - x_1237 = lean_box(0); -} -x_1238 = lean_ctor_get(x_15, 6); -lean_inc(x_1238); -lean_inc(x_1181); -lean_inc(x_1238); -x_1239 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask(x_1238, x_1181, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -x_1240 = lean_ctor_get(x_1239, 0); -lean_inc(x_1240); -x_1241 = lean_ctor_get(x_1239, 1); -lean_inc(x_1241); -if (lean_is_exclusive(x_1239)) { - lean_ctor_release(x_1239, 0); - lean_ctor_release(x_1239, 1); - x_1242 = x_1239; -} else { - lean_dec_ref(x_1239); - x_1242 = lean_box(0); -} -x_1243 = lean_ctor_get(x_1240, 0); -lean_inc(x_1243); -x_1244 = lean_ctor_get(x_1240, 1); -lean_inc(x_1244); -if (lean_is_exclusive(x_1240)) { - lean_ctor_release(x_1240, 0); - lean_ctor_release(x_1240, 1); - x_1245 = x_1240; -} else { - lean_dec_ref(x_1240); - x_1245 = lean_box(0); -} -x_1246 = lean_ctor_get(x_1236, 0); -lean_inc(x_1246); -x_1247 = lean_ctor_get(x_1236, 1); -lean_inc(x_1247); -x_1248 = lean_ctor_get(x_1236, 2); -lean_inc(x_1248); -x_1249 = lean_ctor_get(x_1236, 3); -lean_inc(x_1249); -x_1250 = lean_ctor_get(x_1236, 4); -lean_inc(x_1250); -x_1251 = lean_ctor_get(x_1236, 5); -lean_inc(x_1251); -x_1252 = lean_ctor_get(x_1236, 6); -lean_inc(x_1252); -if (lean_is_exclusive(x_1236)) { - lean_ctor_release(x_1236, 0); - lean_ctor_release(x_1236, 1); - lean_ctor_release(x_1236, 2); - lean_ctor_release(x_1236, 3); - lean_ctor_release(x_1236, 4); - lean_ctor_release(x_1236, 5); - lean_ctor_release(x_1236, 6); - x_1253 = x_1236; -} else { - lean_dec_ref(x_1236); - x_1253 = lean_box(0); -} -lean_inc(x_1167); -lean_inc(x_1238); -x_1254 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkBodyTask(x_1238, x_1167); -lean_inc(x_1238); -lean_inc(x_1244); -lean_inc(x_1248); -lean_inc(x_1247); -if (lean_is_scalar(x_1253)) { - x_1255 = lean_alloc_ctor(0, 7, 0); -} else { - x_1255 = x_1253; -} -lean_ctor_set(x_1255, 0, x_1246); -lean_ctor_set(x_1255, 1, x_1247); -lean_ctor_set(x_1255, 2, x_1248); -lean_ctor_set(x_1255, 3, x_1243); -lean_ctor_set(x_1255, 4, x_1244); -lean_ctor_set(x_1255, 5, x_1238); -lean_ctor_set(x_1255, 6, x_1254); -if (lean_is_scalar(x_1237)) { - x_1256 = lean_alloc_ctor(1, 1, 0); -} else { - x_1256 = x_1237; -} -lean_ctor_set(x_1256, 0, x_1255); -x_1257 = lean_ctor_get(x_1211, 1); -lean_inc(x_1257); -lean_dec(x_1211); -x_1258 = lean_io_promise_resolve(x_1256, x_1257, x_1241); -lean_dec(x_1257); -x_1259 = lean_ctor_get(x_1258, 1); -lean_inc(x_1259); -if (lean_is_exclusive(x_1258)) { - lean_ctor_release(x_1258, 0); - lean_ctor_release(x_1258, 1); - x_1260 = x_1258; -} else { - lean_dec_ref(x_1258); - x_1260 = lean_box(0); -} -x_1261 = lean_ctor_get(x_10, 2); -lean_inc(x_1261); -x_1302 = lean_unbox(x_1155); -if (x_1302 == 0) -{ -uint8_t x_1303; -lean_dec(x_1261); -lean_dec(x_1251); -lean_dec(x_1238); -x_1303 = 0; -x_1262 = x_1303; -goto block_1301; -} -else -{ -lean_object* x_1304; uint8_t x_1305; -x_1304 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_1261, x_1238, x_1251); -lean_dec(x_1261); -x_1305 = lean_unbox(x_1304); -lean_dec(x_1304); -x_1262 = x_1305; -goto block_1301; -} -block_1301: -{ -lean_object* x_1263; lean_object* x_1272; -if (lean_obj_tag(x_1244) == 0) -{ -lean_dec(x_1250); -lean_dec(x_1249); -lean_dec(x_1155); -if (x_1262 == 0) -{ -lean_dec(x_1252); -lean_dec(x_1242); -x_1263 = x_1200; -goto block_1271; -} -else -{ -lean_dec(x_1260); -lean_dec(x_1245); -lean_dec(x_1224); -lean_dec(x_1212); -x_1272 = x_1200; -goto block_1283; -} -} -else -{ -lean_object* x_1284; uint8_t x_1285; -if (lean_is_exclusive(x_1244)) { - lean_ctor_release(x_1244, 0); - x_1284 = x_1244; -} else { - lean_dec_ref(x_1244); - x_1284 = lean_box(0); -} -x_1285 = lean_unbox(x_1155); -lean_dec(x_1155); -if (x_1285 == 0) -{ -lean_object* x_1286; lean_object* x_1287; -lean_dec(x_1250); -lean_dec(x_1249); -lean_inc(x_1181); -x_1286 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1286, 0, x_1200); -lean_ctor_set(x_1286, 1, x_1181); -if (lean_is_scalar(x_1284)) { - x_1287 = lean_alloc_ctor(1, 1, 0); -} else { - x_1287 = x_1284; -} -lean_ctor_set(x_1287, 0, x_1286); -if (x_1262 == 0) -{ -lean_dec(x_1252); -lean_dec(x_1242); -x_1263 = x_1287; -goto block_1271; -} -else -{ -lean_dec(x_1260); -lean_dec(x_1245); -lean_dec(x_1224); -lean_dec(x_1212); -x_1272 = x_1287; -goto block_1283; -} -} -else -{ -if (lean_obj_tag(x_1249) == 0) -{ -lean_object* x_1288; lean_object* x_1289; -lean_dec(x_1250); -lean_inc(x_1181); -x_1288 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1288, 0, x_1200); -lean_ctor_set(x_1288, 1, x_1181); -if (lean_is_scalar(x_1284)) { - x_1289 = lean_alloc_ctor(1, 1, 0); -} else { - x_1289 = x_1284; -} -lean_ctor_set(x_1289, 0, x_1288); -if (x_1262 == 0) -{ -lean_dec(x_1252); -lean_dec(x_1242); -x_1263 = x_1289; -goto block_1271; -} -else -{ -lean_dec(x_1260); -lean_dec(x_1245); -lean_dec(x_1224); -lean_dec(x_1212); -x_1272 = x_1289; -goto block_1283; -} -} -else -{ -lean_dec(x_1284); -if (lean_obj_tag(x_1250) == 0) -{ -lean_object* x_1290; lean_object* x_1291; lean_object* x_1292; -if (lean_is_exclusive(x_1249)) { - lean_ctor_release(x_1249, 0); - x_1290 = x_1249; -} else { - lean_dec_ref(x_1249); - x_1290 = lean_box(0); -} -lean_inc(x_1181); -x_1291 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1291, 0, x_1200); -lean_ctor_set(x_1291, 1, x_1181); -if (lean_is_scalar(x_1290)) { - x_1292 = lean_alloc_ctor(1, 1, 0); -} else { - x_1292 = x_1290; -} -lean_ctor_set(x_1292, 0, x_1291); -if (x_1262 == 0) -{ -lean_dec(x_1252); -lean_dec(x_1242); -x_1263 = x_1292; -goto block_1271; -} -else -{ -lean_dec(x_1260); -lean_dec(x_1245); -lean_dec(x_1224); -lean_dec(x_1212); -x_1272 = x_1292; -goto block_1283; -} -} -else -{ -lean_object* x_1293; lean_object* x_1294; lean_object* x_1295; lean_object* x_1296; lean_object* x_1297; lean_object* x_1298; lean_object* x_1299; lean_object* x_1300; -x_1293 = lean_ctor_get(x_1249, 0); -lean_inc(x_1293); -if (lean_is_exclusive(x_1249)) { - lean_ctor_release(x_1249, 0); - x_1294 = x_1249; -} else { - lean_dec_ref(x_1249); - x_1294 = lean_box(0); -} -x_1295 = lean_ctor_get(x_1250, 0); -lean_inc(x_1295); -if (lean_is_exclusive(x_1250)) { - lean_ctor_release(x_1250, 0); - x_1296 = x_1250; -} else { - lean_dec_ref(x_1250); - x_1296 = lean_box(0); -} -x_1297 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1297, 0, x_1293); -lean_ctor_set(x_1297, 1, x_1295); -if (lean_is_scalar(x_1296)) { - x_1298 = lean_alloc_ctor(1, 1, 0); -} else { - x_1298 = x_1296; -} -lean_ctor_set(x_1298, 0, x_1297); -lean_inc(x_1181); -x_1299 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1299, 0, x_1298); -lean_ctor_set(x_1299, 1, x_1181); -if (lean_is_scalar(x_1294)) { - x_1300 = lean_alloc_ctor(1, 1, 0); -} else { - x_1300 = x_1294; -} -lean_ctor_set(x_1300, 0, x_1299); -if (x_1262 == 0) -{ -lean_dec(x_1252); -lean_dec(x_1242); -x_1263 = x_1300; -goto block_1271; -} -else -{ -lean_dec(x_1260); -lean_dec(x_1245); -lean_dec(x_1224); -lean_dec(x_1212); -x_1272 = x_1300; -goto block_1283; -} -} -} -} -} -block_1271: -{ -lean_object* x_1264; lean_object* x_1265; lean_object* x_1266; lean_object* x_1267; lean_object* x_1268; lean_object* x_1269; lean_object* x_1270; -lean_inc(x_1167); -if (lean_is_scalar(x_1260)) { - x_1264 = lean_alloc_ctor(0, 2, 0); -} else { - x_1264 = x_1260; -} -lean_ctor_set(x_1264, 0, x_1200); -lean_ctor_set(x_1264, 1, x_1167); -if (lean_is_scalar(x_1224)) { - x_1265 = lean_alloc_ctor(1, 1, 0); -} else { - x_1265 = x_1224; -} -lean_ctor_set(x_1265, 0, x_1264); -lean_inc(x_15); -x_1266 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_1266, 0, x_15); -lean_ctor_set(x_1266, 1, x_1247); -lean_ctor_set(x_1266, 2, x_1263); -lean_ctor_set(x_1266, 3, x_1265); -if (lean_is_scalar(x_1245)) { - x_1267 = lean_alloc_ctor(0, 2, 0); -} else { - x_1267 = x_1245; -} -lean_ctor_set(x_1267, 0, x_1266); -lean_ctor_set(x_1267, 1, x_1248); -if (lean_is_scalar(x_1212)) { - x_1268 = lean_alloc_ctor(1, 1, 0); -} else { - x_1268 = x_1212; -} -lean_ctor_set(x_1268, 0, x_1267); -x_1269 = 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_1); -x_1270 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_1167, x_1181, x_1197, x_1198, x_1199, x_1170, x_1183, x_1196, x_1154, x_1268, x_1262, x_1269, x_6, x_7, x_8, x_9, x_10, x_11, x_1259); -x_25 = x_1270; -goto block_32; -} -block_1283: -{ -lean_object* x_1273; lean_object* x_1274; lean_object* x_1275; lean_object* x_1276; lean_object* x_1277; lean_object* x_1278; lean_object* x_1279; lean_object* x_1280; lean_object* x_1281; lean_object* x_1282; -x_1273 = lean_box(0); -if (lean_is_scalar(x_1242)) { - x_1274 = lean_alloc_ctor(0, 2, 0); -} else { - x_1274 = x_1242; -} -lean_ctor_set(x_1274, 0, x_1273); -lean_ctor_set(x_1274, 1, x_1252); -x_1275 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_1275, 0, x_1274); -lean_inc(x_1167); -x_1276 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1276, 0, x_1275); -lean_ctor_set(x_1276, 1, x_1167); -x_1277 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_1277, 0, x_1276); -lean_inc(x_15); -x_1278 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_1278, 0, x_15); -lean_ctor_set(x_1278, 1, x_1247); -lean_ctor_set(x_1278, 2, x_1272); -lean_ctor_set(x_1278, 3, x_1277); -x_1279 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1279, 0, x_1278); -lean_ctor_set(x_1279, 1, x_1248); -x_1280 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_1280, 0, x_1279); -x_1281 = 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_1); -x_1282 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1(x_1, x_15, x_1167, x_1181, x_1197, x_1198, x_1199, x_1170, x_1183, x_1196, x_1154, x_1280, x_1262, x_1281, x_6, x_7, x_8, x_9, x_10, x_11, x_1259); -x_25 = x_1282; -goto block_32; -} -} -} -} -} -} -} -} -} -block_24: -{ -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_18; lean_object* x_19; -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_18 = lean_ctor_get(x_16, 0); -lean_inc(x_18); -lean_dec(x_16); -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 -{ -lean_object* x_20; size_t x_21; size_t x_22; -x_20 = lean_ctor_get(x_16, 0); -lean_inc(x_20); -lean_dec(x_16); -x_21 = 1; -x_22 = lean_usize_add(x_4, x_21); -x_4 = x_22; -x_5 = x_20; -x_12 = x_17; -goto _start; -} -} -block_32: -{ -if (lean_obj_tag(x_25) == 0) -{ -lean_object* x_26; lean_object* x_27; -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_16 = x_26; -x_17 = x_27; -goto block_24; -} -else -{ -uint8_t x_28; -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_28 = !lean_is_exclusive(x_25); -if (x_28 == 0) +x_29 = !lean_is_exclusive(x_16); +if (x_29 == 0) { -return x_25; +return x_16; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_25, 0); -x_30 = lean_ctor_get(x_25, 1); +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_inc(x_29); -lean_dec(x_25); -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_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; } } } @@ -16221,114 +13947,31 @@ lean_dec(x_3); return x_10; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___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) { +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___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, 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_11; -x_11 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_3); +lean_object* x_17; +x_17 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_8); lean_dec(x_1); -return x_11; -} -} -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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]; -_start: -{ -lean_object* x_21; -x_21 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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, x_17, x_18, x_19, x_20); -lean_dec(x_13); -lean_dec(x_11); -return x_21; -} -} -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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]; -lean_object* x_19 = _args[18]; -_start: -{ -lean_object* x_20; -x_20 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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, x_17, x_18, x_19); -return x_20; -} -} -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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]; -_start: -{ -lean_object* x_20; -x_20 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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); -return x_20; +return x_17; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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_4); return x_12; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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, lean_object* x_16) { +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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, lean_object* x_15, lean_object* x_16) { _start: { lean_object* x_17; -x_17 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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, x_14, x_15, x_16); +x_17 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___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, x_14, x_15, x_16); lean_dec(x_13); return x_17; } @@ -16411,7 +14054,24 @@ lean_dec(x_10); return x_18; } } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__1___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___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_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___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); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___lambda__2___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -16433,14 +14093,17 @@ 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: { -uint8_t x_22; lean_object* x_23; -x_22 = lean_unbox(x_13); -lean_dec(x_13); -x_23 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___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_22, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21); -lean_dec(x_14); -return x_23; +uint8_t x_25; lean_object* x_26; +x_25 = lean_unbox(x_16); +lean_dec(x_16); +x_26 = l_Array_forInUnsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___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_forInUnsafe_loop___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_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { @@ -20612,1976 +18275,2660 @@ return x_71; } } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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) { _start: { -lean_object* x_10; -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_1); -lean_ctor_set(x_10, 1, x_9); -return x_10; -} -} -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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, 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; -x_15 = lean_ctor_get(x_1, 3); -x_16 = lean_array_get_size(x_15); -x_17 = lean_unsigned_to_nat(0u); -x_18 = lean_unsigned_to_nat(1u); -x_19 = lean_box(0); -lean_inc(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_14 = lean_ctor_get(x_1, 3); +x_15 = lean_array_get_size(x_14); +x_16 = lean_unsigned_to_nat(0u); +x_17 = lean_unsigned_to_nat(1u); +x_18 = lean_box(0); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -lean_inc(x_16); -x_20 = l_Std_Range_forIn_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__1(x_2, x_6, x_15, x_16, x_16, x_17, x_16, x_18, x_19, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -lean_dec(x_16); -if (lean_obj_tag(x_20) == 0) +lean_inc(x_7); +lean_inc(x_15); +x_19 = l_Std_Range_forIn_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__1(x_2, x_5, x_14, x_15, x_15, x_16, x_15, x_17, x_18, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_15); +if (lean_obj_tag(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; uint8_t 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; uint8_t x_34; uint8_t x_35; uint8_t x_36; uint8_t x_37; uint8_t x_38; lean_object* x_39; uint8_t x_40; uint8_t x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; lean_object* x_45; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_22, 0, x_7); -x_23 = lean_box(0); -x_24 = lean_ctor_get(x_8, 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; uint8_t x_26; uint8_t x_27; uint8_t x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; uint8_t x_34; uint8_t x_35; uint8_t x_36; uint8_t x_37; lean_object* x_38; uint8_t x_39; uint8_t x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; lean_object* x_44; +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +lean_dec(x_19); +x_21 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_21, 0, x_6); +x_22 = lean_box(0); +x_23 = lean_ctor_get(x_7, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_7, 1); lean_inc(x_24); -x_25 = lean_ctor_get(x_8, 1); +x_25 = lean_ctor_get(x_7, 2); lean_inc(x_25); -x_26 = lean_ctor_get(x_8, 2); -lean_inc(x_26); -x_27 = lean_ctor_get_uint8(x_8, sizeof(void*)*9); -x_28 = lean_ctor_get_uint8(x_8, sizeof(void*)*9 + 1); -x_29 = lean_ctor_get_uint8(x_8, sizeof(void*)*9 + 2); -x_30 = lean_ctor_get(x_8, 3); +x_26 = lean_ctor_get_uint8(x_7, sizeof(void*)*9); +x_27 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 1); +x_28 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 2); +x_29 = lean_ctor_get(x_7, 3); +lean_inc(x_29); +x_30 = lean_ctor_get(x_7, 4); lean_inc(x_30); -x_31 = lean_ctor_get(x_8, 4); +x_31 = lean_ctor_get(x_7, 5); lean_inc(x_31); -x_32 = lean_ctor_get(x_8, 5); +x_32 = lean_ctor_get(x_7, 6); lean_inc(x_32); -x_33 = lean_ctor_get(x_8, 6); -lean_inc(x_33); -x_34 = lean_ctor_get_uint8(x_8, sizeof(void*)*9 + 3); -x_35 = lean_ctor_get_uint8(x_8, sizeof(void*)*9 + 4); -x_36 = lean_ctor_get_uint8(x_8, sizeof(void*)*9 + 5); -x_37 = lean_ctor_get_uint8(x_8, sizeof(void*)*9 + 6); -x_38 = lean_ctor_get_uint8(x_8, sizeof(void*)*9 + 7); -x_39 = lean_ctor_get(x_8, 7); -lean_inc(x_39); -x_40 = lean_ctor_get_uint8(x_8, sizeof(void*)*9 + 8); -x_41 = lean_ctor_get_uint8(x_8, sizeof(void*)*9 + 9); -x_42 = lean_ctor_get(x_3, 2); -lean_inc(x_42); -x_43 = lean_alloc_ctor(0, 9, 10); -lean_ctor_set(x_43, 0, x_24); -lean_ctor_set(x_43, 1, x_25); -lean_ctor_set(x_43, 2, x_26); -lean_ctor_set(x_43, 3, x_30); -lean_ctor_set(x_43, 4, x_31); -lean_ctor_set(x_43, 5, x_32); -lean_ctor_set(x_43, 6, x_33); -lean_ctor_set(x_43, 7, x_39); -lean_ctor_set(x_43, 8, x_42); -lean_ctor_set_uint8(x_43, sizeof(void*)*9, x_27); -lean_ctor_set_uint8(x_43, sizeof(void*)*9 + 1, x_28); -lean_ctor_set_uint8(x_43, sizeof(void*)*9 + 2, x_29); -lean_ctor_set_uint8(x_43, sizeof(void*)*9 + 3, x_34); -lean_ctor_set_uint8(x_43, sizeof(void*)*9 + 4, x_35); -lean_ctor_set_uint8(x_43, sizeof(void*)*9 + 5, x_36); -lean_ctor_set_uint8(x_43, sizeof(void*)*9 + 6, x_37); -lean_ctor_set_uint8(x_43, sizeof(void*)*9 + 7, x_38); -lean_ctor_set_uint8(x_43, sizeof(void*)*9 + 8, x_40); -lean_ctor_set_uint8(x_43, sizeof(void*)*9 + 9, x_41); -x_44 = 1; -lean_inc(x_13); +x_33 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 3); +x_34 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 4); +x_35 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 5); +x_36 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 6); +x_37 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 7); +x_38 = lean_ctor_get(x_7, 7); +lean_inc(x_38); +x_39 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 8); +x_40 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 9); +x_41 = lean_ctor_get(x_3, 2); +lean_inc(x_41); +x_42 = lean_alloc_ctor(0, 9, 10); +lean_ctor_set(x_42, 0, x_23); +lean_ctor_set(x_42, 1, x_24); +lean_ctor_set(x_42, 2, x_25); +lean_ctor_set(x_42, 3, x_29); +lean_ctor_set(x_42, 4, x_30); +lean_ctor_set(x_42, 5, x_31); +lean_ctor_set(x_42, 6, x_32); +lean_ctor_set(x_42, 7, x_38); +lean_ctor_set(x_42, 8, x_41); +lean_ctor_set_uint8(x_42, sizeof(void*)*9, x_26); +lean_ctor_set_uint8(x_42, sizeof(void*)*9 + 1, x_27); +lean_ctor_set_uint8(x_42, sizeof(void*)*9 + 2, x_28); +lean_ctor_set_uint8(x_42, sizeof(void*)*9 + 3, x_33); +lean_ctor_set_uint8(x_42, sizeof(void*)*9 + 4, x_34); +lean_ctor_set_uint8(x_42, sizeof(void*)*9 + 5, x_35); +lean_ctor_set_uint8(x_42, sizeof(void*)*9 + 6, x_36); +lean_ctor_set_uint8(x_42, sizeof(void*)*9 + 7, x_37); +lean_ctor_set_uint8(x_42, sizeof(void*)*9 + 8, x_39); +lean_ctor_set_uint8(x_42, sizeof(void*)*9 + 9, x_40); +x_43 = 1; lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); -lean_inc(x_43); -x_45 = l_Lean_Elab_Term_elabTermEnsuringType(x_4, x_22, x_44, x_44, x_23, x_43, x_9, x_10, x_11, x_12, x_13, x_21); -if (lean_obj_tag(x_45) == 0) +lean_inc(x_8); +lean_inc(x_42); +x_44 = l_Lean_Elab_Term_elabTermEnsuringType(x_4, x_21, x_43, x_43, x_22, x_42, x_8, x_9, x_10, x_11, x_12, x_20); +if (lean_obj_tag(x_44) == 0) { -lean_object* x_46; lean_object* x_47; uint8_t x_48; uint8_t x_49; lean_object* x_50; -x_46 = lean_ctor_get(x_45, 0); +lean_object* x_45; lean_object* x_46; uint8_t x_47; uint8_t x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_44, 0); +lean_inc(x_45); +x_46 = lean_ctor_get(x_44, 1); lean_inc(x_46); -x_47 = lean_ctor_get(x_45, 1); -lean_inc(x_47); -lean_dec(x_45); -x_48 = 1; -x_49 = 0; -lean_inc(x_13); +lean_dec(x_44); +x_47 = 1; +x_48 = 0; lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); -x_50 = l_Lean_Elab_Term_synthesizeSyntheticMVars(x_48, x_49, x_43, x_9, x_10, x_11, x_12, x_13, x_47); -if (lean_obj_tag(x_50) == 0) +lean_inc(x_8); +x_49 = l_Lean_Elab_Term_synthesizeSyntheticMVars(x_47, x_48, x_42, x_8, x_9, x_10, x_11, x_12, x_46); +if (lean_obj_tag(x_49) == 0) { -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; uint8_t x_55; lean_object* x_56; -x_51 = lean_ctor_get(x_50, 1); -lean_inc(x_51); -lean_dec(x_50); -x_52 = l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_46, x_8, x_9, x_10, x_11, x_12, x_13, x_51); +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_50 = lean_ctor_get(x_49, 1); +lean_inc(x_50); +lean_dec(x_49); +x_51 = l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_45, x_7, x_8, x_9, x_10, x_11, x_12, x_50); lean_dec(x_8); -x_53 = lean_ctor_get(x_52, 0); +lean_dec(x_7); +x_52 = lean_ctor_get(x_51, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_51, 1); lean_inc(x_53); -x_54 = lean_ctor_get(x_52, 1); -lean_inc(x_54); -lean_dec(x_52); -x_55 = 1; -x_56 = l_Lean_Meta_mkLambdaFVars(x_6, x_53, x_49, x_44, x_55, x_10, x_11, x_12, x_13, x_54); +lean_dec(x_51); +x_54 = 1; +x_55 = l_Lean_Meta_mkLambdaFVars(x_5, x_52, x_48, x_43, x_54, x_9, x_10, x_11, x_12, x_53); lean_dec(x_12); +lean_dec(x_11); lean_dec(x_10); -if (lean_obj_tag(x_56) == 0) +lean_dec(x_9); +return x_55; +} +else { -lean_object* x_57; -x_57 = lean_ctor_get(x_3, 3); +uint8_t x_56; +lean_dec(x_45); +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); +x_56 = !lean_is_exclusive(x_49); +if (x_56 == 0) +{ +return x_49; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_57 = lean_ctor_get(x_49, 0); +x_58 = lean_ctor_get(x_49, 1); +lean_inc(x_58); lean_inc(x_57); -lean_dec(x_3); -if (lean_obj_tag(x_57) == 0) +lean_dec(x_49); +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_58; -lean_dec(x_13); +uint8_t x_60; +lean_dec(x_42); +lean_dec(x_12); lean_dec(x_11); +lean_dec(x_10); lean_dec(x_9); -x_58 = !lean_is_exclusive(x_56); -if (x_58 == 0) +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +x_60 = !lean_is_exclusive(x_44); +if (x_60 == 0) { -return x_56; +return x_44; } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_59 = lean_ctor_get(x_56, 0); -x_60 = lean_ctor_get(x_56, 1); -lean_inc(x_60); -lean_inc(x_59); -lean_dec(x_56); -x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_59); -lean_ctor_set(x_61, 1, x_60); -return x_61; +lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_61 = lean_ctor_get(x_44, 0); +x_62 = lean_ctor_get(x_44, 1); +lean_inc(x_62); +lean_inc(x_61); +lean_dec(x_44); +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_62; lean_object* x_63; uint8_t x_64; -x_62 = lean_ctor_get(x_56, 0); -lean_inc(x_62); -x_63 = lean_ctor_get(x_56, 1); -lean_inc(x_63); -lean_dec(x_56); -x_64 = !lean_is_exclusive(x_57); +uint8_t x_64; +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); +x_64 = !lean_is_exclusive(x_19); 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; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; uint8_t x_76; -x_65 = lean_ctor_get(x_57, 0); -x_66 = l_Lean_Core_getAndEmptyMessageLog___rarg(x_13, x_63); -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_Language_Snapshot_Diagnostics_ofMessageLog(x_67, 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_69); -x_72 = lean_st_ref_get(x_13, x_71); +return x_19; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_19, 0); +x_66 = lean_ctor_get(x_19, 1); +lean_inc(x_66); +lean_inc(x_65); +lean_dec(x_19); +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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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) { +_start: +{ +lean_object* x_11; +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_11 = l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__9(x_1, 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; 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_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_ctor_get(x_2, 5); +lean_inc(x_14); +x_15 = lean_ctor_get(x_2, 4); +lean_inc(x_15); +lean_inc(x_15); +x_16 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_16, 0, x_15); +x_17 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__1___boxed), 13, 4); +lean_closure_set(x_17, 0, x_2); +lean_closure_set(x_17, 1, x_15); +lean_closure_set(x_17, 2, x_3); +lean_closure_set(x_17, 3, x_12); +x_18 = 0; +x_19 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_addAutoBoundImplicits_x27___spec__2___rarg(x_14, x_16, x_17, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_13); +return x_19; +} +else +{ +uint8_t 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_20 = !lean_is_exclusive(x_11); +if (x_20 == 0) +{ +return x_11; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_11, 0); +x_22 = lean_ctor_get(x_11, 1); +lean_inc(x_22); +lean_inc(x_21); +lean_dec(x_11); +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_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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; uint8_t x_12; +x_11 = lean_io_get_num_heartbeats(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; +x_13 = lean_ctor_get(x_11, 0); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_9); +x_15 = l_Lean_Elab_Term_withDeclName___rarg(x_1, x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_14); +if (lean_obj_tag(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_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_st_ref_get(x_9, x_17); +lean_dec(x_9); +x_19 = !lean_is_exclusive(x_18); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_18, 1); +x_21 = lean_io_get_num_heartbeats(x_20); +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); +x_24 = lean_nat_sub(x_23, x_13); lean_dec(x_13); -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_io_get_num_heartbeats(x_74); -x_76 = !lean_is_exclusive(x_75); -if (x_76 == 0) +lean_dec(x_23); +lean_ctor_set(x_18, 1, x_24); +lean_ctor_set(x_11, 1, x_18); +lean_ctor_set(x_11, 0, x_16); +lean_ctor_set(x_21, 0, x_11); +return x_21; +} +else { -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; uint8_t x_81; -x_77 = lean_ctor_get(x_75, 0); -x_78 = lean_ctor_get(x_75, 1); -x_79 = lean_nat_sub(x_77, x_5); -lean_dec(x_77); -lean_ctor_set(x_75, 1, x_79); -lean_ctor_set(x_75, 0, x_73); -x_80 = lean_st_ref_get(x_11, x_78); +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = lean_ctor_get(x_21, 0); +x_26 = lean_ctor_get(x_21, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_21); +x_27 = lean_nat_sub(x_25, x_13); +lean_dec(x_13); +lean_dec(x_25); +lean_ctor_set(x_18, 1, x_27); +lean_ctor_set(x_11, 1, x_18); +lean_ctor_set(x_11, 0, x_16); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_11); +lean_ctor_set(x_28, 1, 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; +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_io_get_num_heartbeats(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); +if (lean_is_exclusive(x_31)) { + lean_ctor_release(x_31, 0); + lean_ctor_release(x_31, 1); + x_34 = x_31; +} else { + lean_dec_ref(x_31); + x_34 = lean_box(0); +} +x_35 = lean_nat_sub(x_32, x_13); +lean_dec(x_13); +lean_dec(x_32); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_29); +lean_ctor_set(x_36, 1, x_35); +lean_ctor_set(x_11, 1, x_36); +lean_ctor_set(x_11, 0, x_16); +if (lean_is_scalar(x_34)) { + x_37 = lean_alloc_ctor(0, 2, 0); +} else { + x_37 = x_34; +} +lean_ctor_set(x_37, 0, x_11); +lean_ctor_set(x_37, 1, x_33); +return x_37; +} +} +else +{ +uint8_t x_38; +lean_free_object(x_11); +lean_dec(x_13); +lean_dec(x_9); +x_38 = !lean_is_exclusive(x_15); +if (x_38 == 0) +{ +return x_15; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_15, 0); +x_40 = lean_ctor_get(x_15, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_15); +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_object* x_44; +x_42 = lean_ctor_get(x_11, 0); +x_43 = lean_ctor_get(x_11, 1); +lean_inc(x_43); +lean_inc(x_42); lean_dec(x_11); -x_81 = !lean_is_exclusive(x_80); -if (x_81 == 0) +lean_inc(x_9); +x_44 = l_Lean_Elab_Term_withDeclName___rarg(x_1, x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_43); +if (lean_obj_tag(x_44) == 0) { -lean_object* x_82; lean_object* x_83; lean_object* x_84; uint8_t x_85; -x_82 = lean_ctor_get(x_80, 0); -x_83 = lean_ctor_get(x_80, 1); -lean_ctor_set(x_80, 1, x_82); -lean_ctor_set(x_80, 0, x_75); -x_84 = lean_st_ref_get(x_9, x_83); +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_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_st_ref_get(x_9, x_46); lean_dec(x_9); -x_85 = !lean_is_exclusive(x_84); -if (x_85 == 0) +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_io_get_num_heartbeats(x_49); +x_52 = lean_ctor_get(x_51, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_51, 1); +lean_inc(x_53); +if (lean_is_exclusive(x_51)) { + lean_ctor_release(x_51, 0); + lean_ctor_release(x_51, 1); + x_54 = x_51; +} else { + lean_dec_ref(x_51); + x_54 = lean_box(0); +} +x_55 = lean_nat_sub(x_52, x_42); +lean_dec(x_42); +lean_dec(x_52); +if (lean_is_scalar(x_50)) { + x_56 = lean_alloc_ctor(0, 2, 0); +} else { + x_56 = x_50; +} +lean_ctor_set(x_56, 0, x_48); +lean_ctor_set(x_56, 1, x_55); +x_57 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_57, 0, x_45); +lean_ctor_set(x_57, 1, x_56); +if (lean_is_scalar(x_54)) { + x_58 = lean_alloc_ctor(0, 2, 0); +} else { + x_58 = x_54; +} +lean_ctor_set(x_58, 0, x_57); +lean_ctor_set(x_58, 1, x_53); +return x_58; +} +else { -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; uint8_t x_92; -x_86 = lean_ctor_get(x_84, 0); -x_87 = lean_ctor_get(x_84, 1); -lean_ctor_set(x_84, 1, x_86); -lean_ctor_set(x_84, 0, x_80); -x_88 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_88, 0, x_70); -lean_ctor_set(x_88, 1, x_23); -lean_ctor_set_uint8(x_88, sizeof(void*)*2, x_49); -lean_inc(x_62); -x_89 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_89, 0, x_88); -lean_ctor_set(x_89, 1, x_84); -lean_ctor_set(x_89, 2, x_62); -lean_ctor_set(x_57, 0, x_89); -x_90 = lean_ctor_get(x_65, 1); -lean_inc(x_90); -lean_dec(x_65); -x_91 = lean_io_promise_resolve(x_57, x_90, x_87); -lean_dec(x_90); -x_92 = !lean_is_exclusive(x_91); -if (x_92 == 0) +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_42); +lean_dec(x_9); +x_59 = lean_ctor_get(x_44, 0); +lean_inc(x_59); +x_60 = lean_ctor_get(x_44, 1); +lean_inc(x_60); +if (lean_is_exclusive(x_44)) { + lean_ctor_release(x_44, 0); + lean_ctor_release(x_44, 1); + x_61 = x_44; +} else { + lean_dec_ref(x_44); + 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; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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: { -lean_object* x_93; -x_93 = lean_ctor_get(x_91, 0); -lean_dec(x_93); -lean_ctor_set(x_91, 0, x_62); -return x_91; +if (lean_obj_tag(x_8) == 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_2, 1); +lean_inc(x_12); +x_13 = lean_ctor_get(x_2, 2); +lean_inc(x_13); +x_14 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__2), 10, 3); +lean_closure_set(x_14, 0, x_3); +lean_closure_set(x_14, 1, x_2); +lean_closure_set(x_14, 2, x_1); +x_15 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withLevelNames___rarg), 9, 2); +lean_closure_set(x_15, 0, x_13); +lean_closure_set(x_15, 1, x_14); +x_16 = lean_box(0); +x_17 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__3(x_12, x_15, x_4, x_5, x_6, x_7, x_16, x_9, x_10, x_11); +return x_17; +} +else +{ +lean_object* x_18; uint8_t 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_ctor_get(x_8, 0); +lean_inc(x_18); +lean_dec(x_8); +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; uint64_t x_25; lean_object* x_26; uint8_t x_27; +x_20 = lean_ctor_get(x_18, 1); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_st_ref_set(x_10, x_21, x_11); +lean_dec(x_10); +x_23 = lean_ctor_get(x_22, 1); +lean_inc(x_23); +lean_dec(x_22); +x_24 = lean_ctor_get(x_20, 1); +lean_inc(x_24); +x_25 = lean_uint64_of_nat(x_24); +lean_dec(x_24); +x_26 = lean_io_add_heartbeats(x_25, x_23); +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_18); +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_18); +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; uint64_t 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_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_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_st_ref_set(x_10, x_33, x_11); +lean_dec(x_10); +x_35 = lean_ctor_get(x_34, 1); +lean_inc(x_35); +lean_dec(x_34); +x_36 = lean_ctor_get(x_32, 1); +lean_inc(x_36); +x_37 = lean_uint64_of_nat(x_36); +lean_dec(x_36); +x_38 = lean_io_add_heartbeats(x_37, x_35); +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); +} +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_31); +lean_ctor_set(x_41, 1, x_32); +if (lean_is_scalar(x_40)) { + x_42 = lean_alloc_ctor(0, 2, 0); +} else { + x_42 = x_40; +} +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_39); +return x_42; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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: +{ +if (lean_obj_tag(x_8) == 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_2, 1); +lean_inc(x_12); +x_13 = lean_ctor_get(x_2, 2); +lean_inc(x_13); +x_14 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__2), 10, 3); +lean_closure_set(x_14, 0, x_3); +lean_closure_set(x_14, 1, x_2); +lean_closure_set(x_14, 2, x_1); +x_15 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withLevelNames___rarg), 9, 2); +lean_closure_set(x_15, 0, x_13); +lean_closure_set(x_15, 1, x_14); +x_16 = lean_box(0); +x_17 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__3(x_12, x_15, x_4, x_5, x_6, x_7, x_16, x_9, x_10, x_11); +return x_17; +} +else +{ +lean_object* x_18; uint8_t 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_ctor_get(x_8, 0); +lean_inc(x_18); +lean_dec(x_8); +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; uint64_t x_25; lean_object* x_26; uint8_t x_27; +x_20 = lean_ctor_get(x_18, 1); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_st_ref_set(x_10, x_21, x_11); +lean_dec(x_10); +x_23 = lean_ctor_get(x_22, 1); +lean_inc(x_23); +lean_dec(x_22); +x_24 = lean_ctor_get(x_20, 1); +lean_inc(x_24); +x_25 = lean_uint64_of_nat(x_24); +lean_dec(x_24); +x_26 = lean_io_add_heartbeats(x_25, x_23); +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_18); +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_18); +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; uint64_t 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_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_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_st_ref_set(x_10, x_33, x_11); +lean_dec(x_10); +x_35 = lean_ctor_get(x_34, 1); +lean_inc(x_35); +lean_dec(x_34); +x_36 = lean_ctor_get(x_32, 1); +lean_inc(x_36); +x_37 = lean_uint64_of_nat(x_36); +lean_dec(x_36); +x_38 = lean_io_add_heartbeats(x_37, x_35); +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); +} +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_31); +lean_ctor_set(x_41, 1, x_32); +if (lean_is_scalar(x_40)) { + x_42 = lean_alloc_ctor(0, 2, 0); +} else { + x_42 = x_40; +} +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_39); +return x_42; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_box(0); +lean_inc(x_9); +x_14 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_13, x_10, x_11, x_12); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; uint8_t 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 = !lean_is_exclusive(x_15); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_15, 1); +x_19 = lean_st_ref_get(x_9, x_16); +lean_dec(x_9); +x_20 = !lean_is_exclusive(x_19); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_ctor_get(x_19, 0); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_18); +lean_ctor_set(x_22, 1, x_21); +lean_ctor_set(x_15, 1, x_22); +lean_ctor_set(x_19, 0, x_15); +return x_19; +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = lean_ctor_get(x_19, 0); +x_24 = lean_ctor_get(x_19, 1); +lean_inc(x_24); +lean_inc(x_23); +lean_dec(x_19); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_18); +lean_ctor_set(x_25, 1, x_23); +lean_ctor_set(x_15, 1, x_25); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_15); +lean_ctor_set(x_26, 1, 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; +x_27 = lean_ctor_get(x_15, 0); +x_28 = lean_ctor_get(x_15, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_15); +x_29 = lean_st_ref_get(x_9, x_16); +lean_dec(x_9); +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(0, 2, 0); +lean_ctor_set(x_33, 0, x_28); +lean_ctor_set(x_33, 1, x_30); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_27); +lean_ctor_set(x_34, 1, x_33); +if (lean_is_scalar(x_32)) { + x_35 = lean_alloc_ctor(0, 2, 0); +} else { + x_35 = x_32; +} +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_31); +return x_35; +} +} +else +{ +uint8_t x_36; +lean_dec(x_9); +x_36 = !lean_is_exclusive(x_14); +if (x_36 == 0) +{ +return x_14; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_14, 0); +x_38 = lean_ctor_get(x_14, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_14); +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; +x_40 = !lean_is_exclusive(x_1); +if (x_40 == 0) +{ +lean_object* x_41; uint8_t x_42; +x_41 = lean_ctor_get(x_1, 0); +x_42 = !lean_is_exclusive(x_41); +if (x_42 == 0) +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_43 = lean_ctor_get(x_41, 1); +x_44 = lean_ctor_get(x_43, 0); +lean_inc(x_44); +lean_dec(x_43); +lean_ctor_set(x_41, 1, x_44); +lean_inc(x_9); +x_45 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__5(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_1, x_10, x_11, x_12); +if (lean_obj_tag(x_45) == 0) +{ +lean_object* x_46; lean_object* x_47; uint8_t x_48; +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 = !lean_is_exclusive(x_46); +if (x_48 == 0) +{ +lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_49 = lean_ctor_get(x_46, 1); +x_50 = lean_st_ref_get(x_9, x_47); +lean_dec(x_9); +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, 2, 0); +lean_ctor_set(x_53, 0, x_49); +lean_ctor_set(x_53, 1, x_52); +lean_ctor_set(x_46, 1, x_53); +lean_ctor_set(x_50, 0, x_46); +return x_50; } else { -lean_object* x_94; lean_object* x_95; -x_94 = lean_ctor_get(x_91, 1); -lean_inc(x_94); -lean_dec(x_91); -x_95 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_95, 0, x_62); -lean_ctor_set(x_95, 1, x_94); -return x_95; +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, 2, 0); +lean_ctor_set(x_56, 0, x_49); +lean_ctor_set(x_56, 1, x_54); +lean_ctor_set(x_46, 1, x_56); +x_57 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_57, 0, x_46); +lean_ctor_set(x_57, 1, x_55); +return x_57; } } else { -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_96 = lean_ctor_get(x_84, 0); -x_97 = lean_ctor_get(x_84, 1); -lean_inc(x_97); -lean_inc(x_96); -lean_dec(x_84); -x_98 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_98, 0, x_80); -lean_ctor_set(x_98, 1, x_96); -x_99 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_99, 0, x_70); -lean_ctor_set(x_99, 1, x_23); -lean_ctor_set_uint8(x_99, sizeof(void*)*2, x_49); +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_58 = lean_ctor_get(x_46, 0); +x_59 = lean_ctor_get(x_46, 1); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_46); +x_60 = lean_st_ref_get(x_9, x_47); +lean_dec(x_9); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_ctor_get(x_60, 1); lean_inc(x_62); -x_100 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_100, 0, x_99); -lean_ctor_set(x_100, 1, x_98); -lean_ctor_set(x_100, 2, x_62); -lean_ctor_set(x_57, 0, x_100); -x_101 = lean_ctor_get(x_65, 1); -lean_inc(x_101); -lean_dec(x_65); -x_102 = lean_io_promise_resolve(x_57, x_101, x_97); -lean_dec(x_101); -x_103 = lean_ctor_get(x_102, 1); -lean_inc(x_103); -if (lean_is_exclusive(x_102)) { - lean_ctor_release(x_102, 0); - lean_ctor_release(x_102, 1); - x_104 = x_102; +if (lean_is_exclusive(x_60)) { + lean_ctor_release(x_60, 0); + lean_ctor_release(x_60, 1); + x_63 = x_60; } else { - lean_dec_ref(x_102); - x_104 = lean_box(0); + lean_dec_ref(x_60); + x_63 = lean_box(0); } -if (lean_is_scalar(x_104)) { - x_105 = lean_alloc_ctor(0, 2, 0); +x_64 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_64, 0, x_59); +lean_ctor_set(x_64, 1, x_61); +x_65 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_65, 0, x_58); +lean_ctor_set(x_65, 1, x_64); +if (lean_is_scalar(x_63)) { + x_66 = lean_alloc_ctor(0, 2, 0); } else { - x_105 = x_104; + x_66 = x_63; } -lean_ctor_set(x_105, 0, x_62); -lean_ctor_set(x_105, 1, x_103); -return x_105; +lean_ctor_set(x_66, 0, x_65); +lean_ctor_set(x_66, 1, x_62); +return x_66; } } 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_80, 0); -x_107 = lean_ctor_get(x_80, 1); -lean_inc(x_107); -lean_inc(x_106); -lean_dec(x_80); -x_108 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_108, 0, x_75); -lean_ctor_set(x_108, 1, x_106); -x_109 = lean_st_ref_get(x_9, x_107); +uint8_t x_67; lean_dec(x_9); -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); -} -if (lean_is_scalar(x_112)) { - x_113 = lean_alloc_ctor(0, 2, 0); -} else { - x_113 = x_112; -} -lean_ctor_set(x_113, 0, x_108); -lean_ctor_set(x_113, 1, x_110); -x_114 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_114, 0, x_70); -lean_ctor_set(x_114, 1, x_23); -lean_ctor_set_uint8(x_114, sizeof(void*)*2, x_49); -lean_inc(x_62); -x_115 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_115, 0, x_114); -lean_ctor_set(x_115, 1, x_113); -lean_ctor_set(x_115, 2, x_62); -lean_ctor_set(x_57, 0, x_115); -x_116 = lean_ctor_get(x_65, 1); -lean_inc(x_116); -lean_dec(x_65); -x_117 = lean_io_promise_resolve(x_57, x_116, x_111); -lean_dec(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); +x_67 = !lean_is_exclusive(x_45); +if (x_67 == 0) +{ +return x_45; } -if (lean_is_scalar(x_119)) { - x_120 = lean_alloc_ctor(0, 2, 0); -} else { - x_120 = x_119; +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_68 = lean_ctor_get(x_45, 0); +x_69 = lean_ctor_get(x_45, 1); +lean_inc(x_69); +lean_inc(x_68); +lean_dec(x_45); +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; } -lean_ctor_set(x_120, 0, x_62); -lean_ctor_set(x_120, 1, x_118); -return x_120; } } else { -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; -x_121 = lean_ctor_get(x_75, 0); -x_122 = lean_ctor_get(x_75, 1); -lean_inc(x_122); -lean_inc(x_121); +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_41, 0); +x_72 = lean_ctor_get(x_41, 1); +lean_inc(x_72); +lean_inc(x_71); +lean_dec(x_41); +x_73 = lean_ctor_get(x_72, 0); +lean_inc(x_73); +lean_dec(x_72); +x_74 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_74, 0, x_71); +lean_ctor_set(x_74, 1, x_73); +lean_ctor_set(x_1, 0, x_74); +lean_inc(x_9); +x_75 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__5(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_1, x_10, x_11, x_12); +if (lean_obj_tag(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; lean_object* x_86; lean_object* x_87; +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_123 = lean_nat_sub(x_121, x_5); -lean_dec(x_121); -x_124 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_124, 0, x_73); -lean_ctor_set(x_124, 1, x_123); -x_125 = lean_st_ref_get(x_11, x_122); -lean_dec(x_11); -x_126 = lean_ctor_get(x_125, 0); -lean_inc(x_126); -x_127 = lean_ctor_get(x_125, 1); -lean_inc(x_127); -if (lean_is_exclusive(x_125)) { - lean_ctor_release(x_125, 0); - lean_ctor_release(x_125, 1); - x_128 = x_125; +x_78 = lean_ctor_get(x_76, 0); +lean_inc(x_78); +x_79 = lean_ctor_get(x_76, 1); +lean_inc(x_79); +if (lean_is_exclusive(x_76)) { + lean_ctor_release(x_76, 0); + lean_ctor_release(x_76, 1); + x_80 = x_76; } else { - lean_dec_ref(x_125); - x_128 = lean_box(0); + lean_dec_ref(x_76); + x_80 = lean_box(0); } -if (lean_is_scalar(x_128)) { - x_129 = lean_alloc_ctor(0, 2, 0); +x_81 = lean_st_ref_get(x_9, x_77); +lean_dec(x_9); +x_82 = lean_ctor_get(x_81, 0); +lean_inc(x_82); +x_83 = lean_ctor_get(x_81, 1); +lean_inc(x_83); +if (lean_is_exclusive(x_81)) { + lean_ctor_release(x_81, 0); + lean_ctor_release(x_81, 1); + x_84 = x_81; } else { - x_129 = x_128; + lean_dec_ref(x_81); + x_84 = lean_box(0); } -lean_ctor_set(x_129, 0, x_124); -lean_ctor_set(x_129, 1, x_126); -x_130 = lean_st_ref_get(x_9, x_127); -lean_dec(x_9); -x_131 = lean_ctor_get(x_130, 0); -lean_inc(x_131); -x_132 = lean_ctor_get(x_130, 1); -lean_inc(x_132); -if (lean_is_exclusive(x_130)) { - lean_ctor_release(x_130, 0); - lean_ctor_release(x_130, 1); - x_133 = x_130; +x_85 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_85, 0, x_79); +lean_ctor_set(x_85, 1, x_82); +if (lean_is_scalar(x_80)) { + x_86 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_130); - x_133 = lean_box(0); + x_86 = x_80; } -if (lean_is_scalar(x_133)) { - x_134 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_86, 0, x_78); +lean_ctor_set(x_86, 1, x_85); +if (lean_is_scalar(x_84)) { + x_87 = lean_alloc_ctor(0, 2, 0); } else { - x_134 = x_133; + x_87 = x_84; } -lean_ctor_set(x_134, 0, x_129); -lean_ctor_set(x_134, 1, x_131); -x_135 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_135, 0, x_70); -lean_ctor_set(x_135, 1, x_23); -lean_ctor_set_uint8(x_135, sizeof(void*)*2, x_49); -lean_inc(x_62); -x_136 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_136, 0, x_135); -lean_ctor_set(x_136, 1, x_134); -lean_ctor_set(x_136, 2, x_62); -lean_ctor_set(x_57, 0, x_136); -x_137 = lean_ctor_get(x_65, 1); -lean_inc(x_137); -lean_dec(x_65); -x_138 = lean_io_promise_resolve(x_57, x_137, x_132); -lean_dec(x_137); -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; +lean_ctor_set(x_87, 0, x_86); +lean_ctor_set(x_87, 1, x_83); +return x_87; +} +else +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_9); +x_88 = lean_ctor_get(x_75, 0); +lean_inc(x_88); +x_89 = lean_ctor_get(x_75, 1); +lean_inc(x_89); +if (lean_is_exclusive(x_75)) { + lean_ctor_release(x_75, 0); + lean_ctor_release(x_75, 1); + x_90 = x_75; } else { - lean_dec_ref(x_138); - x_140 = lean_box(0); + lean_dec_ref(x_75); + x_90 = lean_box(0); } -if (lean_is_scalar(x_140)) { - x_141 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_90)) { + x_91 = lean_alloc_ctor(1, 2, 0); } else { - x_141 = x_140; + x_91 = x_90; +} +lean_ctor_set(x_91, 0, x_88); +lean_ctor_set(x_91, 1, x_89); +return x_91; } -lean_ctor_set(x_141, 0, x_62); -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; 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; -x_142 = lean_ctor_get(x_57, 0); -lean_inc(x_142); -lean_dec(x_57); -x_143 = l_Lean_Core_getAndEmptyMessageLog___rarg(x_13, x_63); -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_Lean_Language_Snapshot_Diagnostics_ofMessageLog(x_144, x_145); -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_149 = lean_st_ref_get(x_13, x_148); -lean_dec(x_13); -x_150 = lean_ctor_get(x_149, 0); -lean_inc(x_150); -x_151 = lean_ctor_get(x_149, 1); -lean_inc(x_151); -lean_dec(x_149); -x_152 = lean_io_get_num_heartbeats(x_151); -x_153 = lean_ctor_get(x_152, 0); -lean_inc(x_153); -x_154 = lean_ctor_get(x_152, 1); -lean_inc(x_154); -if (lean_is_exclusive(x_152)) { - lean_ctor_release(x_152, 0); - lean_ctor_release(x_152, 1); - x_155 = x_152; -} else { - lean_dec_ref(x_152); - x_155 = lean_box(0); -} -x_156 = lean_nat_sub(x_153, x_5); -lean_dec(x_153); -if (lean_is_scalar(x_155)) { - x_157 = lean_alloc_ctor(0, 2, 0); +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; +x_92 = lean_ctor_get(x_1, 0); +lean_inc(x_92); +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); +if (lean_is_exclusive(x_92)) { + lean_ctor_release(x_92, 0); + lean_ctor_release(x_92, 1); + x_95 = x_92; } else { - x_157 = x_155; + lean_dec_ref(x_92); + x_95 = lean_box(0); } -lean_ctor_set(x_157, 0, x_150); -lean_ctor_set(x_157, 1, x_156); -x_158 = lean_st_ref_get(x_11, x_154); -lean_dec(x_11); -x_159 = lean_ctor_get(x_158, 0); -lean_inc(x_159); -x_160 = lean_ctor_get(x_158, 1); -lean_inc(x_160); -if (lean_is_exclusive(x_158)) { - lean_ctor_release(x_158, 0); - lean_ctor_release(x_158, 1); - x_161 = x_158; +x_96 = lean_ctor_get(x_94, 0); +lean_inc(x_96); +lean_dec(x_94); +if (lean_is_scalar(x_95)) { + x_97 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_158); - x_161 = lean_box(0); + x_97 = x_95; } -if (lean_is_scalar(x_161)) { - x_162 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_97, 0, x_93); +lean_ctor_set(x_97, 1, x_96); +x_98 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_98, 0, x_97); +lean_inc(x_9); +x_99 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__5(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_98, x_10, x_11, x_12); +if (lean_obj_tag(x_99) == 0) +{ +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; +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); +x_102 = lean_ctor_get(x_100, 0); +lean_inc(x_102); +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 { - x_162 = x_161; + lean_dec_ref(x_100); + x_104 = lean_box(0); } -lean_ctor_set(x_162, 0, x_157); -lean_ctor_set(x_162, 1, x_159); -x_163 = lean_st_ref_get(x_9, x_160); +x_105 = lean_st_ref_get(x_9, x_101); lean_dec(x_9); -x_164 = lean_ctor_get(x_163, 0); -lean_inc(x_164); -x_165 = lean_ctor_get(x_163, 1); -lean_inc(x_165); -if (lean_is_exclusive(x_163)) { - lean_ctor_release(x_163, 0); - lean_ctor_release(x_163, 1); - x_166 = x_163; -} else { - lean_dec_ref(x_163); - x_166 = lean_box(0); -} -if (lean_is_scalar(x_166)) { - x_167 = lean_alloc_ctor(0, 2, 0); +x_106 = lean_ctor_get(x_105, 0); +lean_inc(x_106); +x_107 = lean_ctor_get(x_105, 1); +lean_inc(x_107); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + x_108 = x_105; } else { - x_167 = x_166; + lean_dec_ref(x_105); + x_108 = lean_box(0); } -lean_ctor_set(x_167, 0, x_162); -lean_ctor_set(x_167, 1, x_164); -x_168 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_168, 0, x_147); -lean_ctor_set(x_168, 1, x_23); -lean_ctor_set_uint8(x_168, sizeof(void*)*2, x_49); -lean_inc(x_62); -x_169 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_169, 0, x_168); -lean_ctor_set(x_169, 1, x_167); -lean_ctor_set(x_169, 2, x_62); -x_170 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_170, 0, x_169); -x_171 = lean_ctor_get(x_142, 1); -lean_inc(x_171); -lean_dec(x_142); -x_172 = lean_io_promise_resolve(x_170, x_171, x_165); -lean_dec(x_171); -x_173 = lean_ctor_get(x_172, 1); -lean_inc(x_173); -if (lean_is_exclusive(x_172)) { - lean_ctor_release(x_172, 0); - lean_ctor_release(x_172, 1); - x_174 = x_172; +x_109 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_109, 0, x_103); +lean_ctor_set(x_109, 1, x_106); +if (lean_is_scalar(x_104)) { + x_110 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_172); - x_174 = lean_box(0); + x_110 = x_104; } -if (lean_is_scalar(x_174)) { - x_175 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_110, 0, x_102); +lean_ctor_set(x_110, 1, x_109); +if (lean_is_scalar(x_108)) { + x_111 = lean_alloc_ctor(0, 2, 0); } else { - x_175 = x_174; -} -lean_ctor_set(x_175, 0, x_62); -lean_ctor_set(x_175, 1, x_173); -return x_175; -} + x_111 = x_108; } +lean_ctor_set(x_111, 0, x_110); +lean_ctor_set(x_111, 1, x_107); +return x_111; } else { -uint8_t x_176; -lean_dec(x_13); -lean_dec(x_11); +lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_dec(x_9); -lean_dec(x_3); -x_176 = !lean_is_exclusive(x_56); -if (x_176 == 0) -{ -return x_56; -} -else -{ -lean_object* x_177; lean_object* x_178; lean_object* x_179; -x_177 = lean_ctor_get(x_56, 0); -x_178 = lean_ctor_get(x_56, 1); -lean_inc(x_178); -lean_inc(x_177); -lean_dec(x_56); -x_179 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_179, 0, x_177); -lean_ctor_set(x_179, 1, x_178); -return x_179; +x_112 = lean_ctor_get(x_99, 0); +lean_inc(x_112); +x_113 = lean_ctor_get(x_99, 1); +lean_inc(x_113); +if (lean_is_exclusive(x_99)) { + lean_ctor_release(x_99, 0); + lean_ctor_release(x_99, 1); + x_114 = x_99; +} else { + lean_dec_ref(x_99); + 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 -{ -uint8_t x_180; -lean_dec(x_46); -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_3); -x_180 = !lean_is_exclusive(x_50); -if (x_180 == 0) -{ -return x_50; } -else -{ -lean_object* x_181; lean_object* x_182; lean_object* x_183; -x_181 = lean_ctor_get(x_50, 0); -x_182 = lean_ctor_get(x_50, 1); -lean_inc(x_182); -lean_inc(x_181); -lean_dec(x_50); -x_183 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_183, 0, x_181); -lean_ctor_set(x_183, 1, x_182); -return x_183; } } } -else -{ -uint8_t x_184; -lean_dec(x_43); -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_3); -x_184 = !lean_is_exclusive(x_45); -if (x_184 == 0) +LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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) { +_start: { -return x_45; -} -else +if (lean_obj_tag(x_6) == 0) { -lean_object* x_185; lean_object* x_186; lean_object* x_187; -x_185 = lean_ctor_get(x_45, 0); -x_186 = lean_ctor_get(x_45, 1); -lean_inc(x_186); -lean_inc(x_185); -lean_dec(x_45); -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; -} -} +lean_object* x_12; lean_object* x_13; +x_12 = lean_box(0); +x_13 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__3___lambda__1(x_6, x_1, x_2, x_3, x_4, x_5, x_12, x_7, x_8, x_9, x_10, x_11); +return x_13; } else { -uint8_t x_188; -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_188 = !lean_is_exclusive(x_20); -if (x_188 == 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_6, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = lean_st_ref_set(x_8, x_16, 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 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__3___lambda__1(x_6, x_1, x_2, x_3, x_4, x_5, x_18, x_7, x_8, x_9, x_10, x_19); +lean_dec(x_18); return x_20; } -else -{ -lean_object* x_189; lean_object* x_190; lean_object* x_191; -x_189 = lean_ctor_get(x_20, 0); -x_190 = lean_ctor_get(x_20, 1); -lean_inc(x_190); -lean_inc(x_189); -lean_dec(x_20); -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; -} -} } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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) { _start: { -lean_object* 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); -x_12 = l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__9(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -if (lean_obj_tag(x_12) == 0) +if (lean_obj_tag(x_8) == 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; -x_13 = lean_ctor_get(x_12, 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_2, 1); +lean_inc(x_12); +x_13 = lean_ctor_get(x_2, 2); 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_2, 5); -lean_inc(x_15); -x_16 = lean_ctor_get(x_2, 4); -lean_inc(x_16); -lean_inc(x_16); -x_17 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_17, 0, x_16); -x_18 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__2___boxed), 14, 5); -lean_closure_set(x_18, 0, x_2); -lean_closure_set(x_18, 1, x_16); -lean_closure_set(x_18, 2, x_3); -lean_closure_set(x_18, 3, x_13); -lean_closure_set(x_18, 4, x_4); -x_19 = 0; -x_20 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_addAutoBoundImplicits_x27___spec__2___rarg(x_15, x_17, x_18, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_14); -return x_20; +x_14 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__2), 10, 3); +lean_closure_set(x_14, 0, x_3); +lean_closure_set(x_14, 1, x_2); +lean_closure_set(x_14, 2, x_1); +x_15 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withLevelNames___rarg), 9, 2); +lean_closure_set(x_15, 0, x_13); +lean_closure_set(x_15, 1, x_14); +x_16 = lean_box(0); +x_17 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__3(x_12, x_15, x_4, x_5, x_6, x_7, x_16, x_9, x_10, x_11); +return x_17; } else { -uint8_t x_21; -lean_dec(x_10); +lean_object* x_18; uint8_t x_19; 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_21 = !lean_is_exclusive(x_12); -if (x_21 == 0) +lean_dec(x_1); +x_18 = lean_ctor_get(x_8, 0); +lean_inc(x_18); +lean_dec(x_8); +x_19 = !lean_is_exclusive(x_18); +if (x_19 == 0) { -return x_12; +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint64_t x_25; lean_object* x_26; uint8_t x_27; +x_20 = lean_ctor_get(x_18, 1); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_st_ref_set(x_10, x_21, x_11); +lean_dec(x_10); +x_23 = lean_ctor_get(x_22, 1); +lean_inc(x_23); +lean_dec(x_22); +x_24 = lean_ctor_get(x_20, 1); +lean_inc(x_24); +x_25 = lean_uint64_of_nat(x_24); +lean_dec(x_24); +x_26 = lean_io_add_heartbeats(x_25, x_23); +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_18); +return x_26; } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_12, 0); -x_23 = lean_ctor_get(x_12, 1); -lean_inc(x_23); -lean_inc(x_22); -lean_dec(x_12); -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_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_18); +lean_ctor_set(x_30, 1, x_29); +return x_30; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___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: +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_object* 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_io_get_num_heartbeats(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_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; uint64_t 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_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_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_st_ref_set(x_10, x_33, x_11); lean_dec(x_10); -x_13 = lean_ctor_get(x_1, 1); -lean_inc(x_13); -x_14 = lean_ctor_get(x_13, 1); -lean_inc(x_14); -x_15 = lean_ctor_get(x_13, 2); -lean_inc(x_15); -x_16 = lean_ctor_get(x_1, 0); -lean_inc(x_16); -x_17 = lean_ctor_get(x_16, 6); -lean_inc(x_17); -lean_dec(x_16); -x_18 = lean_alloc_closure((void*)(l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerm), 3, 1); -lean_closure_set(x_18, 0, x_17); -x_19 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__3), 11, 4); -lean_closure_set(x_19, 0, x_18); -lean_closure_set(x_19, 1, x_13); -lean_closure_set(x_19, 2, x_1); -lean_closure_set(x_19, 3, x_11); -x_20 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withLevelNames___rarg), 9, 2); -lean_closure_set(x_20, 0, x_15); -lean_closure_set(x_20, 1, x_19); -x_21 = l_Lean_Elab_Term_withDeclName___rarg(x_14, x_20, x_2, x_3, x_4, x_5, x_7, x_8, x_12); -return x_21; +x_35 = lean_ctor_get(x_34, 1); +lean_inc(x_35); +lean_dec(x_34); +x_36 = lean_ctor_get(x_32, 1); +lean_inc(x_36); +x_37 = lean_uint64_of_nat(x_36); +lean_dec(x_36); +x_38 = lean_io_add_heartbeats(x_37, x_35); +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); +} +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_31); +lean_ctor_set(x_41, 1, x_32); +if (lean_is_scalar(x_40)) { + x_42 = lean_alloc_ctor(0, 2, 0); +} else { + x_42 = x_40; +} +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_39); +return x_42; +} +} } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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: { -if (lean_obj_tag(x_6) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_10; lean_object* x_11; -x_10 = lean_box(0); -x_11 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__4(x_1, x_2, x_3, x_4, x_5, x_10, x_7, x_8, x_9); -return 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_12 = lean_ctor_get(x_2, 1); +lean_inc(x_12); +x_13 = lean_ctor_get(x_2, 2); +lean_inc(x_13); +x_14 = lean_alloc_closure((void*)(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__2), 10, 3); +lean_closure_set(x_14, 0, x_3); +lean_closure_set(x_14, 1, x_2); +lean_closure_set(x_14, 2, x_1); +x_15 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withLevelNames___rarg), 9, 2); +lean_closure_set(x_15, 0, x_13); +lean_closure_set(x_15, 1, x_14); +x_16 = lean_box(0); +x_17 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__3(x_12, x_15, x_4, x_5, x_6, x_7, x_16, x_9, x_10, x_11); +return x_17; } 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; uint64_t x_19; lean_object* x_20; uint8_t x_21; +lean_object* x_18; uint8_t 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_12 = lean_ctor_get(x_6, 0); -lean_inc(x_12); -lean_dec(x_6); -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_14, 0); -lean_inc(x_15); -x_16 = lean_st_ref_set(x_8, x_15, x_9); -lean_dec(x_8); -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = lean_ctor_get(x_14, 1); +x_18 = lean_ctor_get(x_8, 0); lean_inc(x_18); -lean_dec(x_14); -x_19 = lean_uint64_of_nat(x_18); -lean_dec(x_18); -x_20 = lean_io_add_heartbeats(x_19, x_17); -x_21 = !lean_is_exclusive(x_20); -if (x_21 == 0) +lean_dec(x_8); +x_19 = !lean_is_exclusive(x_18); +if (x_19 == 0) { -lean_object* x_22; -x_22 = lean_ctor_get(x_20, 0); +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint64_t x_25; lean_object* x_26; uint8_t x_27; +x_20 = lean_ctor_get(x_18, 1); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_st_ref_set(x_10, x_21, x_11); +lean_dec(x_10); +x_23 = lean_ctor_get(x_22, 1); +lean_inc(x_23); lean_dec(x_22); -lean_ctor_set(x_20, 0, x_13); -return x_20; +x_24 = lean_ctor_get(x_20, 1); +lean_inc(x_24); +x_25 = lean_uint64_of_nat(x_24); +lean_dec(x_24); +x_26 = lean_io_add_heartbeats(x_25, x_23); +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_18); +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_18); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} } 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_13); -lean_ctor_set(x_24, 1, x_23); -return x_24; +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; uint64_t 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_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_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_st_ref_set(x_10, x_33, x_11); +lean_dec(x_10); +x_35 = lean_ctor_get(x_34, 1); +lean_inc(x_35); +lean_dec(x_34); +x_36 = lean_ctor_get(x_32, 1); +lean_inc(x_36); +x_37 = lean_uint64_of_nat(x_36); +lean_dec(x_36); +x_38 = lean_io_add_heartbeats(x_37, x_35); +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); +} +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_31); +lean_ctor_set(x_41, 1, x_32); +if (lean_is_scalar(x_40)) { + x_42 = lean_alloc_ctor(0, 2, 0); +} else { + x_42 = x_40; } +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_39); +return x_42; } } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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) { _start: { -if (lean_obj_tag(x_6) == 0) +if (lean_obj_tag(x_1) == 0) { -lean_object* x_10; lean_object* x_11; -x_10 = lean_box(0); -x_11 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__4(x_1, x_2, x_3, x_4, x_5, x_10, x_7, x_8, x_9); -return x_11; -} -else +lean_object* x_13; lean_object* x_14; +x_13 = lean_box(0); +lean_inc(x_9); +x_14 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__7(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_13, x_10, x_11, x_12); +if (lean_obj_tag(x_14) == 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; uint64_t x_19; lean_object* x_20; uint8_t x_21; -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_12 = lean_ctor_get(x_6, 0); -lean_inc(x_12); -lean_dec(x_6); -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); +lean_object* x_15; lean_object* x_16; uint8_t x_17; x_15 = lean_ctor_get(x_14, 0); lean_inc(x_15); -x_16 = lean_st_ref_set(x_8, x_15, x_9); -lean_dec(x_8); -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = lean_ctor_get(x_14, 1); -lean_inc(x_18); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); lean_dec(x_14); -x_19 = lean_uint64_of_nat(x_18); -lean_dec(x_18); -x_20 = lean_io_add_heartbeats(x_19, x_17); -x_21 = !lean_is_exclusive(x_20); -if (x_21 == 0) +x_17 = !lean_is_exclusive(x_15); +if (x_17 == 0) { -lean_object* x_22; -x_22 = lean_ctor_get(x_20, 0); -lean_dec(x_22); -lean_ctor_set(x_20, 0, x_13); -return x_20; +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_15, 1); +x_19 = lean_st_ref_get(x_9, x_16); +lean_dec(x_9); +x_20 = !lean_is_exclusive(x_19); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_ctor_get(x_19, 0); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_18); +lean_ctor_set(x_22, 1, x_21); +lean_ctor_set(x_15, 1, x_22); +lean_ctor_set(x_19, 0, x_15); +return x_19; } else { -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_20, 1); +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = lean_ctor_get(x_19, 0); +x_24 = lean_ctor_get(x_19, 1); +lean_inc(x_24); lean_inc(x_23); -lean_dec(x_20); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_13); -lean_ctor_set(x_24, 1, x_23); -return x_24; -} -} -} +lean_dec(x_19); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_18); +lean_ctor_set(x_25, 1, x_23); +lean_ctor_set(x_15, 1, x_25); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_15); +lean_ctor_set(x_26, 1, x_24); +return x_26; } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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) { -_start: -{ -if (lean_obj_tag(x_1) == 0) -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_box(0); -x_12 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4(x_2, x_3, x_4, x_6, x_7, x_11, x_8, x_9, 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; +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_27 = lean_ctor_get(x_15, 0); +x_28 = lean_ctor_get(x_15, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_15); +x_29 = lean_st_ref_get(x_9, x_16); +lean_dec(x_9); +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(0, 2, 0); +lean_ctor_set(x_33, 0, x_28); +lean_ctor_set(x_33, 1, x_30); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_27); +lean_ctor_set(x_34, 1, x_33); +if (lean_is_scalar(x_32)) { + x_35 = lean_alloc_ctor(0, 2, 0); +} else { + x_35 = x_32; +} +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_31); +return x_35; } } else { -uint8_t x_17; -x_17 = !lean_is_exclusive(x_12); -if (x_17 == 0) +uint8_t x_36; +lean_dec(x_9); +x_36 = !lean_is_exclusive(x_14); +if (x_36 == 0) { -return x_12; +return x_14; } 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_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_14, 0); +x_38 = lean_ctor_get(x_14, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_14); +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_21; -x_21 = !lean_is_exclusive(x_1); -if (x_21 == 0) +uint8_t x_40; +x_40 = !lean_is_exclusive(x_1); +if (x_40 == 0) { -lean_object* x_22; uint8_t x_23; -x_22 = lean_ctor_get(x_1, 0); -x_23 = !lean_is_exclusive(x_22); -if (x_23 == 0) +lean_object* x_41; uint8_t x_42; +x_41 = lean_ctor_get(x_1, 0); +x_42 = !lean_is_exclusive(x_41); +if (x_42 == 0) { -lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_24 = lean_ctor_get(x_22, 1); -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -lean_dec(x_24); -lean_ctor_set(x_22, 1, x_25); -x_26 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__5(x_2, x_3, x_4, x_6, x_7, x_1, x_8, x_9, x_10); -if (lean_obj_tag(x_26) == 0) +lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_43 = lean_ctor_get(x_41, 1); +x_44 = lean_ctor_get(x_43, 0); +lean_inc(x_44); +lean_dec(x_43); +lean_ctor_set(x_41, 1, x_44); +lean_inc(x_9); +x_45 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__8(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_1, x_10, x_11, x_12); +if (lean_obj_tag(x_45) == 0) { -uint8_t x_27; -x_27 = !lean_is_exclusive(x_26); -if (x_27 == 0) +lean_object* x_46; lean_object* x_47; uint8_t x_48; +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 = !lean_is_exclusive(x_46); +if (x_48 == 0) { -return x_26; +lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_49 = lean_ctor_get(x_46, 1); +x_50 = lean_st_ref_get(x_9, x_47); +lean_dec(x_9); +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, 2, 0); +lean_ctor_set(x_53, 0, x_49); +lean_ctor_set(x_53, 1, x_52); +lean_ctor_set(x_46, 1, x_53); +lean_ctor_set(x_50, 0, x_46); +return x_50; } 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(0, 2, 0); -lean_ctor_set(x_30, 0, x_28); -lean_ctor_set(x_30, 1, x_29); -return x_30; +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, 2, 0); +lean_ctor_set(x_56, 0, x_49); +lean_ctor_set(x_56, 1, x_54); +lean_ctor_set(x_46, 1, x_56); +x_57 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_57, 0, x_46); +lean_ctor_set(x_57, 1, x_55); +return x_57; } } else { -uint8_t x_31; -x_31 = !lean_is_exclusive(x_26); -if (x_31 == 0) -{ -return x_26; +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_58 = lean_ctor_get(x_46, 0); +x_59 = lean_ctor_get(x_46, 1); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_46); +x_60 = lean_st_ref_get(x_9, x_47); +lean_dec(x_9); +x_61 = lean_ctor_get(x_60, 0); +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; +} else { + lean_dec_ref(x_60); + x_63 = lean_box(0); } -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_26, 0); -x_33 = lean_ctor_get(x_26, 1); -lean_inc(x_33); -lean_inc(x_32); -lean_dec(x_26); -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_64 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_64, 0, x_59); +lean_ctor_set(x_64, 1, x_61); +x_65 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_65, 0, x_58); +lean_ctor_set(x_65, 1, x_64); +if (lean_is_scalar(x_63)) { + x_66 = lean_alloc_ctor(0, 2, 0); +} else { + x_66 = x_63; } +lean_ctor_set(x_66, 0, x_65); +lean_ctor_set(x_66, 1, x_62); +return x_66; } } else { -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_22, 0); -x_36 = lean_ctor_get(x_22, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_22); -x_37 = lean_ctor_get(x_36, 0); -lean_inc(x_37); -lean_dec(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); -lean_ctor_set(x_1, 0, x_38); -x_39 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__5(x_2, x_3, x_4, x_6, x_7, x_1, x_8, x_9, x_10); -if (lean_obj_tag(x_39) == 0) +uint8_t x_67; +lean_dec(x_9); +x_67 = !lean_is_exclusive(x_45); +if (x_67 == 0) { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_40 = lean_ctor_get(x_39, 0); -lean_inc(x_40); -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); -} -if (lean_is_scalar(x_42)) { - x_43 = lean_alloc_ctor(0, 2, 0); -} else { - x_43 = x_42; -} -lean_ctor_set(x_43, 0, x_40); -lean_ctor_set(x_43, 1, x_41); -return x_43; +return x_45; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_44 = lean_ctor_get(x_39, 0); -lean_inc(x_44); -x_45 = lean_ctor_get(x_39, 1); -lean_inc(x_45); -if (lean_is_exclusive(x_39)) { - lean_ctor_release(x_39, 0); - lean_ctor_release(x_39, 1); - x_46 = x_39; -} else { - lean_dec_ref(x_39); - 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; +lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_68 = lean_ctor_get(x_45, 0); +x_69 = lean_ctor_get(x_45, 1); +lean_inc(x_69); +lean_inc(x_68); +lean_dec(x_45); +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_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_48 = lean_ctor_get(x_1, 0); -lean_inc(x_48); -lean_dec(x_1); -x_49 = lean_ctor_get(x_48, 0); -lean_inc(x_49); -x_50 = lean_ctor_get(x_48, 1); -lean_inc(x_50); -if (lean_is_exclusive(x_48)) { - lean_ctor_release(x_48, 0); - lean_ctor_release(x_48, 1); - x_51 = x_48; +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_41, 0); +x_72 = lean_ctor_get(x_41, 1); +lean_inc(x_72); +lean_inc(x_71); +lean_dec(x_41); +x_73 = lean_ctor_get(x_72, 0); +lean_inc(x_73); +lean_dec(x_72); +x_74 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_74, 0, x_71); +lean_ctor_set(x_74, 1, x_73); +lean_ctor_set(x_1, 0, x_74); +lean_inc(x_9); +x_75 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__8(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_1, x_10, x_11, x_12); +if (lean_obj_tag(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; lean_object* x_86; lean_object* x_87; +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_78 = lean_ctor_get(x_76, 0); +lean_inc(x_78); +x_79 = lean_ctor_get(x_76, 1); +lean_inc(x_79); +if (lean_is_exclusive(x_76)) { + lean_ctor_release(x_76, 0); + lean_ctor_release(x_76, 1); + x_80 = x_76; } else { - lean_dec_ref(x_48); - x_51 = lean_box(0); + lean_dec_ref(x_76); + x_80 = lean_box(0); } -x_52 = lean_ctor_get(x_50, 0); -lean_inc(x_52); -lean_dec(x_50); -if (lean_is_scalar(x_51)) { - x_53 = lean_alloc_ctor(0, 2, 0); +x_81 = lean_st_ref_get(x_9, x_77); +lean_dec(x_9); +x_82 = lean_ctor_get(x_81, 0); +lean_inc(x_82); +x_83 = lean_ctor_get(x_81, 1); +lean_inc(x_83); +if (lean_is_exclusive(x_81)) { + lean_ctor_release(x_81, 0); + lean_ctor_release(x_81, 1); + x_84 = x_81; } else { - x_53 = x_51; + lean_dec_ref(x_81); + x_84 = lean_box(0); } -lean_ctor_set(x_53, 0, x_49); -lean_ctor_set(x_53, 1, x_52); -x_54 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_54, 0, x_53); -x_55 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__5(x_2, x_3, x_4, x_6, x_7, x_54, x_8, x_9, x_10); -if (lean_obj_tag(x_55) == 0) -{ -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; -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; +x_85 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_85, 0, x_79); +lean_ctor_set(x_85, 1, x_82); +if (lean_is_scalar(x_80)) { + x_86 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_55); - x_58 = lean_box(0); + x_86 = x_80; } -if (lean_is_scalar(x_58)) { - x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_86, 0, x_78); +lean_ctor_set(x_86, 1, x_85); +if (lean_is_scalar(x_84)) { + x_87 = lean_alloc_ctor(0, 2, 0); } else { - x_59 = x_58; + x_87 = x_84; } -lean_ctor_set(x_59, 0, x_56); -lean_ctor_set(x_59, 1, x_57); -return x_59; +lean_ctor_set(x_87, 0, x_86); +lean_ctor_set(x_87, 1, x_83); +return x_87; } else { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_60 = lean_ctor_get(x_55, 0); -lean_inc(x_60); -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; +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_9); +x_88 = lean_ctor_get(x_75, 0); +lean_inc(x_88); +x_89 = lean_ctor_get(x_75, 1); +lean_inc(x_89); +if (lean_is_exclusive(x_75)) { + lean_ctor_release(x_75, 0); + lean_ctor_release(x_75, 1); + x_90 = x_75; } else { - lean_dec_ref(x_55); - x_62 = lean_box(0); + lean_dec_ref(x_75); + x_90 = lean_box(0); } -if (lean_is_scalar(x_62)) { - x_63 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_90)) { + x_91 = 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; -} + x_91 = x_90; } +lean_ctor_set(x_91, 0, x_88); +lean_ctor_set(x_91, 1, x_89); +return x_91; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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: -{ -if (lean_obj_tag(x_4) == 0) +else { -lean_object* x_10; lean_object* x_11; -x_10 = lean_box(0); -x_11 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__3___lambda__1(x_4, x_1, x_2, x_3, x_10, x_5, x_6, x_7, x_8, x_9); -return x_11; +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; +x_92 = lean_ctor_get(x_1, 0); +lean_inc(x_92); +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); +if (lean_is_exclusive(x_92)) { + lean_ctor_release(x_92, 0); + lean_ctor_release(x_92, 1); + x_95 = x_92; +} else { + lean_dec_ref(x_92); + x_95 = lean_box(0); } -else +x_96 = lean_ctor_get(x_94, 0); +lean_inc(x_96); +lean_dec(x_94); +if (lean_is_scalar(x_95)) { + x_97 = lean_alloc_ctor(0, 2, 0); +} else { + x_97 = x_95; +} +lean_ctor_set(x_97, 0, x_93); +lean_ctor_set(x_97, 1, x_96); +x_98 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_98, 0, x_97); +lean_inc(x_9); +x_99 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__8(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_98, x_10, x_11, x_12); +if (lean_obj_tag(x_99) == 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 = lean_ctor_get(x_4, 0); -lean_inc(x_12); -x_13 = lean_ctor_get(x_12, 1); -lean_inc(x_13); -lean_dec(x_12); -x_14 = lean_ctor_get(x_13, 1); -lean_inc(x_14); -lean_dec(x_13); -x_15 = lean_st_ref_set(x_6, x_14, x_9); -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_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__3___lambda__1(x_4, x_1, x_2, x_3, x_16, x_5, x_6, x_7, x_8, x_17); -lean_dec(x_16); -return x_18; +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; +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); +x_102 = lean_ctor_get(x_100, 0); +lean_inc(x_102); +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); } +x_105 = lean_st_ref_get(x_9, x_101); +lean_dec(x_9); +x_106 = lean_ctor_get(x_105, 0); +lean_inc(x_106); +x_107 = lean_ctor_get(x_105, 1); +lean_inc(x_107); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + x_108 = x_105; +} else { + lean_dec_ref(x_105); + x_108 = lean_box(0); } +x_109 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_109, 0, x_103); +lean_ctor_set(x_109, 1, x_106); +if (lean_is_scalar(x_104)) { + x_110 = lean_alloc_ctor(0, 2, 0); +} else { + x_110 = x_104; } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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) { -_start: -{ -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_10; lean_object* x_11; -x_10 = lean_box(0); -x_11 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__4(x_1, x_2, x_3, x_4, x_5, x_10, x_7, x_8, x_9); -return x_11; +lean_ctor_set(x_110, 0, x_102); +lean_ctor_set(x_110, 1, x_109); +if (lean_is_scalar(x_108)) { + x_111 = lean_alloc_ctor(0, 2, 0); +} else { + x_111 = x_108; } -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; uint64_t x_19; lean_object* x_20; uint8_t x_21; -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_12 = lean_ctor_get(x_6, 0); -lean_inc(x_12); -lean_dec(x_6); -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_14, 0); -lean_inc(x_15); -x_16 = lean_st_ref_set(x_8, x_15, x_9); -lean_dec(x_8); -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = lean_ctor_get(x_14, 1); -lean_inc(x_18); -lean_dec(x_14); -x_19 = lean_uint64_of_nat(x_18); -lean_dec(x_18); -x_20 = lean_io_add_heartbeats(x_19, x_17); -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_13); -return x_20; +lean_ctor_set(x_111, 0, x_110); +lean_ctor_set(x_111, 1, x_107); +return x_111; } 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_13); -lean_ctor_set(x_24, 1, x_23); -return x_24; +lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; +lean_dec(x_9); +x_112 = lean_ctor_get(x_99, 0); +lean_inc(x_112); +x_113 = lean_ctor_get(x_99, 1); +lean_inc(x_113); +if (lean_is_exclusive(x_99)) { + lean_ctor_release(x_99, 0); + lean_ctor_release(x_99, 1); + x_114 = x_99; +} else { + lean_dec_ref(x_99); + 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; } } } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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) { _start: { if (lean_obj_tag(x_6) == 0) { -lean_object* x_10; lean_object* x_11; -x_10 = lean_box(0); -x_11 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__4(x_1, x_2, x_3, x_4, x_5, x_10, x_7, x_8, x_9); -return x_11; +lean_object* x_12; lean_object* x_13; +x_12 = lean_box(0); +x_13 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6___lambda__1(x_6, x_1, x_2, x_3, x_4, x_5, x_12, x_7, x_8, x_9, x_10, x_11); +return x_13; } 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; uint64_t x_19; lean_object* x_20; uint8_t x_21; -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_12 = lean_ctor_get(x_6, 0); -lean_inc(x_12); -lean_dec(x_6); -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -x_14 = lean_ctor_get(x_12, 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; +x_14 = lean_ctor_get(x_6, 0); lean_inc(x_14); -lean_dec(x_12); -x_15 = lean_ctor_get(x_14, 0); +x_15 = lean_ctor_get(x_14, 1); lean_inc(x_15); -x_16 = lean_st_ref_set(x_8, x_15, x_9); -lean_dec(x_8); -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = lean_ctor_get(x_14, 1); -lean_inc(x_18); lean_dec(x_14); -x_19 = lean_uint64_of_nat(x_18); +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = lean_st_ref_set(x_8, x_16, 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 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6___lambda__1(x_6, x_1, x_2, x_3, x_4, x_5, x_18, x_7, x_8, x_9, x_10, x_19); lean_dec(x_18); -x_20 = lean_io_add_heartbeats(x_19, x_17); -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_13); 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_13); -lean_ctor_set(x_24, 1, x_23); -return x_24; -} } } -} -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_object* x_11, lean_object* x_12) { _start: { if (lean_obj_tag(x_1) == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_box(0); -x_12 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__7(x_2, x_3, x_4, x_6, x_7, x_11, x_8, x_9, x_10); -if (lean_obj_tag(x_12) == 0) +lean_object* x_13; lean_object* x_14; +x_13 = lean_box(0); +lean_inc(x_7); +x_14 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__3(x_2, x_3, x_4, x_6, x_7, x_13, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_14) == 0) { -uint8_t x_13; -x_13 = !lean_is_exclusive(x_12); -if (x_13 == 0) +lean_object* x_15; lean_object* x_16; uint8_t 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 = !lean_is_exclusive(x_15); +if (x_17 == 0) { -return x_12; +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_15, 1); +x_19 = lean_st_ref_get(x_7, x_16); +lean_dec(x_7); +x_20 = !lean_is_exclusive(x_19); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_ctor_get(x_19, 0); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_18); +lean_ctor_set(x_22, 1, x_21); +lean_ctor_set(x_15, 1, x_22); +lean_ctor_set(x_19, 0, x_15); +return x_19; } 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; +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = lean_ctor_get(x_19, 0); +x_24 = lean_ctor_get(x_19, 1); +lean_inc(x_24); +lean_inc(x_23); +lean_dec(x_19); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_18); +lean_ctor_set(x_25, 1, x_23); +lean_ctor_set(x_15, 1, x_25); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_15); +lean_ctor_set(x_26, 1, x_24); +return x_26; } } else { -uint8_t x_17; -x_17 = !lean_is_exclusive(x_12); -if (x_17 == 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; +x_27 = lean_ctor_get(x_15, 0); +x_28 = lean_ctor_get(x_15, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_15); +x_29 = lean_st_ref_get(x_7, x_16); +lean_dec(x_7); +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(0, 2, 0); +lean_ctor_set(x_33, 0, x_28); +lean_ctor_set(x_33, 1, x_30); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_27); +lean_ctor_set(x_34, 1, x_33); +if (lean_is_scalar(x_32)) { + x_35 = lean_alloc_ctor(0, 2, 0); +} else { + x_35 = x_32; +} +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_31); +return x_35; +} +} +else { -return x_12; +uint8_t x_36; +lean_dec(x_7); +x_36 = !lean_is_exclusive(x_14); +if (x_36 == 0) +{ +return x_14; } 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_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_14, 0); +x_38 = lean_ctor_get(x_14, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_14); +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_21; -x_21 = !lean_is_exclusive(x_1); -if (x_21 == 0) +uint8_t x_40; +x_40 = !lean_is_exclusive(x_1); +if (x_40 == 0) { -lean_object* x_22; uint8_t x_23; -x_22 = lean_ctor_get(x_1, 0); -x_23 = !lean_is_exclusive(x_22); -if (x_23 == 0) +lean_object* x_41; uint8_t x_42; +x_41 = lean_ctor_get(x_1, 0); +x_42 = !lean_is_exclusive(x_41); +if (x_42 == 0) { -lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_24 = lean_ctor_get(x_22, 1); -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -lean_dec(x_24); -lean_ctor_set(x_22, 1, x_25); -x_26 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__8(x_2, x_3, x_4, x_6, x_7, x_1, x_8, x_9, x_10); -if (lean_obj_tag(x_26) == 0) +lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_43 = lean_ctor_get(x_41, 1); +x_44 = lean_ctor_get(x_43, 0); +lean_inc(x_44); +lean_dec(x_43); +lean_ctor_set(x_41, 1, x_44); +lean_inc(x_7); +x_45 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6(x_2, x_3, x_4, x_6, x_7, x_1, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_45) == 0) { -uint8_t x_27; -x_27 = !lean_is_exclusive(x_26); -if (x_27 == 0) +lean_object* x_46; lean_object* x_47; uint8_t x_48; +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 = !lean_is_exclusive(x_46); +if (x_48 == 0) { -return x_26; +lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_49 = lean_ctor_get(x_46, 1); +x_50 = lean_st_ref_get(x_7, x_47); +lean_dec(x_7); +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, 2, 0); +lean_ctor_set(x_53, 0, x_49); +lean_ctor_set(x_53, 1, x_52); +lean_ctor_set(x_46, 1, x_53); +lean_ctor_set(x_50, 0, x_46); +return x_50; } 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(0, 2, 0); -lean_ctor_set(x_30, 0, x_28); -lean_ctor_set(x_30, 1, x_29); -return x_30; +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, 2, 0); +lean_ctor_set(x_56, 0, x_49); +lean_ctor_set(x_56, 1, x_54); +lean_ctor_set(x_46, 1, x_56); +x_57 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_57, 0, x_46); +lean_ctor_set(x_57, 1, x_55); +return x_57; } } else { -uint8_t x_31; -x_31 = !lean_is_exclusive(x_26); -if (x_31 == 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_65; lean_object* x_66; +x_58 = lean_ctor_get(x_46, 0); +x_59 = lean_ctor_get(x_46, 1); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_46); +x_60 = lean_st_ref_get(x_7, x_47); +lean_dec(x_7); +x_61 = lean_ctor_get(x_60, 0); +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; +} else { + lean_dec_ref(x_60); + x_63 = lean_box(0); +} +x_64 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_64, 0, x_59); +lean_ctor_set(x_64, 1, x_61); +x_65 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_65, 0, x_58); +lean_ctor_set(x_65, 1, x_64); +if (lean_is_scalar(x_63)) { + x_66 = lean_alloc_ctor(0, 2, 0); +} else { + x_66 = x_63; +} +lean_ctor_set(x_66, 0, x_65); +lean_ctor_set(x_66, 1, x_62); +return x_66; +} +} +else { -return x_26; +uint8_t x_67; +lean_dec(x_7); +x_67 = !lean_is_exclusive(x_45); +if (x_67 == 0) +{ +return x_45; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_26, 0); -x_33 = lean_ctor_get(x_26, 1); -lean_inc(x_33); -lean_inc(x_32); -lean_dec(x_26); -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_object* x_68; lean_object* x_69; lean_object* x_70; +x_68 = lean_ctor_get(x_45, 0); +x_69 = lean_ctor_get(x_45, 1); +lean_inc(x_69); +lean_inc(x_68); +lean_dec(x_45); +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_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_35 = lean_ctor_get(x_22, 0); -x_36 = lean_ctor_get(x_22, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_22); -x_37 = lean_ctor_get(x_36, 0); -lean_inc(x_37); -lean_dec(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); -lean_ctor_set(x_1, 0, x_38); -x_39 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__8(x_2, x_3, x_4, x_6, x_7, x_1, x_8, x_9, x_10); -if (lean_obj_tag(x_39) == 0) +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_41, 0); +x_72 = lean_ctor_get(x_41, 1); +lean_inc(x_72); +lean_inc(x_71); +lean_dec(x_41); +x_73 = lean_ctor_get(x_72, 0); +lean_inc(x_73); +lean_dec(x_72); +x_74 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_74, 0, x_71); +lean_ctor_set(x_74, 1, x_73); +lean_ctor_set(x_1, 0, x_74); +lean_inc(x_7); +x_75 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6(x_2, x_3, x_4, x_6, x_7, x_1, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_75) == 0) { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_40 = lean_ctor_get(x_39, 0); -lean_inc(x_40); -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; +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; +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_78 = lean_ctor_get(x_76, 0); +lean_inc(x_78); +x_79 = lean_ctor_get(x_76, 1); +lean_inc(x_79); +if (lean_is_exclusive(x_76)) { + lean_ctor_release(x_76, 0); + lean_ctor_release(x_76, 1); + x_80 = x_76; } else { - lean_dec_ref(x_39); - x_42 = lean_box(0); + lean_dec_ref(x_76); + x_80 = lean_box(0); } -if (lean_is_scalar(x_42)) { - x_43 = lean_alloc_ctor(0, 2, 0); +x_81 = lean_st_ref_get(x_7, x_77); +lean_dec(x_7); +x_82 = lean_ctor_get(x_81, 0); +lean_inc(x_82); +x_83 = lean_ctor_get(x_81, 1); +lean_inc(x_83); +if (lean_is_exclusive(x_81)) { + lean_ctor_release(x_81, 0); + lean_ctor_release(x_81, 1); + x_84 = x_81; } else { - x_43 = x_42; + lean_dec_ref(x_81); + x_84 = lean_box(0); } -lean_ctor_set(x_43, 0, x_40); -lean_ctor_set(x_43, 1, x_41); -return x_43; +x_85 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_85, 0, x_79); +lean_ctor_set(x_85, 1, x_82); +if (lean_is_scalar(x_80)) { + x_86 = lean_alloc_ctor(0, 2, 0); +} else { + x_86 = x_80; +} +lean_ctor_set(x_86, 0, x_78); +lean_ctor_set(x_86, 1, x_85); +if (lean_is_scalar(x_84)) { + x_87 = lean_alloc_ctor(0, 2, 0); +} else { + x_87 = x_84; +} +lean_ctor_set(x_87, 0, x_86); +lean_ctor_set(x_87, 1, x_83); +return x_87; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_44 = lean_ctor_get(x_39, 0); -lean_inc(x_44); -x_45 = lean_ctor_get(x_39, 1); -lean_inc(x_45); -if (lean_is_exclusive(x_39)) { - lean_ctor_release(x_39, 0); - lean_ctor_release(x_39, 1); - x_46 = x_39; +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_7); +x_88 = lean_ctor_get(x_75, 0); +lean_inc(x_88); +x_89 = lean_ctor_get(x_75, 1); +lean_inc(x_89); +if (lean_is_exclusive(x_75)) { + lean_ctor_release(x_75, 0); + lean_ctor_release(x_75, 1); + x_90 = x_75; } else { - lean_dec_ref(x_39); - x_46 = lean_box(0); + lean_dec_ref(x_75); + x_90 = lean_box(0); } -if (lean_is_scalar(x_46)) { - x_47 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_90)) { + x_91 = lean_alloc_ctor(1, 2, 0); } else { - x_47 = x_46; + x_91 = x_90; } -lean_ctor_set(x_47, 0, x_44); -lean_ctor_set(x_47, 1, x_45); -return x_47; +lean_ctor_set(x_91, 0, x_88); +lean_ctor_set(x_91, 1, x_89); +return x_91; } } } 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; -x_48 = lean_ctor_get(x_1, 0); -lean_inc(x_48); +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; +x_92 = lean_ctor_get(x_1, 0); +lean_inc(x_92); lean_dec(x_1); -x_49 = lean_ctor_get(x_48, 0); -lean_inc(x_49); -x_50 = lean_ctor_get(x_48, 1); -lean_inc(x_50); -if (lean_is_exclusive(x_48)) { - lean_ctor_release(x_48, 0); - lean_ctor_release(x_48, 1); - x_51 = x_48; +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 { - lean_dec_ref(x_48); - x_51 = lean_box(0); + lean_dec_ref(x_92); + x_95 = lean_box(0); } -x_52 = lean_ctor_get(x_50, 0); -lean_inc(x_52); -lean_dec(x_50); -if (lean_is_scalar(x_51)) { - x_53 = lean_alloc_ctor(0, 2, 0); +x_96 = lean_ctor_get(x_94, 0); +lean_inc(x_96); +lean_dec(x_94); +if (lean_is_scalar(x_95)) { + x_97 = lean_alloc_ctor(0, 2, 0); } else { - x_53 = x_51; + x_97 = x_95; } -lean_ctor_set(x_53, 0, x_49); -lean_ctor_set(x_53, 1, x_52); -x_54 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_54, 0, x_53); -x_55 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__8(x_2, x_3, x_4, x_6, x_7, x_54, x_8, x_9, x_10); -if (lean_obj_tag(x_55) == 0) +lean_ctor_set(x_97, 0, x_93); +lean_ctor_set(x_97, 1, x_96); +x_98 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_98, 0, x_97); +lean_inc(x_7); +x_99 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6(x_2, x_3, x_4, x_6, x_7, x_98, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_99) == 0) { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; -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; +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; +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); +x_102 = lean_ctor_get(x_100, 0); +lean_inc(x_102); +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_55); - x_58 = lean_box(0); + lean_dec_ref(x_100); + x_104 = lean_box(0); } -if (lean_is_scalar(x_58)) { - x_59 = lean_alloc_ctor(0, 2, 0); +x_105 = lean_st_ref_get(x_7, x_101); +lean_dec(x_7); +x_106 = lean_ctor_get(x_105, 0); +lean_inc(x_106); +x_107 = lean_ctor_get(x_105, 1); +lean_inc(x_107); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + x_108 = x_105; } else { - x_59 = x_58; + lean_dec_ref(x_105); + x_108 = lean_box(0); } -lean_ctor_set(x_59, 0, x_56); -lean_ctor_set(x_59, 1, x_57); -return x_59; +x_109 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_109, 0, x_103); +lean_ctor_set(x_109, 1, x_106); +if (lean_is_scalar(x_104)) { + x_110 = lean_alloc_ctor(0, 2, 0); +} else { + x_110 = x_104; +} +lean_ctor_set(x_110, 0, x_102); +lean_ctor_set(x_110, 1, x_109); +if (lean_is_scalar(x_108)) { + x_111 = lean_alloc_ctor(0, 2, 0); +} else { + x_111 = x_108; +} +lean_ctor_set(x_111, 0, x_110); +lean_ctor_set(x_111, 1, x_107); +return x_111; } else { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_60 = lean_ctor_get(x_55, 0); -lean_inc(x_60); -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; +lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; +lean_dec(x_7); +x_112 = lean_ctor_get(x_99, 0); +lean_inc(x_112); +x_113 = lean_ctor_get(x_99, 1); +lean_inc(x_113); +if (lean_is_exclusive(x_99)) { + lean_ctor_release(x_99, 0); + lean_ctor_release(x_99, 1); + x_114 = x_99; } else { - lean_dec_ref(x_55); - x_62 = lean_box(0); + lean_dec_ref(x_99); + x_114 = lean_box(0); } -if (lean_is_scalar(x_62)) { - x_63 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_114)) { + x_115 = lean_alloc_ctor(1, 2, 0); } else { - x_63 = x_62; + x_115 = x_114; } -lean_ctor_set(x_63, 0, x_60); -lean_ctor_set(x_63, 1, x_61); -return x_63; +lean_ctor_set(x_115, 0, x_112); +lean_ctor_set(x_115, 1, x_113); +return x_115; } } } } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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: { if (lean_obj_tag(x_4) == 0) { -lean_object* x_10; lean_object* x_11; -x_10 = lean_box(0); -x_11 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6___lambda__1(x_4, x_1, x_2, x_3, x_10, x_5, x_6, x_7, x_8, x_9); -return x_11; +lean_object* x_12; lean_object* x_13; +x_12 = lean_box(0); +x_13 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__2___lambda__1(x_4, x_1, x_2, x_3, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_13; } 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; -x_12 = lean_ctor_get(x_4, 0); -lean_inc(x_12); -x_13 = lean_ctor_get(x_12, 1); -lean_inc(x_13); -lean_dec(x_12); -x_14 = lean_ctor_get(x_13, 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; +x_14 = lean_ctor_get(x_4, 0); lean_inc(x_14); -lean_dec(x_13); -x_15 = lean_st_ref_set(x_6, x_14, x_9); -x_16 = lean_ctor_get(x_15, 0); +x_15 = lean_ctor_get(x_14, 1); +lean_inc(x_15); +lean_dec(x_14); +x_16 = lean_ctor_get(x_15, 1); 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_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6___lambda__1(x_4, x_1, x_2, x_3, x_16, x_5, x_6, x_7, x_8, x_17); -lean_dec(x_16); -return x_18; +x_17 = lean_st_ref_set(x_6, x_16, 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 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__2___lambda__1(x_4, x_1, x_2, x_3, x_18, x_5, x_6, x_7, x_8, x_9, x_10, x_19); +lean_dec(x_18); +return x_20; } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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) { _start: { -if (lean_obj_tag(x_1) == 0) -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_box(0); -x_12 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__3(x_2, x_4, x_5, x_11, x_6, x_7, x_8, x_9, 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_object* x_10; +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_1); +lean_ctor_set(x_10, 1, x_9); +return x_10; } } -else -{ -uint8_t x_21; -x_21 = !lean_is_exclusive(x_1); -if (x_21 == 0) +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___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_22; uint8_t x_23; -x_22 = lean_ctor_get(x_1, 0); -x_23 = !lean_is_exclusive(x_22); -if (x_23 == 0) +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_1, 1); +lean_inc(x_12); +x_13 = lean_ctor_get(x_1, 0); +lean_inc(x_13); +x_14 = lean_ctor_get(x_13, 6); +lean_inc(x_14); +lean_dec(x_13); +x_15 = lean_alloc_closure((void*)(l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerm), 3, 1); +lean_closure_set(x_15, 0, x_14); +lean_inc(x_10); +lean_inc(x_1); +x_16 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__2(x_1, x_12, 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_24; lean_object* x_25; lean_object* x_26; -x_24 = lean_ctor_get(x_22, 1); -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -lean_dec(x_24); -lean_ctor_set(x_22, 1, x_25); -x_26 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6(x_2, x_4, x_5, x_1, x_6, x_7, x_8, x_9, x_10); -if (lean_obj_tag(x_26) == 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_1, 3); +lean_inc(x_18); +lean_dec(x_1); +if (lean_obj_tag(x_18) == 0) { -uint8_t x_27; -x_27 = !lean_is_exclusive(x_26); -if (x_27 == 0) +uint8_t x_19; +lean_dec(x_10); +lean_dec(x_2); +x_19 = !lean_is_exclusive(x_16); +if (x_19 == 0) { -return x_26; +lean_object* x_20; lean_object* x_21; +x_20 = lean_ctor_get(x_16, 0); +lean_dec(x_20); +x_21 = lean_ctor_get(x_17, 0); +lean_inc(x_21); +lean_dec(x_17); +lean_ctor_set(x_16, 0, x_21); +return x_16; } 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(0, 2, 0); -lean_ctor_set(x_30, 0, x_28); -lean_ctor_set(x_30, 1, x_29); -return x_30; +lean_object* x_22; lean_object* x_23; lean_object* x_24; +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_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_31; -x_31 = !lean_is_exclusive(x_26); -if (x_31 == 0) -{ -return x_26; -} -else +lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_25 = lean_ctor_get(x_16, 1); +lean_inc(x_25); +lean_dec(x_16); +x_26 = lean_ctor_get(x_17, 0); +lean_inc(x_26); +x_27 = lean_ctor_get(x_17, 1); +lean_inc(x_27); +lean_dec(x_17); +x_28 = !lean_is_exclusive(x_18); +if (x_28 == 0) { -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_26, 0); -x_33 = lean_ctor_get(x_26, 1); -lean_inc(x_33); +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; uint8_t x_41; +x_29 = lean_ctor_get(x_18, 0); +x_30 = l_Lean_Core_getAndEmptyMessageLog___rarg(x_10, x_25); +lean_dec(x_10); +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_26); -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 -{ -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_22, 0); -x_36 = lean_ctor_get(x_22, 1); -lean_inc(x_36); +lean_dec(x_30); +x_33 = l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(x_31, 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); -lean_dec(x_22); -x_37 = lean_ctor_get(x_36, 0); -lean_inc(x_37); -lean_dec(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); -lean_ctor_set(x_1, 0, x_38); -x_39 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6(x_2, x_4, x_5, x_1, x_6, x_7, x_8, x_9, x_10); -if (lean_obj_tag(x_39) == 0) +lean_dec(x_33); +x_36 = 0; +x_37 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_37, 0, x_34); +lean_ctor_set(x_37, 1, x_2); +lean_ctor_set_uint8(x_37, sizeof(void*)*2, x_36); +lean_inc(x_26); +x_38 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_27); +lean_ctor_set(x_38, 2, x_26); +lean_ctor_set(x_18, 0, x_38); +x_39 = lean_ctor_get(x_29, 1); +lean_inc(x_39); +lean_dec(x_29); +x_40 = lean_io_promise_resolve(x_18, x_39, x_35); +lean_dec(x_39); +x_41 = !lean_is_exclusive(x_40); +if (x_41 == 0) { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_40 = lean_ctor_get(x_39, 0); -lean_inc(x_40); -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); -} -if (lean_is_scalar(x_42)) { - x_43 = lean_alloc_ctor(0, 2, 0); -} else { - x_43 = x_42; -} -lean_ctor_set(x_43, 0, x_40); -lean_ctor_set(x_43, 1, x_41); -return x_43; +lean_object* x_42; +x_42 = lean_ctor_get(x_40, 0); +lean_dec(x_42); +lean_ctor_set(x_40, 0, x_26); +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_39, 0); -lean_inc(x_44); -x_45 = lean_ctor_get(x_39, 1); -lean_inc(x_45); -if (lean_is_exclusive(x_39)) { - lean_ctor_release(x_39, 0); - lean_ctor_release(x_39, 1); - x_46 = x_39; -} else { - lean_dec_ref(x_39); - 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; -} +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_26); +lean_ctor_set(x_44, 1, x_43); +return x_44; } } 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; -x_48 = lean_ctor_get(x_1, 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; 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 = lean_ctor_get(x_18, 0); +lean_inc(x_45); +lean_dec(x_18); +x_46 = l_Lean_Core_getAndEmptyMessageLog___rarg(x_10, x_25); +lean_dec(x_10); +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_1); -x_49 = lean_ctor_get(x_48, 0); -lean_inc(x_49); -x_50 = lean_ctor_get(x_48, 1); +lean_dec(x_46); +x_49 = l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(x_47, x_48); +x_50 = lean_ctor_get(x_49, 0); lean_inc(x_50); -if (lean_is_exclusive(x_48)) { - lean_ctor_release(x_48, 0); - lean_ctor_release(x_48, 1); - x_51 = x_48; -} else { - lean_dec_ref(x_48); - x_51 = lean_box(0); -} -x_52 = lean_ctor_get(x_50, 0); -lean_inc(x_52); -lean_dec(x_50); -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_49); -lean_ctor_set(x_53, 1, x_52); -x_54 = lean_alloc_ctor(1, 1, 0); +x_51 = lean_ctor_get(x_49, 1); +lean_inc(x_51); +lean_dec(x_49); +x_52 = 0; +x_53 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_53, 0, x_50); +lean_ctor_set(x_53, 1, x_2); +lean_ctor_set_uint8(x_53, sizeof(void*)*2, x_52); +lean_inc(x_26); +x_54 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_54, 0, x_53); -x_55 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6(x_2, x_4, x_5, x_54, x_6, x_7, x_8, x_9, x_10); -if (lean_obj_tag(x_55) == 0) -{ -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_56 = lean_ctor_get(x_55, 0); +lean_ctor_set(x_54, 1, x_27); +lean_ctor_set(x_54, 2, x_26); +x_55 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_55, 0, x_54); +x_56 = lean_ctor_get(x_45, 1); 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); -} -if (lean_is_scalar(x_58)) { - x_59 = lean_alloc_ctor(0, 2, 0); -} else { - x_59 = x_58; -} -lean_ctor_set(x_59, 0, x_56); -lean_ctor_set(x_59, 1, x_57); -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_55, 0); -lean_inc(x_60); -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; +lean_dec(x_45); +x_57 = lean_io_promise_resolve(x_55, x_56, x_51); +lean_dec(x_56); +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_55); - x_62 = lean_box(0); + lean_dec_ref(x_57); + x_59 = lean_box(0); } -if (lean_is_scalar(x_62)) { - x_63 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_59)) { + x_60 = lean_alloc_ctor(0, 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; -} + x_60 = x_59; } +lean_ctor_set(x_60, 0, x_26); +lean_ctor_set(x_60, 1, x_58); +return x_60; } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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: +else { -if (lean_obj_tag(x_2) == 0) +uint8_t x_61; +lean_dec(x_10); +lean_dec(x_2); +lean_dec(x_1); +x_61 = !lean_is_exclusive(x_16); +if (x_61 == 0) { -lean_object* x_10; lean_object* x_11; -x_10 = lean_box(0); -x_11 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__2___lambda__1(x_2, x_1, x_10, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -return x_11; +return x_16; } 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; -x_12 = lean_ctor_get(x_2, 0); -lean_inc(x_12); -x_13 = lean_ctor_get(x_12, 1); -lean_inc(x_13); -lean_dec(x_12); -x_14 = lean_ctor_get(x_13, 1); -lean_inc(x_14); -lean_dec(x_13); -x_15 = lean_st_ref_set(x_4, x_14, x_9); -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_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__2___lambda__1(x_2, x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_17); +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = lean_ctor_get(x_16, 0); +x_63 = lean_ctor_get(x_16, 1); +lean_inc(x_63); +lean_inc(x_62); lean_dec(x_16); -return 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_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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) { -_start: -{ -lean_object* x_11; -lean_dec(x_3); -x_11 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__2(x_1, x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -return x_11; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___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_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___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; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; @@ -22629,261 +20976,265 @@ x_29 = lean_ctor_get(x_13, 3); lean_inc(x_29); if (lean_obj_tag(x_29) == 0) { -lean_object* x_30; +lean_object* x_30; lean_object* x_31; +x_30 = 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); -x_30 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__2(x_13, x_28, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -x_16 = x_30; +x_31 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__2(x_13, x_28, x_28, x_30, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_16 = x_31; goto block_27; } else { -lean_object* x_31; lean_object* x_32; -x_31 = lean_ctor_get(x_29, 0); -lean_inc(x_31); -lean_dec(x_29); -x_32 = lean_ctor_get(x_31, 0); +lean_object* x_32; lean_object* x_33; +x_32 = lean_ctor_get(x_29, 0); lean_inc(x_32); -if (lean_obj_tag(x_32) == 0) +lean_dec(x_29); +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +if (lean_obj_tag(x_33) == 0) { -lean_object* x_33; -lean_dec(x_31); +lean_object* x_34; lean_object* x_35; +lean_dec(x_32); +x_34 = 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); -x_33 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__2(x_13, x_28, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -x_16 = x_33; +x_35 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__2(x_13, x_28, x_28, x_34, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_16 = x_35; goto block_27; } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_34 = lean_ctor_get(x_32, 0); -lean_inc(x_34); -lean_dec(x_32); -lean_inc(x_13); -x_35 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__1), 10, 1); -lean_closure_set(x_35, 0, x_13); -x_36 = lean_ctor_get(x_34, 1); +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_36 = lean_ctor_get(x_33, 0); lean_inc(x_36); -lean_dec(x_34); -x_37 = l_Lean_Language_SnapshotTask_get___rarg(x_36); -if (lean_obj_tag(x_37) == 0) +lean_dec(x_33); +lean_inc(x_13); +x_37 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__2___boxed), 11, 2); +lean_closure_set(x_37, 0, x_13); +lean_closure_set(x_37, 1, x_28); +x_38 = lean_ctor_get(x_36, 1); +lean_inc(x_38); +lean_dec(x_36); +x_39 = l_Lean_Language_SnapshotTask_get___rarg(x_38); +if (lean_obj_tag(x_39) == 0) { -lean_object* x_38; -lean_dec(x_35); -lean_dec(x_31); +lean_object* x_40; lean_object* x_41; +lean_dec(x_37); +lean_dec(x_32); +x_40 = 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); -x_38 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__2(x_13, x_28, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -x_16 = x_38; +x_41 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__2(x_13, x_28, x_28, x_40, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_16 = x_41; goto block_27; } else { -uint8_t x_39; -x_39 = !lean_is_exclusive(x_37); -if (x_39 == 0) +uint8_t x_42; +x_42 = !lean_is_exclusive(x_39); +if (x_42 == 0) { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_40 = lean_ctor_get(x_37, 0); -lean_inc(x_40); -x_41 = lean_ctor_get(x_31, 1); -lean_inc(x_41); -lean_dec(x_31); -x_42 = lean_io_promise_resolve(x_37, x_41, x_10); -lean_dec(x_41); -x_43 = lean_ctor_get(x_13, 2); +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_43 = lean_ctor_get(x_39, 0); lean_inc(x_43); +x_44 = lean_ctor_get(x_32, 1); +lean_inc(x_44); +lean_dec(x_32); +x_45 = lean_io_promise_resolve(x_39, x_44, x_10); +lean_dec(x_44); +x_46 = lean_ctor_get(x_13, 2); +lean_inc(x_46); lean_dec(x_13); -if (lean_obj_tag(x_43) == 0) +if (lean_obj_tag(x_46) == 0) { -lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_44 = lean_ctor_get(x_42, 1); -lean_inc(x_44); -lean_dec(x_42); -x_45 = lean_box(0); +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_45, 1); +lean_inc(x_47); +lean_dec(x_45); +x_48 = 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); -x_46 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__2(x_40, x_35, x_28, x_45, x_4, x_5, x_6, x_7, x_8, x_9, x_44); -lean_dec(x_40); -x_16 = x_46; +x_49 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__3(x_43, x_37, x_28, x_48, x_4, x_5, x_6, x_7, x_8, x_9, x_47); +lean_dec(x_43); +x_16 = x_49; goto block_27; } else { -lean_object* x_47; lean_object* x_48; -x_47 = lean_ctor_get(x_43, 0); -lean_inc(x_47); -lean_dec(x_43); -x_48 = lean_ctor_get(x_47, 0); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_46, 0); +lean_inc(x_50); +lean_dec(x_46); +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) { -lean_object* x_49; lean_object* x_50; lean_object* x_51; -lean_dec(x_47); -x_49 = lean_ctor_get(x_42, 1); -lean_inc(x_49); -lean_dec(x_42); -x_50 = lean_box(0); +lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_50); +x_52 = lean_ctor_get(x_45, 1); +lean_inc(x_52); +lean_dec(x_45); +x_53 = 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); -x_51 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__2(x_40, x_35, x_28, x_50, x_4, x_5, x_6, x_7, x_8, x_9, x_49); -lean_dec(x_40); -x_16 = x_51; +x_54 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__3(x_43, x_37, x_28, x_53, x_4, x_5, x_6, x_7, x_8, x_9, x_52); +lean_dec(x_43); +x_16 = x_54; goto block_27; } 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; -x_52 = lean_ctor_get(x_42, 1); -lean_inc(x_52); -lean_dec(x_42); -x_53 = lean_ctor_get(x_48, 0); -lean_inc(x_53); -lean_dec(x_48); -x_54 = lean_ctor_get(x_53, 1); -lean_inc(x_54); -lean_dec(x_53); -x_55 = l_Lean_Language_SnapshotTask_get___rarg(x_54); -x_56 = lean_ctor_get(x_47, 1); +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_55 = lean_ctor_get(x_45, 1); +lean_inc(x_55); +lean_dec(x_45); +x_56 = lean_ctor_get(x_51, 0); lean_inc(x_56); -lean_dec(x_47); -x_57 = lean_io_promise_resolve(x_55, x_56, x_52); +lean_dec(x_51); +x_57 = lean_ctor_get(x_56, 1); +lean_inc(x_57); lean_dec(x_56); -x_58 = lean_ctor_get(x_57, 0); -lean_inc(x_58); -x_59 = lean_ctor_get(x_57, 1); +x_58 = l_Lean_Language_SnapshotTask_get___rarg(x_57); +x_59 = lean_ctor_get(x_50, 1); lean_inc(x_59); -lean_dec(x_57); +lean_dec(x_50); +x_60 = lean_io_promise_resolve(x_58, x_59, x_55); +lean_dec(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); 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_60 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__2(x_40, x_35, x_28, x_58, x_4, x_5, x_6, x_7, x_8, x_9, x_59); -lean_dec(x_58); -lean_dec(x_40); -x_16 = x_60; +x_63 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__3(x_43, x_37, x_28, x_61, x_4, x_5, x_6, x_7, x_8, x_9, x_62); +lean_dec(x_61); +lean_dec(x_43); +x_16 = x_63; goto block_27; } } } else { -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_37, 0); -lean_inc(x_61); -lean_dec(x_37); -lean_inc(x_61); -x_62 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_62, 0, x_61); -x_63 = lean_ctor_get(x_31, 1); -lean_inc(x_63); -lean_dec(x_31); -x_64 = lean_io_promise_resolve(x_62, x_63, x_10); -lean_dec(x_63); -x_65 = lean_ctor_get(x_13, 2); -lean_inc(x_65); +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_64 = lean_ctor_get(x_39, 0); +lean_inc(x_64); +lean_dec(x_39); +lean_inc(x_64); +x_65 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_65, 0, x_64); +x_66 = lean_ctor_get(x_32, 1); +lean_inc(x_66); +lean_dec(x_32); +x_67 = lean_io_promise_resolve(x_65, x_66, x_10); +lean_dec(x_66); +x_68 = lean_ctor_get(x_13, 2); +lean_inc(x_68); lean_dec(x_13); -if (lean_obj_tag(x_65) == 0) +if (lean_obj_tag(x_68) == 0) { -lean_object* x_66; lean_object* x_67; lean_object* x_68; -x_66 = lean_ctor_get(x_64, 1); -lean_inc(x_66); -lean_dec(x_64); -x_67 = lean_box(0); +lean_object* x_69; lean_object* x_70; lean_object* x_71; +x_69 = lean_ctor_get(x_67, 1); +lean_inc(x_69); +lean_dec(x_67); +x_70 = 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); -x_68 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__2(x_61, x_35, x_28, x_67, x_4, x_5, x_6, x_7, x_8, x_9, x_66); -lean_dec(x_61); -x_16 = x_68; +x_71 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__3(x_64, x_37, x_28, x_70, x_4, x_5, x_6, x_7, x_8, x_9, x_69); +lean_dec(x_64); +x_16 = x_71; goto block_27; } else { -lean_object* x_69; lean_object* x_70; -x_69 = lean_ctor_get(x_65, 0); -lean_inc(x_69); -lean_dec(x_65); -x_70 = lean_ctor_get(x_69, 0); -lean_inc(x_70); -if (lean_obj_tag(x_70) == 0) +lean_object* x_72; lean_object* x_73; +x_72 = lean_ctor_get(x_68, 0); +lean_inc(x_72); +lean_dec(x_68); +x_73 = lean_ctor_get(x_72, 0); +lean_inc(x_73); +if (lean_obj_tag(x_73) == 0) { -lean_object* x_71; lean_object* x_72; lean_object* x_73; -lean_dec(x_69); -x_71 = lean_ctor_get(x_64, 1); -lean_inc(x_71); -lean_dec(x_64); -x_72 = lean_box(0); +lean_object* x_74; lean_object* x_75; lean_object* x_76; +lean_dec(x_72); +x_74 = lean_ctor_get(x_67, 1); +lean_inc(x_74); +lean_dec(x_67); +x_75 = 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); -x_73 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__2(x_61, x_35, x_28, x_72, x_4, x_5, x_6, x_7, x_8, x_9, x_71); -lean_dec(x_61); -x_16 = x_73; +x_76 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__3(x_64, x_37, x_28, x_75, x_4, x_5, x_6, x_7, x_8, x_9, x_74); +lean_dec(x_64); +x_16 = x_76; goto block_27; } else { -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_74 = lean_ctor_get(x_64, 1); -lean_inc(x_74); -lean_dec(x_64); -x_75 = lean_ctor_get(x_70, 0); -lean_inc(x_75); -lean_dec(x_70); -x_76 = lean_ctor_get(x_75, 1); -lean_inc(x_76); -lean_dec(x_75); -x_77 = l_Lean_Language_SnapshotTask_get___rarg(x_76); -x_78 = lean_ctor_get(x_69, 1); +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; +x_77 = lean_ctor_get(x_67, 1); +lean_inc(x_77); +lean_dec(x_67); +x_78 = lean_ctor_get(x_73, 0); lean_inc(x_78); -lean_dec(x_69); -x_79 = lean_io_promise_resolve(x_77, x_78, x_74); +lean_dec(x_73); +x_79 = lean_ctor_get(x_78, 1); +lean_inc(x_79); lean_dec(x_78); -x_80 = lean_ctor_get(x_79, 0); -lean_inc(x_80); -x_81 = lean_ctor_get(x_79, 1); +x_80 = l_Lean_Language_SnapshotTask_get___rarg(x_79); +x_81 = lean_ctor_get(x_72, 1); lean_inc(x_81); -lean_dec(x_79); +lean_dec(x_72); +x_82 = lean_io_promise_resolve(x_80, x_81, x_77); +lean_dec(x_81); +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); 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_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__2(x_61, x_35, x_28, x_80, x_4, x_5, x_6, x_7, x_8, x_9, x_81); -lean_dec(x_80); -lean_dec(x_61); -x_16 = x_82; +x_85 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___lambda__3(x_64, x_37, x_28, x_83, x_4, x_5, x_6, x_7, x_8, x_9, x_84); +lean_dec(x_83); +lean_dec(x_64); +x_16 = x_85; goto block_27; } } @@ -22968,66 +21319,66 @@ lean_dec(x_1); return x_17; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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) { +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -lean_object* x_10; -x_10 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_object* x_14; +x_14 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___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_3); lean_dec(x_2); -return x_10; +lean_dec(x_1); +return x_14; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_15; -x_15 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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, x_13, x_14); -lean_dec(x_5); -lean_dec(x_2); -lean_dec(x_1); -return x_15; +lean_object* x_11; +x_11 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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_7); +return x_11; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { -lean_object* x_10; -x_10 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_6); -return x_10; +lean_object* x_13; +x_13 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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); +lean_dec(x_7); +return x_13; } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6___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_11; -x_11 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__3___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_5); -return x_11; +lean_object* x_13; +x_13 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6___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); +return x_13; } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6___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_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { -lean_object* x_11; -x_11 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_object* x_13; +x_13 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__2___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_5); -return x_11; +return x_13; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___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, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___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_11; -x_11 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__2___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_object* x_10; +x_10 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___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_11; +lean_dec(x_2); +return x_10; } } LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___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) { @@ -23036,6 +21387,15 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualD lean_object* x_12; x_12 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___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_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___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_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9___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); lean_dec(x_3); lean_dec(x_1); return x_12; @@ -28577,8 +26937,8 @@ static lean_object* _init_l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_Mutu _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__1; -x_2 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__2; +x_1 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__1; +x_2 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__2; x_3 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___closed__1; x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); return x_4; @@ -42278,7 +40638,7 @@ else lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; lean_dec(x_4); x_14 = lean_array_uget(x_1, x_3); -x_15 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__3; +x_15 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__3; x_16 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_15, x_5, x_6, x_7, x_8, x_9, x_10, x_11); x_17 = lean_ctor_get(x_16, 0); lean_inc(x_17); @@ -42440,7 +40800,7 @@ else lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; lean_dec(x_4); x_14 = lean_array_uget(x_1, x_3); -x_15 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__3; +x_15 = l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__3; x_16 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_15, x_5, x_6, x_7, x_8, x_9, x_10, x_11); x_17 = lean_ctor_get(x_16, 0); lean_inc(x_17); @@ -51366,22 +49726,22 @@ l_Lean_Elab_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab lean_mark_persistent(l_Lean_Elab_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__3___closed__1); l_Lean_Elab_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__3___closed__2 = _init_l_Lean_Elab_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__3___closed__2(); lean_mark_persistent(l_Lean_Elab_addDeclarationRanges___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__3___closed__2); +l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__1 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__1(); +lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__1); +l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__2 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__2(); +lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__2); +l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__3 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__3(); +lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__3); +l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__4 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__4(); +lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__4); +l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__5 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__5(); +lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__5); +l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__6 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__6(); +lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__6); +l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__7 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__7(); +lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__5___closed__7); l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__1 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__1(); lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__1); -l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__2 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__2(); -lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__2); -l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__3 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__3(); -lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__3); -l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__4 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__4(); -lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__4); -l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__5 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__5(); -lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__5); -l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__6 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__6(); -lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__6); -l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__7 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__7(); -lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__6___closed__7); -l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__7___closed__1 = _init_l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__7___closed__1(); -lean_mark_persistent(l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__7___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(); lean_mark_persistent(l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___boxed__const__1); l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__3___closed__1 = _init_l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__3___closed__1(); diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/WF/TerminationArgument.c b/stage0/stdlib/Lean/Elab/PreDefinition/WF/TerminationArgument.c index 4d8fabb5cab6..ae94c45151c3 100644 --- a/stage0/stdlib/Lean/Elab/PreDefinition/WF/TerminationArgument.c +++ b/stage0/stdlib/Lean/Elab/PreDefinition/WF/TerminationArgument.c @@ -21,17 +21,15 @@ static lean_object* l_Lean_Elab_WF_TerminationArgument_delab_go___closed__5; static lean_object* l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7; lean_object* lean_mk_empty_array_with_capacity(lean_object*); static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___lambda__2___closed__3; +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__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_WF_TerminationArgument_delab_go___closed__3; -static lean_object* l_Lean_Elab_WF_TerminationArgument_delab_go___lambda__2___closed__1; static lean_object* l_Lean_Elab_WF_TerminationArgument_elab_parameters___closed__6; lean_object* l_Lean_PrettyPrinter_Delaborator_SubExpr_getExpr___at_Lean_PrettyPrinter_Delaborator_getExprKind___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_WF_TerminationArgument_elab___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* l_Lean_Syntax_getId(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* l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_addAutoBoundImplicits_x27___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*); -static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__3; static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__17; static lean_object* l_Lean_Elab_WF_TerminationArgument_elab_parameters___closed__1; lean_object* l___private_Init_GetElem_0__outOfBounds___rarg(lean_object*); @@ -40,8 +38,7 @@ static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__6; static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__14; lean_object* l_Lean_Expr_bvar___override(lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); -uint8_t lean_expr_has_loose_bvar(lean_object*, lean_object*); -static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_WF_TerminationArgument_delab_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_WF_TerminationArgument_elab___closed__18; uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); lean_object* l_Lean_stringToMessageData(lean_object*); @@ -49,11 +46,15 @@ static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__5; lean_object* l_Lean_Elab_Term_instInhabitedTermElabM(lean_object*); static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___lambda__2___closed__4; static lean_object* l_Lean_Elab_WF_TerminationArgument_elab_parameters___closed__7; +static lean_object* l_Lean_Elab_WF_TerminationArgument_delab_go___closed__9; static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__3; +static lean_object* l_Lean_Elab_WF_TerminationArgument_delab_go___closed__12; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_WF_TerminationArgument_delab(lean_object*, lean_object*, lean_object*, lean_object*, 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*); uint8_t l_Lean_Expr_isLambda(lean_object*); -static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__5; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1(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_WF_TerminationArgument_elab_parameters___closed__4; static lean_object* l_Lean_Elab_WF_instInhabitedTerminationArgument___closed__1; static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__2; @@ -79,21 +80,22 @@ lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_ret lean_object* l_Lean_Syntax_node2(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__9; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_PrettyPrinter_Delaborator_SubExpr_descend___at_Lean_Elab_WF_TerminationArgument_delab_go___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_Elab_WF_TerminationArgument_delab_go___closed__11; 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_WF_TerminationArgument_elab___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_TerminationArgument_delab_go___closed__14; lean_object* l_Array_append___rarg(lean_object*, lean_object*); -lean_object* l_Lean_SubExpr_Pos_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_WF_TerminationArgument_elab___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_Elab_WF_TerminationArgument_delab_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_Elab_WF_TerminationArgument_delab_go___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_Elab_Term_withoutErrToSorry___at_Lean_Elab_WF_TerminationArgument_elab___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__12; +static lean_object* l_Lean_Elab_WF_TerminationArgument_delab_go___closed__13; LEAN_EXPORT lean_object* l_Lean_Elab_WF_TerminationArgument_elab___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_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___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_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_PrettyPrinter_Delaborator_hasIdent(lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_TerminationArgument_delab_go___closed__8; +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___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_panic___at_Lean_Elab_WF_TerminationArgument_elab___spec__1___closed__1; lean_object* l_Lean_Syntax_node1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_WF_TerminationArgument_elab___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*); @@ -112,22 +114,25 @@ static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__8; static lean_object* l_Lean_Elab_WF_TerminationArgument_elab_parameters___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_WF_TerminationArgument_delab___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_WF_TerminationArgument_elab___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_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__2; +size_t lean_usize_add(size_t, size_t); +lean_object* lean_array_uget(lean_object*, size_t); static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__16; lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Expr_bindingBody_x21(lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__19; uint8_t l_Lean_Name_isSuffixOf(lean_object*, lean_object*); lean_object* l_Lean_PrettyPrinter_Delaborator_withBindingBodyUnusedName___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, 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); lean_object* l_Lean_Meta_mkLambdaFVars(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_panic___at_Lean_Elab_WF_TerminationArgument_elab___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__11; LEAN_EXPORT lean_object* l_Lean_Elab_WF_instInhabitedTerminationArgument; static lean_object* l_Lean_Elab_WF_TerminationArgument_elab___closed__10; +static lean_object* l_Lean_Elab_WF_TerminationArgument_delab_go___closed__10; lean_object* l_Lean_PrettyPrinter_delabCore___rarg(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*); static lean_object* l_Lean_Elab_WF_TerminationArgument_elab_parameters___closed__2; lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); @@ -1045,75 +1050,74 @@ lean_dec(x_1); return x_12; } } -static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__1() { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_TerminationArgument_delab_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) { _start: { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Lean", 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__2() { -_start: +uint8_t x_7; +x_7 = lean_usize_dec_lt(x_5, x_4); +if (x_7 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Parser", 6); -return x_1; -} +lean_dec(x_3); +lean_dec(x_1); +return x_6; } -static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__3() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Term", 4); -return x_1; -} +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; size_t x_13; size_t x_14; +x_8 = lean_array_uget(x_6, x_5); +x_9 = lean_unsigned_to_nat(0u); +x_10 = lean_array_uset(x_6, x_5, x_9); +x_11 = l_Lean_Syntax_getId(x_8); +lean_inc(x_1); +x_12 = l_Lean_PrettyPrinter_Delaborator_hasIdent(x_11, x_1); +lean_dec(x_11); +x_13 = 1; +x_14 = lean_usize_add(x_5, x_13); +if (x_12 == 0) +{ +lean_object* x_15; +lean_dec(x_8); +lean_inc(x_3); +x_15 = lean_array_uset(x_10, x_5, x_3); +x_5 = x_14; +x_6 = x_15; +goto _start; } -static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__4() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("hole", 4); -return x_1; +lean_object* x_17; +x_17 = lean_array_uset(x_10, x_5, x_8); +x_5 = x_14; +x_6 = x_17; +goto _start; } } -static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___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_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__1; -x_2 = l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__2; -x_3 = l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__3; -x_4 = l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___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_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_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, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___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: { -uint8_t x_9; -x_9 = l_Array_isEmpty___rarg(x_1); -if (x_9 == 0) +uint8_t x_10; +x_10 = l_Array_isEmpty___rarg(x_2); +if (x_10 == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_10 = lean_box(0); -x_11 = l_Array_back___rarg(x_10, x_1); -x_12 = l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__5; -x_13 = l_Lean_Syntax_isOfKind(x_11, x_12); +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_box(0); +x_12 = l_Array_back___rarg(x_11, x_2); +x_13 = l_Lean_Syntax_isOfKind(x_12, x_1); if (x_13 == 0) { lean_object* x_14; x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_1); -lean_ctor_set(x_14, 1, x_8); +lean_ctor_set(x_14, 0, x_2); +lean_ctor_set(x_14, 1, x_9); return x_14; } else { lean_object* x_15; -x_15 = lean_array_pop(x_1); -x_1 = x_15; +x_15 = lean_array_pop(x_2); +x_2 = x_15; goto _start; } } @@ -1121,129 +1125,85 @@ else { lean_object* x_17; x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_1); -lean_ctor_set(x_17, 1, x_8); +lean_ctor_set(x_17, 0, x_2); +lean_ctor_set(x_17, 1, x_9); return x_17; } } } -LEAN_EXPORT lean_object* l_Lean_PrettyPrinter_Delaborator_SubExpr_descend___at_Lean_Elab_WF_TerminationArgument_delab_go___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_EXPORT lean_object* l_Lean_Elab_WF_TerminationArgument_delab_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) { _start: { -uint8_t x_11; -x_11 = !lean_is_exclusive(x_4); -if (x_11 == 0) -{ -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_4, 3); -x_13 = lean_ctor_get(x_12, 1); -lean_inc(x_13); -lean_dec(x_12); -x_14 = l_Lean_SubExpr_Pos_push(x_13, x_2); -lean_dec(x_13); -x_15 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_15, 0, x_1); -lean_ctor_set(x_15, 1, x_14); -lean_ctor_set(x_4, 3, x_15); -x_16 = lean_apply_7(x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* 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; -x_17 = lean_ctor_get(x_4, 0); -x_18 = lean_ctor_get(x_4, 1); -x_19 = lean_ctor_get(x_4, 2); -x_20 = lean_ctor_get_uint8(x_4, sizeof(void*)*5); -x_21 = lean_ctor_get(x_4, 3); -x_22 = lean_ctor_get(x_4, 4); -lean_inc(x_22); -lean_inc(x_21); -lean_inc(x_19); -lean_inc(x_18); -lean_inc(x_17); -lean_dec(x_4); -x_23 = lean_ctor_get(x_21, 1); -lean_inc(x_23); -lean_dec(x_21); -x_24 = l_Lean_SubExpr_Pos_push(x_23, x_2); -lean_dec(x_23); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_1); -lean_ctor_set(x_25, 1, x_24); -x_26 = lean_alloc_ctor(0, 5, 1); -lean_ctor_set(x_26, 0, x_17); -lean_ctor_set(x_26, 1, x_18); -lean_ctor_set(x_26, 2, x_19); -lean_ctor_set(x_26, 3, x_25); -lean_ctor_set(x_26, 4, x_22); -lean_ctor_set_uint8(x_26, sizeof(void*)*5, x_20); -x_27 = lean_apply_7(x_3, x_26, x_5, x_6, x_7, x_8, x_9, x_10); -return x_27; -} +lean_object* x_11; lean_object* x_12; +x_11 = lean_array_push(x_1, x_3); +x_12 = l_Lean_Elab_WF_TerminationArgument_delab_go(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_Lean_Elab_WF_TerminationArgument_delab_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_EXPORT lean_object* l_Lean_Elab_WF_TerminationArgument_delab_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; -x_11 = lean_array_push(x_1, x_3); -x_12 = l_Lean_Elab_WF_TerminationArgument_delab_go(x_2, x_11, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_11 = lean_alloc_closure((void*)(l_Lean_Elab_WF_TerminationArgument_delab_go___lambda__1), 10, 2); +lean_closure_set(x_11, 0, x_1); +lean_closure_set(x_11, 1, x_2); +x_12 = l_Lean_PrettyPrinter_Delaborator_withBindingBodyUnusedName___rarg(x_11, x_4, x_5, x_6, x_7, x_8, x_9, x_10); return x_12; } } -static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___lambda__2___closed__1() { +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("_", 1); +x_1 = lean_mk_string_from_bytes("Lean", 4); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Elab_WF_TerminationArgument_delab_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, lean_object* x_11) { +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__2() { _start: { -lean_object* x_12; lean_object* x_13; uint8_t x_14; -lean_dec(x_4); -x_12 = l_Lean_Expr_bindingBody_x21(x_1); -lean_dec(x_1); -x_13 = lean_unsigned_to_nat(0u); -x_14 = lean_expr_has_loose_bvar(x_12, x_13); -if (x_14 == 0) +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Parser", 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__3() { +_start: { -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_object* x_25; -x_15 = lean_ctor_get(x_9, 5); -lean_inc(x_15); -x_16 = 0; -x_17 = l_Lean_SourceInfo_fromRef(x_15, x_16); -x_18 = l_Lean_Elab_WF_TerminationArgument_delab_go___lambda__2___closed__1; -lean_inc(x_17); -x_19 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_19, 0, x_17); -lean_ctor_set(x_19, 1, x_18); -x_20 = l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__5; -x_21 = l_Lean_Syntax_node1(x_17, x_20, x_19); -x_22 = lean_array_push(x_2, x_21); -x_23 = lean_alloc_closure((void*)(l_Lean_Elab_WF_TerminationArgument_delab_go), 9, 2); -lean_closure_set(x_23, 0, x_3); -lean_closure_set(x_23, 1, x_22); -x_24 = lean_unsigned_to_nat(1u); -x_25 = l_Lean_PrettyPrinter_Delaborator_SubExpr_descend___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__2(x_12, x_24, x_23, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_25; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Term", 4); +return x_1; } -else +} +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__4() { +_start: { -lean_object* x_26; lean_object* x_27; -lean_dec(x_12); -x_26 = lean_alloc_closure((void*)(l_Lean_Elab_WF_TerminationArgument_delab_go___lambda__1), 10, 2); -lean_closure_set(x_26, 0, x_2); -lean_closure_set(x_26, 1, x_3); -x_27 = l_Lean_PrettyPrinter_Delaborator_withBindingBodyUnusedName___rarg(x_26, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_27; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("hole", 4); +return x_1; } } +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___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_Elab_WF_TerminationArgument_delab_go___closed__1; +x_2 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__2; +x_3 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__3; +x_4 = l_Lean_Elab_WF_TerminationArgument_delab_go___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_Elab_WF_TerminationArgument_delab_go___closed__1() { +} +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__6() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("_", 1); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7() { _start: { lean_object* x_1; @@ -1251,7 +1211,7 @@ x_1 = lean_mk_string_from_bytes("Termination", 11); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__2() { +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__8() { _start: { lean_object* x_1; @@ -1259,19 +1219,19 @@ x_1 = lean_mk_string_from_bytes("terminationBy", 13); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__3() { +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___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_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__1; -x_2 = l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__2; -x_3 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__1; -x_4 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__2; +x_1 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__1; +x_2 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__2; +x_3 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7; +x_4 = l_Lean_Elab_WF_TerminationArgument_delab_go___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_WF_TerminationArgument_delab_go___closed__4() { +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__10() { _start: { lean_object* x_1; @@ -1279,7 +1239,7 @@ x_1 = lean_mk_string_from_bytes("termination_by", 14); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__5() { +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__11() { _start: { lean_object* x_1; @@ -1287,17 +1247,17 @@ x_1 = lean_mk_string_from_bytes("null", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__6() { +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___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_WF_TerminationArgument_delab_go___closed__5; +x_2 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__11; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7() { +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__13() { _start: { lean_object* x_1; lean_object* x_2; @@ -1306,7 +1266,7 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__8() { +static lean_object* _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__14() { _start: { lean_object* x_1; @@ -1334,10 +1294,10 @@ x_16 = lean_ctor_get(x_14, 1); lean_inc(x_16); lean_dec(x_14); x_17 = l_Lean_Expr_isLambda(x_15); +lean_dec(x_15); if (x_17 == 0) { lean_object* x_18; -lean_dec(x_15); lean_dec(x_13); x_18 = l_Lean_Elab_WF_TerminationArgument_delab_go(x_10, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16); if (lean_obj_tag(x_18) == 0) @@ -1389,410 +1349,241 @@ else { lean_object* x_27; lean_object* x_28; x_27 = lean_box(0); -x_28 = l_Lean_Elab_WF_TerminationArgument_delab_go___lambda__2(x_15, x_2, x_13, x_27, x_3, x_4, x_5, x_6, x_7, x_8, x_16); +x_28 = l_Lean_Elab_WF_TerminationArgument_delab_go___lambda__2(x_2, x_13, x_27, x_3, x_4, x_5, x_6, x_7, x_8, x_16); return x_28; } } else { -lean_object* x_29; uint8_t x_30; +lean_object* x_29; lean_dec(x_1); -x_29 = l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -x_30 = !lean_is_exclusive(x_29); -if (x_30 == 0) -{ -lean_object* x_31; lean_object* x_32; uint8_t x_33; -x_31 = lean_ctor_get(x_29, 0); -x_32 = lean_ctor_get(x_29, 1); -x_33 = l_Array_isEmpty___rarg(x_31); -if (x_33 == 0) -{ -lean_object* x_34; +lean_inc(x_8); lean_inc(x_7); -x_34 = l_Lean_PrettyPrinter_Delaborator_delab(x_3, x_4, x_5, x_6, x_7, x_8, x_32); -if (lean_obj_tag(x_34) == 0) -{ -uint8_t x_35; -x_35 = !lean_is_exclusive(x_34); -if (x_35 == 0) +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_29 = l_Lean_PrettyPrinter_Delaborator_delab(x_3, x_4, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_29) == 0) { -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; lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_36 = lean_ctor_get(x_34, 0); -x_37 = lean_ctor_get(x_7, 5); -lean_inc(x_37); +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; size_t x_40; size_t x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; +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_ctor_get(x_7, 5); +lean_inc(x_32); +x_33 = 0; +x_34 = l_Lean_SourceInfo_fromRef(x_32, x_33); +x_35 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__6; +lean_inc(x_34); +x_36 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set(x_36, 1, x_35); +x_37 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__5; +lean_inc(x_34); +x_38 = l_Lean_Syntax_node1(x_34, x_37, x_36); +x_39 = lean_array_get_size(x_2); +x_40 = lean_usize_of_nat(x_39); +lean_dec(x_39); +x_41 = 0; +lean_inc(x_30); +x_42 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1(x_30, x_37, x_38, x_40, x_41, x_2); +x_43 = l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__2(x_37, x_42, x_3, x_4, x_5, x_6, x_7, x_8, x_31); +lean_dec(x_8); lean_dec(x_7); -x_38 = 0; -x_39 = l_Lean_SourceInfo_fromRef(x_37, x_38); -x_40 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__4; -lean_inc(x_39); -lean_ctor_set_tag(x_29, 2); -lean_ctor_set(x_29, 1, x_40); -lean_ctor_set(x_29, 0, x_39); -x_41 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7; -x_42 = l_Array_append___rarg(x_41, x_31); -x_43 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__6; -lean_inc(x_39); -x_44 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_44, 0, x_39); -lean_ctor_set(x_44, 1, x_43); -lean_ctor_set(x_44, 2, x_42); -x_45 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__8; -lean_inc(x_39); -x_46 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_46, 0, x_39); -lean_ctor_set(x_46, 1, x_45); -lean_inc(x_39); -x_47 = l_Lean_Syntax_node2(x_39, x_43, x_44, x_46); -x_48 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__3; -x_49 = l_Lean_Syntax_node3(x_39, x_48, x_29, x_47, x_36); -lean_ctor_set(x_34, 0, x_49); -return x_34; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_44 = !lean_is_exclusive(x_43); +if (x_44 == 0) +{ +lean_object* x_45; uint8_t x_46; +x_45 = lean_ctor_get(x_43, 0); +x_46 = l_Array_isEmpty___rarg(x_45); +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; +x_47 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__10; +lean_inc(x_34); +x_48 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_48, 0, x_34); +lean_ctor_set(x_48, 1, x_47); +x_49 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__13; +x_50 = l_Array_append___rarg(x_49, x_45); +x_51 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__12; +lean_inc(x_34); +x_52 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_52, 0, x_34); +lean_ctor_set(x_52, 1, x_51); +lean_ctor_set(x_52, 2, x_50); +x_53 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__14; +lean_inc(x_34); +x_54 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_54, 0, x_34); +lean_ctor_set(x_54, 1, x_53); +lean_inc(x_34); +x_55 = l_Lean_Syntax_node2(x_34, x_51, x_52, x_54); +x_56 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__9; +x_57 = l_Lean_Syntax_node3(x_34, x_56, x_48, x_55, x_30); +lean_ctor_set(x_43, 0, x_57); +return x_43; } else { -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; -x_50 = lean_ctor_get(x_34, 0); -x_51 = lean_ctor_get(x_34, 1); -lean_inc(x_51); -lean_inc(x_50); -lean_dec(x_34); -x_52 = lean_ctor_get(x_7, 5); -lean_inc(x_52); -lean_dec(x_7); -x_53 = 0; -x_54 = l_Lean_SourceInfo_fromRef(x_52, x_53); -x_55 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__4; -lean_inc(x_54); -lean_ctor_set_tag(x_29, 2); -lean_ctor_set(x_29, 1, x_55); -lean_ctor_set(x_29, 0, x_54); -x_56 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7; -x_57 = l_Array_append___rarg(x_56, x_31); -x_58 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__6; -lean_inc(x_54); -x_59 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_59, 0, x_54); +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_dec(x_45); +x_58 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__10; +lean_inc(x_34); +x_59 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_59, 0, x_34); lean_ctor_set(x_59, 1, x_58); -lean_ctor_set(x_59, 2, x_57); -x_60 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__8; -lean_inc(x_54); -x_61 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_61, 0, x_54); -lean_ctor_set(x_61, 1, x_60); -lean_inc(x_54); -x_62 = l_Lean_Syntax_node2(x_54, x_58, x_59, x_61); -x_63 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__3; -x_64 = l_Lean_Syntax_node3(x_54, x_63, x_29, x_62, x_50); -x_65 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_65, 0, x_64); -lean_ctor_set(x_65, 1, x_51); -return x_65; +x_60 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__12; +x_61 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__13; +lean_inc(x_34); +x_62 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_62, 0, x_34); +lean_ctor_set(x_62, 1, x_60); +lean_ctor_set(x_62, 2, x_61); +x_63 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__9; +x_64 = l_Lean_Syntax_node3(x_34, x_63, x_59, x_62, x_30); +lean_ctor_set(x_43, 0, x_64); +return x_43; } } else { -uint8_t x_66; -lean_free_object(x_29); -lean_dec(x_31); -lean_dec(x_7); -x_66 = !lean_is_exclusive(x_34); -if (x_66 == 0) -{ -return x_34; -} -else +lean_object* x_65; lean_object* x_66; uint8_t x_67; +x_65 = lean_ctor_get(x_43, 0); +x_66 = lean_ctor_get(x_43, 1); +lean_inc(x_66); +lean_inc(x_65); +lean_dec(x_43); +x_67 = l_Array_isEmpty___rarg(x_65); +if (x_67 == 0) { -lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_67 = lean_ctor_get(x_34, 0); -x_68 = lean_ctor_get(x_34, 1); -lean_inc(x_68); -lean_inc(x_67); -lean_dec(x_34); -x_69 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_69, 0, 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; +x_68 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__10; +lean_inc(x_34); +x_69 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_69, 0, x_34); lean_ctor_set(x_69, 1, x_68); -return x_69; -} -} +x_70 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__13; +x_71 = l_Array_append___rarg(x_70, x_65); +x_72 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__12; +lean_inc(x_34); +x_73 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_73, 0, x_34); +lean_ctor_set(x_73, 1, x_72); +lean_ctor_set(x_73, 2, x_71); +x_74 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__14; +lean_inc(x_34); +x_75 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_75, 0, x_34); +lean_ctor_set(x_75, 1, x_74); +lean_inc(x_34); +x_76 = l_Lean_Syntax_node2(x_34, x_72, x_73, x_75); +x_77 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__9; +x_78 = l_Lean_Syntax_node3(x_34, x_77, x_69, x_76, x_30); +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_78); +lean_ctor_set(x_79, 1, x_66); +return x_79; } else { -lean_object* x_70; -lean_dec(x_31); -lean_inc(x_7); -x_70 = l_Lean_PrettyPrinter_Delaborator_delab(x_3, x_4, x_5, x_6, x_7, x_8, x_32); -if (lean_obj_tag(x_70) == 0) -{ -uint8_t x_71; -x_71 = !lean_is_exclusive(x_70); -if (x_71 == 0) -{ -lean_object* x_72; lean_object* x_73; uint8_t 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_72 = lean_ctor_get(x_70, 0); -x_73 = lean_ctor_get(x_7, 5); -lean_inc(x_73); -lean_dec(x_7); -x_74 = 0; -x_75 = l_Lean_SourceInfo_fromRef(x_73, x_74); -x_76 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__4; -lean_inc(x_75); -lean_ctor_set_tag(x_29, 2); -lean_ctor_set(x_29, 1, x_76); -lean_ctor_set(x_29, 0, x_75); -x_77 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__6; -x_78 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7; -lean_inc(x_75); -x_79 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_79, 0, x_75); -lean_ctor_set(x_79, 1, x_77); -lean_ctor_set(x_79, 2, x_78); -x_80 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__3; -x_81 = l_Lean_Syntax_node3(x_75, x_80, x_29, x_79, x_72); -lean_ctor_set(x_70, 0, x_81); -return x_70; +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_dec(x_65); +x_80 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__10; +lean_inc(x_34); +x_81 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_81, 0, x_34); +lean_ctor_set(x_81, 1, x_80); +x_82 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__12; +x_83 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__13; +lean_inc(x_34); +x_84 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_84, 0, x_34); +lean_ctor_set(x_84, 1, x_82); +lean_ctor_set(x_84, 2, x_83); +x_85 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__9; +x_86 = l_Lean_Syntax_node3(x_34, x_85, x_81, x_84, x_30); +x_87 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_87, 0, x_86); +lean_ctor_set(x_87, 1, x_66); +return x_87; } -else -{ -lean_object* x_82; lean_object* x_83; lean_object* x_84; uint8_t 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; -x_82 = lean_ctor_get(x_70, 0); -x_83 = lean_ctor_get(x_70, 1); -lean_inc(x_83); -lean_inc(x_82); -lean_dec(x_70); -x_84 = lean_ctor_get(x_7, 5); -lean_inc(x_84); -lean_dec(x_7); -x_85 = 0; -x_86 = l_Lean_SourceInfo_fromRef(x_84, x_85); -x_87 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__4; -lean_inc(x_86); -lean_ctor_set_tag(x_29, 2); -lean_ctor_set(x_29, 1, x_87); -lean_ctor_set(x_29, 0, x_86); -x_88 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__6; -x_89 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7; -lean_inc(x_86); -x_90 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_90, 0, x_86); -lean_ctor_set(x_90, 1, x_88); -lean_ctor_set(x_90, 2, x_89); -x_91 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__3; -x_92 = l_Lean_Syntax_node3(x_86, x_91, x_29, x_90, x_82); -x_93 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_93, 0, x_92); -lean_ctor_set(x_93, 1, x_83); -return x_93; } } else { -uint8_t x_94; -lean_free_object(x_29); +uint8_t x_88; +lean_dec(x_8); lean_dec(x_7); -x_94 = !lean_is_exclusive(x_70); -if (x_94 == 0) -{ -return x_70; -} -else +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_29); +if (x_88 == 0) { -lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_95 = lean_ctor_get(x_70, 0); -x_96 = lean_ctor_get(x_70, 1); -lean_inc(x_96); -lean_inc(x_95); -lean_dec(x_70); -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; -} -} -} +return x_29; } else { -lean_object* x_98; lean_object* x_99; uint8_t x_100; -x_98 = lean_ctor_get(x_29, 0); -x_99 = lean_ctor_get(x_29, 1); -lean_inc(x_99); -lean_inc(x_98); +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_100 = l_Array_isEmpty___rarg(x_98); -if (x_100 == 0) -{ -lean_object* x_101; -lean_inc(x_7); -x_101 = l_Lean_PrettyPrinter_Delaborator_delab(x_3, x_4, x_5, x_6, x_7, x_8, x_99); -if (lean_obj_tag(x_101) == 0) -{ -lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; uint8_t 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; -x_102 = lean_ctor_get(x_101, 0); -lean_inc(x_102); -x_103 = lean_ctor_get(x_101, 1); -lean_inc(x_103); -if (lean_is_exclusive(x_101)) { - lean_ctor_release(x_101, 0); - lean_ctor_release(x_101, 1); - x_104 = x_101; -} else { - lean_dec_ref(x_101); - x_104 = lean_box(0); -} -x_105 = lean_ctor_get(x_7, 5); -lean_inc(x_105); -lean_dec(x_7); -x_106 = 0; -x_107 = l_Lean_SourceInfo_fromRef(x_105, x_106); -x_108 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__4; -lean_inc(x_107); -x_109 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_109, 0, x_107); -lean_ctor_set(x_109, 1, x_108); -x_110 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7; -x_111 = l_Array_append___rarg(x_110, x_98); -x_112 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__6; -lean_inc(x_107); -x_113 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_113, 0, x_107); -lean_ctor_set(x_113, 1, x_112); -lean_ctor_set(x_113, 2, x_111); -x_114 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__8; -lean_inc(x_107); -x_115 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_115, 0, x_107); -lean_ctor_set(x_115, 1, x_114); -lean_inc(x_107); -x_116 = l_Lean_Syntax_node2(x_107, x_112, x_113, x_115); -x_117 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__3; -x_118 = l_Lean_Syntax_node3(x_107, x_117, x_109, x_116, x_102); -if (lean_is_scalar(x_104)) { - x_119 = lean_alloc_ctor(0, 2, 0); -} else { - x_119 = x_104; -} -lean_ctor_set(x_119, 0, x_118); -lean_ctor_set(x_119, 1, x_103); -return x_119; -} -else -{ -lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; -lean_dec(x_98); -lean_dec(x_7); -x_120 = lean_ctor_get(x_101, 0); -lean_inc(x_120); -x_121 = lean_ctor_get(x_101, 1); -lean_inc(x_121); -if (lean_is_exclusive(x_101)) { - lean_ctor_release(x_101, 0); - lean_ctor_release(x_101, 1); - x_122 = x_101; -} else { - lean_dec_ref(x_101); - x_122 = lean_box(0); -} -if (lean_is_scalar(x_122)) { - x_123 = lean_alloc_ctor(1, 2, 0); -} else { - x_123 = x_122; -} -lean_ctor_set(x_123, 0, x_120); -lean_ctor_set(x_123, 1, x_121); -return x_123; -} -} -else -{ -lean_object* x_124; -lean_dec(x_98); -lean_inc(x_7); -x_124 = l_Lean_PrettyPrinter_Delaborator_delab(x_3, x_4, x_5, x_6, x_7, x_8, x_99); -if (lean_obj_tag(x_124) == 0) -{ -lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; uint8_t 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; -x_125 = lean_ctor_get(x_124, 0); -lean_inc(x_125); -x_126 = lean_ctor_get(x_124, 1); -lean_inc(x_126); -if (lean_is_exclusive(x_124)) { - lean_ctor_release(x_124, 0); - lean_ctor_release(x_124, 1); - x_127 = x_124; -} else { - lean_dec_ref(x_124); - x_127 = lean_box(0); -} -x_128 = lean_ctor_get(x_7, 5); -lean_inc(x_128); -lean_dec(x_7); -x_129 = 0; -x_130 = l_Lean_SourceInfo_fromRef(x_128, x_129); -x_131 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__4; -lean_inc(x_130); -x_132 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_132, 0, x_130); -lean_ctor_set(x_132, 1, x_131); -x_133 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__6; -x_134 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7; -lean_inc(x_130); -x_135 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_135, 0, x_130); -lean_ctor_set(x_135, 1, x_133); -lean_ctor_set(x_135, 2, x_134); -x_136 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__3; -x_137 = l_Lean_Syntax_node3(x_130, x_136, x_132, x_135, x_125); -if (lean_is_scalar(x_127)) { - x_138 = lean_alloc_ctor(0, 2, 0); -} else { - x_138 = x_127; -} -lean_ctor_set(x_138, 0, x_137); -lean_ctor_set(x_138, 1, x_126); -return x_138; -} -else -{ -lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; -lean_dec(x_7); -x_139 = lean_ctor_get(x_124, 0); -lean_inc(x_139); -x_140 = lean_ctor_get(x_124, 1); -lean_inc(x_140); -if (lean_is_exclusive(x_124)) { - lean_ctor_release(x_124, 0); - lean_ctor_release(x_124, 1); - x_141 = x_124; -} else { - lean_dec_ref(x_124); - x_141 = lean_box(0); -} -if (lean_is_scalar(x_141)) { - x_142 = lean_alloc_ctor(1, 2, 0); -} else { - x_142 = x_141; +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_ctor_set(x_142, 0, x_139); -lean_ctor_set(x_142, 1, x_140); -return x_142; } } } } +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_TerminationArgument_delab_go___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: +{ +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_mapMUnsafe_map___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1(x_1, x_2, x_3, x_7, x_8, x_6); +lean_dec(x_2); +return x_9; } } -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___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_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_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) { _start: { -lean_object* x_9; -x_9 = l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_object* x_10; +x_10 = l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___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); -lean_dec(x_2); -return x_9; +lean_dec(x_1); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_TerminationArgument_delab_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_WF_TerminationArgument_delab_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_WF_TerminationArgument_delab___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) { @@ -1822,7 +1613,7 @@ x_20 = lean_ctor_get(x_18, 1); lean_inc(x_20); lean_dec(x_18); x_21 = lean_box(0); -x_22 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7; +x_22 = l_Lean_Elab_WF_TerminationArgument_delab_go___closed__13; x_23 = lean_alloc_closure((void*)(l_Lean_Elab_WF_TerminationArgument_delab_go), 9, 2); lean_closure_set(x_23, 0, x_10); lean_closure_set(x_23, 1, x_22); @@ -2020,18 +1811,6 @@ l_Lean_Elab_WF_TerminationArgument_elab___closed__18 = _init_l_Lean_Elab_WF_Term lean_mark_persistent(l_Lean_Elab_WF_TerminationArgument_elab___closed__18); l_Lean_Elab_WF_TerminationArgument_elab___closed__19 = _init_l_Lean_Elab_WF_TerminationArgument_elab___closed__19(); lean_mark_persistent(l_Lean_Elab_WF_TerminationArgument_elab___closed__19); -l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__1 = _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__1(); -lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__1); -l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__2 = _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__2(); -lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__2); -l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__3 = _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__3(); -lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__3); -l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__4 = _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__4(); -lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__4); -l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__5 = _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__5(); -lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Elab_WF_TerminationArgument_delab_go___spec__1___closed__5); -l_Lean_Elab_WF_TerminationArgument_delab_go___lambda__2___closed__1 = _init_l_Lean_Elab_WF_TerminationArgument_delab_go___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Elab_WF_TerminationArgument_delab_go___lambda__2___closed__1); l_Lean_Elab_WF_TerminationArgument_delab_go___closed__1 = _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__1(); lean_mark_persistent(l_Lean_Elab_WF_TerminationArgument_delab_go___closed__1); l_Lean_Elab_WF_TerminationArgument_delab_go___closed__2 = _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__2(); @@ -2048,6 +1827,18 @@ l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7 = _init_l_Lean_Elab_WF_T lean_mark_persistent(l_Lean_Elab_WF_TerminationArgument_delab_go___closed__7); l_Lean_Elab_WF_TerminationArgument_delab_go___closed__8 = _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__8(); lean_mark_persistent(l_Lean_Elab_WF_TerminationArgument_delab_go___closed__8); +l_Lean_Elab_WF_TerminationArgument_delab_go___closed__9 = _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__9(); +lean_mark_persistent(l_Lean_Elab_WF_TerminationArgument_delab_go___closed__9); +l_Lean_Elab_WF_TerminationArgument_delab_go___closed__10 = _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__10(); +lean_mark_persistent(l_Lean_Elab_WF_TerminationArgument_delab_go___closed__10); +l_Lean_Elab_WF_TerminationArgument_delab_go___closed__11 = _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__11(); +lean_mark_persistent(l_Lean_Elab_WF_TerminationArgument_delab_go___closed__11); +l_Lean_Elab_WF_TerminationArgument_delab_go___closed__12 = _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__12(); +lean_mark_persistent(l_Lean_Elab_WF_TerminationArgument_delab_go___closed__12); +l_Lean_Elab_WF_TerminationArgument_delab_go___closed__13 = _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__13(); +lean_mark_persistent(l_Lean_Elab_WF_TerminationArgument_delab_go___closed__13); +l_Lean_Elab_WF_TerminationArgument_delab_go___closed__14 = _init_l_Lean_Elab_WF_TerminationArgument_delab_go___closed__14(); +lean_mark_persistent(l_Lean_Elab_WF_TerminationArgument_delab_go___closed__14); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Lean/Elab/Quotation.c b/stage0/stdlib/Lean/Elab/Quotation.c index 31a2c0d26af0..cd4f007f4717 100644 --- a/stage0/stdlib/Lean/Elab/Quotation.c +++ b/stage0/stdlib/Lean/Elab/Quotation.c @@ -106,7 +106,6 @@ uint8_t l_List_all___rarg(lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_quoteSyntax___spec__23___closed__54; LEAN_EXPORT lean_object* l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_deduplicate___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_sequenceMap_loop___at_Lean_Elab_Term_Quotation_match__syntax_expand___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___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___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getSepStxFromSplice___closed__23; static lean_object* l_Lean_Elab_Term_Quotation_mkSyntaxQuotation___closed__21; @@ -255,6 +254,7 @@ lean_object* l_Lean_Elab_Term_adaptExpander(lean_object*, lean_object*, lean_obj LEAN_EXPORT lean_object* l_List_beq___at___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___spec__5___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_Quotation___aux__Lean__Elab__Quotation______macroRules__Lean__Elab__Term__Quotation__commandElab__stx__quot____1___closed__40; LEAN_EXPORT lean_object* l_List_mapTR_loop___at___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_compileStxMatch___spec__10___boxed(lean_object*, lean_object*, 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*); static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___spec__9___closed__7; static lean_object* l___regBuiltin_Lean_Elab_Term_Quotation_elabQuot__1____x40_Lean_Elab_Quotation___hyg_6424____closed__3; static lean_object* l___private_Lean_Elab_Quotation_0__Lean_Elab_Term_Quotation_getHeadInfo___lambda__8___closed__1; @@ -11093,7 +11093,7 @@ static lean_object* _init_l_Array_forInUnsafe_loop___at___private_Lean_Elab_Quot _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1___rarg___boxed), 8, 0); +x_1 = lean_alloc_closure((void*)(l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__12___rarg___boxed), 8, 0); return x_1; } } diff --git a/stage0/stdlib/Lean/Elab/SyntheticMVars.c b/stage0/stdlib/Lean/Elab/SyntheticMVars.c index 53374ff5f08e..191a839750aa 100644 --- a/stage0/stdlib/Lean/Elab/SyntheticMVars.c +++ b/stage0/stdlib/Lean/Elab/SyntheticMVars.c @@ -44,7 +44,6 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Synth LEAN_EXPORT lean_object* l_Lean_Elab_Term_withSynthesizeLight___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_insert___at_Lean_instantiateMVarDeclMVars___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Elab_Term_instInhabitedPostponeBehavior; -lean_object* l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_filterAuxM___at___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_synthesizeSyntheticMVarsStep___spec__1___lambda__2___closed__2; static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_SyntheticMVars___hyg_6628____closed__15; extern lean_object* l_Lean_maxRecDepthErrorMessage; @@ -111,6 +110,7 @@ static lean_object* l___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_synth LEAN_EXPORT lean_object* l_Lean_Elab_Term_runTactic___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_Elab_Term_reportStuckSyntheticMVar___closed__2; LEAN_EXPORT lean_object* l_List_elem___at___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_throwStuckAtUniverseCnstr___spec__3___boxed(lean_object*, 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_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_throwStuckAtUniverseCnstr___spec__16___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_forInUnsafe_loop___at___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_throwStuckAtUniverseCnstr___spec__13(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_logException___at_Lean_Elab_Term_exceptionToSorry___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -17345,7 +17345,7 @@ static lean_object* _init_l___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term 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_closure((void*)(l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1___rarg___boxed), 8, 1); +x_3 = lean_alloc_closure((void*)(l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__12___rarg___boxed), 8, 1); lean_closure_set(x_3, 0, x_2); return x_3; } diff --git a/stage0/stdlib/Lean/Elab/Tactic/Basic.c b/stage0/stdlib/Lean/Elab/Tactic/Basic.c index b17cc6edb3d9..c20d515cca7c 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Basic.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Basic.c @@ -17,7 +17,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_tagUntaggedGoals(lean_object*, lean_ static lean_object* l_Lean_Elab_Tactic_evalTactic_handleEx___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_getMainModule(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkSorry(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__8; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instAlternativeTacticM___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_format_pretty(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Basic_0__Lean_Elab_Tactic_TacticM_runCore_x27___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -43,13 +42,15 @@ LEAN_EXPORT uint8_t l_Lean_Elab_Term_withoutTacticIncrementality___at_Lean_Elab_ LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__1___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_instMonadTacticM___closed__4; lean_object* l_Lean_log___at___private_Lean_Meta_Instances_0__Lean_Meta_computeSynthOrder___spec__6(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__8; LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Basic_0__Lean_Elab_Tactic_TacticM_runCore_x27(lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_evalTactic___spec__3___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_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__6(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_Basic___hyg_5845____closed__6; LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Tactic_evalTactic___spec__8(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_evalTactic_eval___spec__3___closed__4; static lean_object* l_Lean_Elab_getResetInfoTrees___at_Lean_Elab_Tactic_withTacticInfoContext___spec__2___rarg___closed__1; +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__7(lean_object*, 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_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__10; LEAN_EXPORT lean_object* l_Lean_MVarId_isAssigned___at_Lean_Elab_Tactic_pruneSolvedGoals___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_Elab_Tactic_ensureHasNoMVars(lean_object*, 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_mkInitialTacticInfo___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_object*); @@ -60,6 +61,7 @@ lean_object* l_Lean_profileitIOUnsafe___rarg(lean_object*, lean_object*, lean_ob LEAN_EXPORT uint8_t l_Lean_Elab_Tactic_Context_recover___default; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instOrElseTacticM(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_SavedState_restore___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_Elab_Tactic_instInhabitedTacticParsedSnapshot; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic___lambda__4(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_maxRecDepthErrorMessage; static lean_object* l_Lean_Elab_Tactic_mkTacticAttribute___closed__11; @@ -67,6 +69,7 @@ lean_object* l_Lean_indentD(lean_object*); double lean_float_div(double, double); static lean_object* l_Lean_Elab_Tactic_evalTactic___lambda__6___closed__1; static lean_object* l_Lean_Elab_Tactic_instAlternativeTacticM___closed__1; +lean_object* lean_io_promise_new(lean_object*); uint8_t l_Lean_Exception_isInterrupt(lean_object*); static lean_object* l_Lean_Elab_Tactic_instAlternativeTacticM___lambda__1___closed__2; lean_object* l_Lean_Syntax_formatStxAux(lean_object*, uint8_t, lean_object*, lean_object*); @@ -77,20 +80,21 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_liftMetaTactic___lambda__1(lean_obje LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_evalTactic___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_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at_Lean_Elab_Tactic_withTacticInfoContext___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*); +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__4; lean_object* l_Lean_MessageData_joinSep(lean_object*, lean_object*); static lean_object* l_Lean_Elab_throwAbortTactic___at_Lean_Elab_Tactic_done___spec__1___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Elab_Tactic_closeUsingOrAdmit___spec__2(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_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__16; LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at_Lean_Elab_Tactic_withMacroExpansion___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_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_handleEx(lean_object*, 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_throwUnsupportedSyntax___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__6___rarg___closed__1; -static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__1; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_evalTactic___spec__3___lambda__4___boxed(lean_object**); lean_object* l_Lean_Name_toString(lean_object*, uint8_t); lean_object* l_Lean_Syntax_getId(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_tacticElabAttribute; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instMonadBacktrackSavedStateTacticM___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_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__13; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845_(lean_object*); lean_object* l_Lean_PersistentArray_push___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_mkTacticAttribute___closed__10; lean_object* lean_array_push(lean_object*, lean_object*); @@ -103,6 +107,7 @@ static lean_object* l_Lean_Elab_Tactic_getNameOfIdent_x27___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instMonadExceptExceptionTacticM___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 lean_usize_dec_eq(size_t, size_t); static lean_object* l_Lean_Elab_Tactic_mkTacticAttribute___closed__3; +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__7; LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_evalTactic_handleEx___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_Tactic_mkTacticInfo(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_Term_instMonadTermElabM; @@ -120,7 +125,6 @@ static lean_object* l_Lean_Elab_Tactic_instMonadExceptExceptionTacticM___closed_ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_getMainGoal(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_instMonadBacktrackSavedStateTacticM___closed__3; static lean_object* l_Lean_logAt___at_Lean_Elab_Tactic_closeUsingOrAdmit___spec__2___lambda__2___closed__1; -static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__12; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_focus(lean_object*); uint8_t lean_float_decLt(double, double); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_liftMetaFinishingTactic___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -131,9 +135,9 @@ LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_evalTactic LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_throwNoGoalsToBeSolved___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* l_Lean_MessageData_hasSyntheticSorry(lean_object*); LEAN_EXPORT lean_object* l_Lean_instantiateMVars___at_Lean_Elab_Tactic_getMainTarget___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_Tactic_withRestoreOrSaveFull___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_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_getMainTag(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*); +uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_Tactic_evalTactic_handleEx___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_Elab_Tactic_getMainModule___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_tryTactic_x3f(lean_object*); @@ -146,11 +150,14 @@ lean_object* l_Lean_Expr_mvar___override(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instMonadBacktrackSavedStateTacticM___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_withInfoTreeContext___at_Lean_Elab_Tactic_withTacticInfoContext___spec__1(lean_object*); LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_Tactic_evalTactic_handleEx___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_io_promise_result(lean_object*); uint8_t l___private_Lean_Util_Trace_0__Lean_checkTraceOption(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MetavarContext_setMVarUserName(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_expandEval___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_withTraceNode___at_Lean_Elab_Tactic_evalTactic___spec__3___lambda__3___closed__1; static lean_object* l_Lean_Elab_Tactic_mkTacticAttribute___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_isIncrementalElab___at_Lean_Elab_Tactic_evalTactic_eval___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_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_SavedState_restore(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_Elab_throwAbortTactic___at_Lean_Elab_Tactic_done___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Elab_Tactic_saveTacticInfoForToken___spec__1(lean_object*); @@ -177,7 +184,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Tactic_evalTactic static lean_object* l_Lean_Elab_Term_reportUnsolvedGoals___closed__6; 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_InternalExceptionId_getName(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__4; static lean_object* l_Lean_Elab_Term_reportUnsolvedGoals___closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_eval___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_throwError___at_Lean_Elab_Tactic_instAlternativeTacticM___spec__1(lean_object*); @@ -185,18 +191,20 @@ lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_reportUnsolvedGoals___closed__3; static lean_object* l_Lean_Elab_Tactic_instMonadTacticM___closed__6; lean_object* l_List_appendTR___rarg(lean_object*, lean_object*); +lean_object* lean_io_promise_resolve(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_getCurrMacroScope___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_saveState___rarg___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_Lean_Elab_Tactic_getNameOfIdent_x27(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instMonadExceptExceptionTacticM___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_Tactic_getGoals___rarg(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_Basic___hyg_5845____closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_mkTacticAttribute(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_getUnsolvedGoals(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_focusAndDone___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_Elab_Tactic_instMonadExceptExceptionTacticM___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instMonadTacticM___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_task_pure(lean_object*); +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__11; static lean_object* l_Lean_Elab_Tactic_evalTactic___lambda__6___closed__8; static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_evalTactic___spec__3___lambda__4___closed__1; lean_object* lean_st_ref_take(lean_object*, lean_object*); @@ -205,7 +213,7 @@ LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_Tactic_tagUntaggedGoal lean_object* l_liftExcept___at_Lean_Elab_liftMacroM___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withTacticInfoContext___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*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_expandEval___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_evalTactic_expandEval___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_throwError___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__4(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_expandMacroImpl_x3f(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_evalTactic_throwExs___closed__2; @@ -227,6 +235,7 @@ lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(le LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_getGoals(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_getGoals___rarg___boxed(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*); +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__15; lean_object* l_Lean_MessageLog_toList(lean_object*); static double l_Lean_withTraceNode___at_Lean_Elab_Tactic_evalTactic___spec__3___lambda__4___closed__5; LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Elab_Tactic_closeUsingOrAdmit___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*); @@ -253,6 +262,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withMainContext___rarg(lean_object*, LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instMonadBacktrackSavedStateTacticM; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic___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_Lean_Elab_withMacroExpansionInfo___at_Lean_Elab_Tactic_adaptExpander___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_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_expandEval___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_Lean_Elab_withMacroExpansionInfo___at_Lean_Elab_Tactic_withMacroExpansion___spec__1(lean_object*); static lean_object* l_Lean_Elab_Tactic_instAlternativeTacticM___closed__3; LEAN_EXPORT lean_object* l_Lean_log___at_Lean_Elab_Tactic_closeUsingOrAdmit___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*); @@ -273,15 +283,16 @@ uint8_t l_Lean_MessageData_hasTag(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_evalTactic___lambda__6___closed__7; LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_withMainContext___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_object* l_Lean_Elab_Term_saveState___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__15; lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_getMainDecl(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_Basic___hyg_8161____closed__14; lean_object* l_Lean_Name_append(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_orElse(lean_object*); LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Elab_Tactic_closeUsingOrAdmit___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_Elab_Tactic_evalTactic_eval(lean_object*, lean_object*, lean_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_mono_nanos_now(lean_object*); static lean_object* l_Lean_Elab_Tactic_evalTactic___lambda__6___closed__4; +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__6; static lean_object* l_List_forIn_loop___at_Lean_Elab_Tactic_evalTactic_handleEx___spec__4___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_closeMainGoal___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_Tactic_instAlternativeTacticM___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -313,7 +324,6 @@ extern lean_object* l_Lean_trace_profiler_threshold; uint8_t l_Lean_MetavarContext_isAnonymousMVar(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_ensureHasNoMVars___closed__1; static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_evalTactic___spec__3___lambda__4___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5887_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_liftMetaTacticAux(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_evalTactic_expandEval___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_Lean_Elab_withInfoTreeContext___at_Lean_Elab_Tactic_evalTactic_eval___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -322,11 +332,13 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Basic_0__Lean_Elab_Tactic_ static lean_object* l_Lean_Elab_Tactic_run___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_reportUnsolvedGoals(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MVarId_assign___at_Lean_Elab_Tactic_closeMainGoal___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*); +extern lean_object* l_Lean_Language_Snapshot_Diagnostics_empty; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___at_Lean_Elab_Tactic_evalTactic_eval___spec__3(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_Elab_Term_withoutTacticIncrementality___at_Lean_Elab_Tactic_evalTactic_eval___spec__3___closed__2; static lean_object* l_Lean_Elab_Tactic_ensureHasNoMVars___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Elab_isAbortTacticException(lean_object*); +lean_object* lean_task_get_own(lean_object*); extern lean_object* l_Std_Format_defWidth; LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at_Lean_Elab_Tactic_withMacroExpansion___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*); static lean_object* l_Lean_Elab_goalsToMessageData___closed__2; @@ -343,7 +355,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic___lambda__2___boxed(lean_ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_throwNoGoalsToBeSolved(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_focusAndDone___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_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5887____closed__1; double l_Float_ofScientific(lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__6___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_pruneSolvedGoals___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -352,11 +363,11 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_saveState___rarg(lean_object*, lean_ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_getNameOfIdent_x27___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_closeUsingOrAdmit(lean_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_Elab_Tactic_evalTactic___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161_(lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_evalTactic___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*); extern lean_object* l_Lean_Core_interruptExceptionId; LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Elab_Tactic_closeUsingOrAdmit___spec__2___lambda__2___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_withMainContext___spec__1(lean_object*); -static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__16; static lean_object* l_Lean_Elab_Tactic_throwNoGoalsToBeSolved___rarg___closed__1; LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_Tactic_tagUntaggedGoals___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withTacticInfoContext(lean_object*); @@ -368,7 +379,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_mkTacticInfo___boxed(lean_object*, l LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__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_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_evalTactic___spec__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_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Tactic_evalTactic___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_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__14; static lean_object* l_Lean_Elab_isIncrementalElab___at_Lean_Elab_Tactic_evalTactic_eval___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic___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_Elab_Tactic_getCurrMacroScope___rarg___boxed(lean_object*, lean_object*, lean_object*); @@ -386,14 +396,16 @@ lean_object* lean_environment_main_module(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_evalTactic___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_instMonadTacticM___closed__2; lean_object* l_Lean_PersistentHashMap_insert___at_Lean_MVarId_assign___spec__1(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_expandEval___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_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_expandEval___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_ReaderT_instFunctorOfMonad___rarg(lean_object*); lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___at_Lean_Elab_Tactic_evalTactic_eval___spec__3___lambda__2(lean_object*, lean_object*); static lean_object* l_Lean_logAt___at_Lean_Elab_Tactic_closeUsingOrAdmit___spec__2___closed__2; +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8203____closed__1; LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Elab_Tactic_saveTacticInfoForToken___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_List_forM___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__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_indentExpr(lean_object*); +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__3; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_evalTactic_throwExs___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_addTrace___at_Lean_Elab_Tactic_evalTactic_handleEx___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___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_evalTactic___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*); @@ -402,10 +414,10 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withMacroExpansion(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Tactic_evalTactic___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_List_forIn_loop___at_Lean_Elab_Tactic_tagUntaggedGoals___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_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at_Lean_Elab_Tactic_withMacroExpansion___spec__1___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_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__2; uint8_t l_Lean_NameSet_contains(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_reportUnsolvedGoals___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_closeMainGoal___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_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__12; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_focus___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_KVMap_getBool(lean_object*, lean_object*, uint8_t); lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -415,19 +427,20 @@ LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_evalTa static lean_object* l_Lean_Elab_Tactic_evalTactic___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withCaseRef___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___at_Lean_Elab_Tactic_evalTactic_eval___spec__3___lambda__2___boxed(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__13; lean_object* l_Lean_ResolveName_resolveGlobalName(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_evalTactic___lambda__4___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_handleEx___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_loop___at_Lean_Elab_Tactic_tagUntaggedGoals___spec__2___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withMainContext(lean_object*); +lean_object* l_Lean_Syntax_getRange_x3f(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___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_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8203_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwAbortTactic___at_Lean_Elab_Tactic_done___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_withTraceNode___at_Lean_Elab_Tactic_evalTactic___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*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_instAlternativeTacticM___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_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__10; extern lean_object* l_Lean_Elab_incrementalAttr; +static lean_object* l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__2; static lean_object* l_Lean_Elab_Tactic_instOrElseTacticM___closed__1; static lean_object* l_Lean_Elab_Tactic_evalTactic_handleEx___closed__2; lean_object* l_List_reverse___rarg(lean_object*); @@ -447,10 +460,8 @@ static lean_object* l_Lean_Elab_Tactic_instAlternativeTacticM___closed__2; static lean_object* l_Lean_Elab_Tactic_instMonadTacticM___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instAlternativeTacticM; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_closeMainGoal___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_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__11; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_done___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_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__5; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_evalTactic___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_Elab_withInfoTreeContext___at_Lean_Elab_Tactic_withMacroExpansion___spec__2(lean_object*); extern lean_object* l_Lean_trace_profiler; @@ -458,6 +469,8 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_getMainModule___rarg(lean_object*, l static double l_Lean_addTrace___at_Lean_Elab_Tactic_evalTactic_handleEx___spec__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_mkInitialTacticInfo(lean_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_filterAuxM___at_Lean_Elab_Tactic_pruneSolvedGoals___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* l_Lean_Language_SnapshotTask_get___rarg(lean_object*); +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__9; static lean_object* l_Lean_Elab_Tactic_getNameOfIdent_x27___closed__1; lean_object* lean_io_error_to_string(lean_object*); lean_object* l_Lean_KeyedDeclsAttribute_getEntries___rarg(lean_object*, lean_object*, lean_object*); @@ -476,18 +489,16 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withTacticInfoContext___rarg(lean_ob LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__5___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_Term_reportUnsolvedGoals___closed__1; lean_object* lean_string_append(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___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*, lean_object*); static lean_object* l_Lean_Elab_Tactic_mkTacticAttribute___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at_Lean_Elab_Tactic_withTacticInfoContext___spec__2___rarg___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_instMonadExceptExceptionTacticM___closed__2; +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__2; static lean_object* l_Lean_Elab_Tactic_evalTactic___lambda__4___closed__4; lean_object* lean_array_get_size(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_handleEx___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_Lean_Elab_Tactic_withRestoreOrSaveFull___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_Elab_Tactic_withRestoreOrSaveFull___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_EXPORT lean_object* l_Lean_Elab_Tactic_ensureHasNoMVars___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_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__9; static lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___at_Lean_Elab_Tactic_evalTactic_eval___spec__3___closed__3; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___rarg___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 l___private_Lean_Message_0__Lean_beqMessageSeverity____x40_Lean_Message___hyg_103_(uint8_t, uint8_t); 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*); @@ -501,10 +512,12 @@ lean_object* lean_nat_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_liftMetaTactic1(lean_object*, 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_evalTactic___spec__3___lambda__3___boxed(lean_object**); static lean_object* l_Lean_Elab_Tactic_evalTactic___lambda__6___closed__2; +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instMonadTacticM___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_evalTactic___lambda__6___closed__3; static lean_object* l_Lean_Elab_Tactic_evalTactic___lambda__4___closed__6; uint8_t l_Lean_Exception_isRuntime(lean_object*); +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic___lambda__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_Elab_Term_withoutTacticIncrementality___at_Lean_Elab_Tactic_evalTactic_eval___spec__3___lambda__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_SavedState_restore(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -521,7 +534,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at_Lean_Elab_Tactic_wit static lean_object* l_Lean_Elab_Tactic_instMonadTacticM___closed__3; LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_run___spec__1(lean_object*); LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_Tactic_tagUntaggedGoals___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_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__7; static lean_object* l_List_forIn_loop___at_Lean_Elab_Tactic_evalTactic_handleEx___spec__4___closed__2; lean_object* l_Lean_MessageLog_add(lean_object*, lean_object*); lean_object* l_ReaderT_instMonad___rarg(lean_object*); @@ -529,11 +541,12 @@ extern lean_object* l_Lean_Elab_abortTacticExceptionId; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_setGoals___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*); double lean_float_sub(double, double); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___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_Elab_Tactic_withRestoreOrSaveFull___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*); uint8_t l_Lean_Expr_hasExprMVar(lean_object*); static lean_object* l_Lean_Elab_goalsToMessageData___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_tryTactic___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_Tactic_withoutRecover(lean_object*); +lean_object* l_Array_get_x3f___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_admitGoal___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: { @@ -2718,347 +2731,453 @@ lean_dec(x_3); return x_13; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___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_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___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_11; -x_11 = lean_apply_7(x_1, 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; lean_object* x_14; uint8_t x_15; -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_get(x_3, x_13); -x_15 = !lean_is_exclusive(x_14); -if (x_15 == 0) +lean_object* x_13; +lean_inc(x_5); +x_13 = lean_apply_2(x_1, x_4, x_5); +if (lean_obj_tag(x_2) == 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_12); -lean_ctor_set(x_17, 1, x_16); -lean_ctor_set(x_14, 0, x_17); -return x_14; -} -else +lean_object* x_14; lean_object* x_15; +x_14 = lean_box(0); +x_15 = l_Lean_Elab_Term_withRestoreOrSaveFull___rarg(x_14, x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_15) == 0) { -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_12); -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 +lean_object* x_16; lean_object* x_17; uint8_t x_18; +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) { -uint8_t x_22; -x_22 = !lean_is_exclusive(x_11); -if (x_22 == 0) +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_16, 1); +x_20 = lean_st_ref_get(x_5, x_17); +lean_dec(x_5); +x_21 = !lean_is_exclusive(x_20); +if (x_21 == 0) { -return x_11; +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_19); +lean_ctor_set(x_23, 1, x_22); +lean_ctor_set(x_16, 1, x_23); +lean_ctor_set(x_20, 0, x_16); +return x_20; } 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_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_24 = lean_ctor_get(x_20, 0); +x_25 = lean_ctor_get(x_20, 1); +lean_inc(x_25); 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_dec(x_20); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_19); +lean_ctor_set(x_26, 1, x_24); +lean_ctor_set(x_16, 1, x_26); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_16); +lean_ctor_set(x_27, 1, x_25); +return x_27; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___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, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: +else { -lean_object* x_12; lean_object* x_13; -x_12 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_withRestoreOrSaveFull___rarg___lambda__1___boxed), 10, 1); -lean_closure_set(x_12, 0, x_4); -x_13 = lean_apply_10(x_1, x_12, x_2, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_13; -} +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_16, 0); +x_29 = lean_ctor_get(x_16, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_16); +x_30 = lean_st_ref_get(x_5, x_17); +lean_dec(x_5); +x_31 = lean_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_ctor_get(x_30, 1); +lean_inc(x_32); +if (lean_is_exclusive(x_30)) { + lean_ctor_release(x_30, 0); + lean_ctor_release(x_30, 1); + x_33 = x_30; +} else { + lean_dec_ref(x_30); + x_33 = lean_box(0); } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___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, lean_object* x_11, lean_object* x_12) { -_start: -{ -lean_object* x_13; -x_13 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_withRestoreOrSaveFull___rarg___lambda__2), 11, 3); -lean_closure_set(x_13, 0, x_1); -lean_closure_set(x_13, 1, x_4); -lean_closure_set(x_13, 2, x_5); -if (lean_obj_tag(x_2) == 0) -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_box(0); -x_15 = l_Lean_Elab_Term_withRestoreOrSaveFull___rarg(x_14, x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -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; +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_29); +lean_ctor_set(x_34, 1, x_31); +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_28); +lean_ctor_set(x_35, 1, x_34); +if (lean_is_scalar(x_33)) { + x_36 = lean_alloc_ctor(0, 2, 0); +} else { + x_36 = x_33; } -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; +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_32); +return x_36; } } else { -uint8_t x_20; -x_20 = !lean_is_exclusive(x_15); -if (x_20 == 0) +uint8_t x_37; +lean_dec(x_5); +x_37 = !lean_is_exclusive(x_15); +if (x_37 == 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_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_15, 0); +x_39 = lean_ctor_get(x_15, 1); +lean_inc(x_39); +lean_inc(x_38); 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; +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_24; -x_24 = !lean_is_exclusive(x_2); -if (x_24 == 0) +uint8_t x_41; +x_41 = !lean_is_exclusive(x_2); +if (x_41 == 0) { -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_2, 0); -x_26 = !lean_is_exclusive(x_25); -if (x_26 == 0) +lean_object* x_42; uint8_t x_43; +x_42 = lean_ctor_get(x_2, 0); +x_43 = !lean_is_exclusive(x_42); +if (x_43 == 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_27, 0); -lean_inc(x_28); -lean_dec(x_27); -lean_ctor_set(x_25, 1, x_28); -x_29 = l_Lean_Elab_Term_withRestoreOrSaveFull___rarg(x_2, x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_29) == 0) +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_42, 1); +x_45 = lean_ctor_get(x_44, 0); +lean_inc(x_45); +lean_dec(x_44); +lean_ctor_set(x_42, 1, x_45); +x_46 = l_Lean_Elab_Term_withRestoreOrSaveFull___rarg(x_2, x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_46) == 0) { -uint8_t x_30; -x_30 = !lean_is_exclusive(x_29); -if (x_30 == 0) +lean_object* x_47; lean_object* x_48; uint8_t x_49; +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_is_exclusive(x_47); +if (x_49 == 0) { -return x_29; +lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_50 = lean_ctor_get(x_47, 1); +x_51 = lean_st_ref_get(x_5, x_48); +lean_dec(x_5); +x_52 = !lean_is_exclusive(x_51); +if (x_52 == 0) +{ +lean_object* x_53; lean_object* x_54; +x_53 = lean_ctor_get(x_51, 0); +x_54 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_54, 0, x_50); +lean_ctor_set(x_54, 1, x_53); +lean_ctor_set(x_47, 1, x_54); +lean_ctor_set(x_51, 0, x_47); +return x_51; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_29, 0); -x_32 = lean_ctor_get(x_29, 1); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_29); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_31); -lean_ctor_set(x_33, 1, x_32); -return x_33; +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_55 = lean_ctor_get(x_51, 0); +x_56 = lean_ctor_get(x_51, 1); +lean_inc(x_56); +lean_inc(x_55); +lean_dec(x_51); +x_57 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_57, 0, x_50); +lean_ctor_set(x_57, 1, x_55); +lean_ctor_set(x_47, 1, x_57); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_47); +lean_ctor_set(x_58, 1, x_56); +return x_58; } } else { -uint8_t x_34; -x_34 = !lean_is_exclusive(x_29); -if (x_34 == 0) -{ -return x_29; +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_59 = lean_ctor_get(x_47, 0); +x_60 = lean_ctor_get(x_47, 1); +lean_inc(x_60); +lean_inc(x_59); +lean_dec(x_47); +x_61 = lean_st_ref_get(x_5, x_48); +lean_dec(x_5); +x_62 = lean_ctor_get(x_61, 0); +lean_inc(x_62); +x_63 = lean_ctor_get(x_61, 1); +lean_inc(x_63); +if (lean_is_exclusive(x_61)) { + lean_ctor_release(x_61, 0); + lean_ctor_release(x_61, 1); + x_64 = x_61; +} else { + lean_dec_ref(x_61); + x_64 = lean_box(0); } -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_29, 0); -x_36 = lean_ctor_get(x_29, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_29); -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; +x_65 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_65, 0, x_60); +lean_ctor_set(x_65, 1, x_62); +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_59); +lean_ctor_set(x_66, 1, x_65); +if (lean_is_scalar(x_64)) { + x_67 = lean_alloc_ctor(0, 2, 0); +} else { + x_67 = x_64; } +lean_ctor_set(x_67, 0, x_66); +lean_ctor_set(x_67, 1, x_63); +return x_67; } } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -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_40 = lean_ctor_get(x_39, 0); -lean_inc(x_40); -lean_dec(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); -lean_ctor_set(x_2, 0, x_41); -x_42 = l_Lean_Elab_Term_withRestoreOrSaveFull___rarg(x_2, x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_42) == 0) +uint8_t x_68; +lean_dec(x_5); +x_68 = !lean_is_exclusive(x_46); +if (x_68 == 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); -if (lean_is_exclusive(x_42)) { - lean_ctor_release(x_42, 0); - lean_ctor_release(x_42, 1); - x_45 = x_42; -} else { - lean_dec_ref(x_42); - x_45 = lean_box(0); -} -if (lean_is_scalar(x_45)) { - x_46 = lean_alloc_ctor(0, 2, 0); -} else { - x_46 = x_45; -} -lean_ctor_set(x_46, 0, x_43); -lean_ctor_set(x_46, 1, x_44); return x_46; } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_47 = lean_ctor_get(x_42, 0); -lean_inc(x_47); -x_48 = lean_ctor_get(x_42, 1); -lean_inc(x_48); -if (lean_is_exclusive(x_42)) { - lean_ctor_release(x_42, 0); - lean_ctor_release(x_42, 1); - x_49 = x_42; -} else { - lean_dec_ref(x_42); - x_49 = lean_box(0); +lean_object* x_69; lean_object* x_70; lean_object* x_71; +x_69 = lean_ctor_get(x_46, 0); +x_70 = lean_ctor_get(x_46, 1); +lean_inc(x_70); +lean_inc(x_69); +lean_dec(x_46); +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; } -if (lean_is_scalar(x_49)) { - x_50 = lean_alloc_ctor(1, 2, 0); +} +} +else +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_72 = lean_ctor_get(x_42, 0); +x_73 = lean_ctor_get(x_42, 1); +lean_inc(x_73); +lean_inc(x_72); +lean_dec(x_42); +x_74 = lean_ctor_get(x_73, 0); +lean_inc(x_74); +lean_dec(x_73); +x_75 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_75, 0, x_72); +lean_ctor_set(x_75, 1, x_74); +lean_ctor_set(x_2, 0, x_75); +x_76 = l_Lean_Elab_Term_withRestoreOrSaveFull___rarg(x_2, x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(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; lean_object* x_87; lean_object* x_88; +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 = lean_ctor_get(x_77, 0); +lean_inc(x_79); +x_80 = lean_ctor_get(x_77, 1); +lean_inc(x_80); +if (lean_is_exclusive(x_77)) { + lean_ctor_release(x_77, 0); + lean_ctor_release(x_77, 1); + x_81 = x_77; } else { - x_50 = x_49; + lean_dec_ref(x_77); + x_81 = lean_box(0); } -lean_ctor_set(x_50, 0, x_47); -lean_ctor_set(x_50, 1, x_48); -return x_50; +x_82 = lean_st_ref_get(x_5, x_78); +lean_dec(x_5); +x_83 = lean_ctor_get(x_82, 0); +lean_inc(x_83); +x_84 = lean_ctor_get(x_82, 1); +lean_inc(x_84); +if (lean_is_exclusive(x_82)) { + lean_ctor_release(x_82, 0); + lean_ctor_release(x_82, 1); + x_85 = x_82; +} else { + lean_dec_ref(x_82); + x_85 = lean_box(0); +} +x_86 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_86, 0, x_80); +lean_ctor_set(x_86, 1, x_83); +if (lean_is_scalar(x_81)) { + x_87 = lean_alloc_ctor(0, 2, 0); +} else { + x_87 = x_81; } +lean_ctor_set(x_87, 0, x_79); +lean_ctor_set(x_87, 1, x_86); +if (lean_is_scalar(x_85)) { + x_88 = lean_alloc_ctor(0, 2, 0); +} else { + x_88 = x_85; } +lean_ctor_set(x_88, 0, x_87); +lean_ctor_set(x_88, 1, x_84); +return x_88; } 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; -x_51 = lean_ctor_get(x_2, 0); -lean_inc(x_51); +lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; +lean_dec(x_5); +x_89 = lean_ctor_get(x_76, 0); +lean_inc(x_89); +x_90 = lean_ctor_get(x_76, 1); +lean_inc(x_90); +if (lean_is_exclusive(x_76)) { + lean_ctor_release(x_76, 0); + lean_ctor_release(x_76, 1); + x_91 = x_76; +} else { + lean_dec_ref(x_76); + 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 +{ +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; +x_93 = lean_ctor_get(x_2, 0); +lean_inc(x_93); lean_dec(x_2); -x_52 = lean_ctor_get(x_51, 0); -lean_inc(x_52); -x_53 = lean_ctor_get(x_51, 1); -lean_inc(x_53); -if (lean_is_exclusive(x_51)) { - lean_ctor_release(x_51, 0); - lean_ctor_release(x_51, 1); - x_54 = x_51; +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_51); - x_54 = lean_box(0); + lean_dec_ref(x_93); + x_96 = lean_box(0); } -x_55 = lean_ctor_get(x_53, 0); -lean_inc(x_55); -lean_dec(x_53); -if (lean_is_scalar(x_54)) { - x_56 = lean_alloc_ctor(0, 2, 0); +x_97 = lean_ctor_get(x_95, 0); +lean_inc(x_97); +lean_dec(x_95); +if (lean_is_scalar(x_96)) { + x_98 = lean_alloc_ctor(0, 2, 0); } else { - x_56 = x_54; + x_98 = x_96; } -lean_ctor_set(x_56, 0, x_52); -lean_ctor_set(x_56, 1, x_55); -x_57 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_57, 0, x_56); -x_58 = l_Lean_Elab_Term_withRestoreOrSaveFull___rarg(x_57, x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_58) == 0) +lean_ctor_set(x_98, 0, x_94); +lean_ctor_set(x_98, 1, x_97); +x_99 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_99, 0, x_98); +x_100 = l_Lean_Elab_Term_withRestoreOrSaveFull___rarg(x_99, x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_100) == 0) { -lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -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; +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; +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_103 = lean_ctor_get(x_101, 0); +lean_inc(x_103); +x_104 = lean_ctor_get(x_101, 1); +lean_inc(x_104); +if (lean_is_exclusive(x_101)) { + lean_ctor_release(x_101, 0); + lean_ctor_release(x_101, 1); + x_105 = x_101; } else { - lean_dec_ref(x_58); - x_61 = lean_box(0); + lean_dec_ref(x_101); + x_105 = lean_box(0); } -if (lean_is_scalar(x_61)) { - x_62 = lean_alloc_ctor(0, 2, 0); +x_106 = lean_st_ref_get(x_5, x_102); +lean_dec(x_5); +x_107 = lean_ctor_get(x_106, 0); +lean_inc(x_107); +x_108 = lean_ctor_get(x_106, 1); +lean_inc(x_108); +if (lean_is_exclusive(x_106)) { + lean_ctor_release(x_106, 0); + lean_ctor_release(x_106, 1); + x_109 = x_106; } else { - x_62 = x_61; + lean_dec_ref(x_106); + x_109 = lean_box(0); } -lean_ctor_set(x_62, 0, x_59); -lean_ctor_set(x_62, 1, x_60); -return x_62; +x_110 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_110, 0, x_104); +lean_ctor_set(x_110, 1, x_107); +if (lean_is_scalar(x_105)) { + x_111 = lean_alloc_ctor(0, 2, 0); +} else { + x_111 = x_105; +} +lean_ctor_set(x_111, 0, x_103); +lean_ctor_set(x_111, 1, x_110); +if (lean_is_scalar(x_109)) { + x_112 = lean_alloc_ctor(0, 2, 0); +} else { + x_112 = x_109; +} +lean_ctor_set(x_112, 0, x_111); +lean_ctor_set(x_112, 1, x_108); +return x_112; } else { -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); -x_64 = lean_ctor_get(x_58, 1); -lean_inc(x_64); -if (lean_is_exclusive(x_58)) { - lean_ctor_release(x_58, 0); - lean_ctor_release(x_58, 1); - x_65 = x_58; +lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; +lean_dec(x_5); +x_113 = lean_ctor_get(x_100, 0); +lean_inc(x_113); +x_114 = lean_ctor_get(x_100, 1); +lean_inc(x_114); +if (lean_is_exclusive(x_100)) { + lean_ctor_release(x_100, 0); + lean_ctor_release(x_100, 1); + x_115 = x_100; } else { - lean_dec_ref(x_58); - x_65 = lean_box(0); + lean_dec_ref(x_100); + x_115 = lean_box(0); } -if (lean_is_scalar(x_65)) { - x_66 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_115)) { + x_116 = lean_alloc_ctor(1, 2, 0); } else { - x_66 = x_65; + x_116 = x_115; } -lean_ctor_set(x_66, 0, x_63); -lean_ctor_set(x_66, 1, x_64); -return x_66; +lean_ctor_set(x_116, 0, x_113); +lean_ctor_set(x_116, 1, x_114); +return x_116; } } } @@ -3071,7 +3190,7 @@ if (lean_obj_tag(x_1) == 0) { lean_object* x_12; lean_object* x_13; x_12 = lean_box(0); -x_13 = l_Lean_Elab_Tactic_withRestoreOrSaveFull___rarg___lambda__3(x_2, x_1, x_12, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_13 = l_Lean_Elab_Tactic_withRestoreOrSaveFull___rarg___lambda__1(x_2, x_1, x_12, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_13; } else @@ -3091,7 +3210,7 @@ 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_Tactic_withRestoreOrSaveFull___rarg___lambda__3(x_2, x_1, x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_19); +x_20 = l_Lean_Elab_Tactic_withRestoreOrSaveFull___rarg___lambda__1(x_2, x_1, x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_19); lean_dec(x_18); return x_20; } @@ -3105,21 +3224,11 @@ x_2 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_withRestoreOrSaveFull___rarg return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___rarg___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_Tactic_withRestoreOrSaveFull___rarg___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_3); -lean_dec(x_2); -return x_11; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___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, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___rarg___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_Tactic_withRestoreOrSaveFull___rarg___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 = l_Lean_Elab_Tactic_withRestoreOrSaveFull___rarg___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_3); return x_13; } @@ -8627,203 +8736,1798 @@ 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; -x_78 = lean_ctor_get(x_27, 0); -x_79 = lean_ctor_get(x_27, 1); -lean_inc(x_79); +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; +x_78 = lean_ctor_get(x_27, 0); +x_79 = lean_ctor_get(x_27, 1); +lean_inc(x_79); +lean_inc(x_78); +lean_dec(x_27); +x_80 = lean_ctor_get(x_78, 1); +lean_inc(x_80); +lean_dec(x_78); +x_81 = lean_environment_main_module(x_14); +x_82 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_82, 0, x_26); +lean_ctor_set(x_82, 1, x_81); +lean_ctor_set(x_82, 2, x_20); +lean_ctor_set(x_82, 3, x_15); +lean_ctor_set(x_82, 4, x_16); +lean_ctor_set(x_82, 5, x_17); +x_83 = lean_box(0); +x_84 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_84, 0, x_80); +lean_ctor_set(x_84, 1, x_83); +x_85 = lean_apply_2(x_1, x_82, x_84); +if (lean_obj_tag(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; 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; +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_ctor_get(x_87, 0); +lean_inc(x_88); +x_89 = lean_st_ref_take(x_9, x_79); +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 = lean_ctor_get(x_90, 0); +lean_inc(x_92); +x_93 = lean_ctor_get(x_90, 2); +lean_inc(x_93); +x_94 = lean_ctor_get(x_90, 3); +lean_inc(x_94); +x_95 = lean_ctor_get(x_90, 4); +lean_inc(x_95); +x_96 = lean_ctor_get(x_90, 5); +lean_inc(x_96); +x_97 = lean_ctor_get(x_90, 6); +lean_inc(x_97); +if (lean_is_exclusive(x_90)) { + lean_ctor_release(x_90, 0); + lean_ctor_release(x_90, 1); + lean_ctor_release(x_90, 2); + lean_ctor_release(x_90, 3); + lean_ctor_release(x_90, 4); + lean_ctor_release(x_90, 5); + lean_ctor_release(x_90, 6); + x_98 = x_90; +} else { + lean_dec_ref(x_90); + x_98 = lean_box(0); +} +if (lean_is_scalar(x_98)) { + x_99 = lean_alloc_ctor(0, 7, 0); +} else { + x_99 = x_98; +} +lean_ctor_set(x_99, 0, x_92); +lean_ctor_set(x_99, 1, x_88); +lean_ctor_set(x_99, 2, x_93); +lean_ctor_set(x_99, 3, x_94); +lean_ctor_set(x_99, 4, x_95); +lean_ctor_set(x_99, 5, x_96); +lean_ctor_set(x_99, 6, x_97); +x_100 = lean_st_ref_set(x_9, x_99, x_91); +x_101 = lean_ctor_get(x_100, 1); +lean_inc(x_101); +lean_dec(x_100); +x_102 = lean_ctor_get(x_87, 1); +lean_inc(x_102); +lean_dec(x_87); +x_103 = l_List_reverse___rarg(x_102); +x_104 = l_List_forM___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__2(x_103, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_101); +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_105 = lean_ctor_get(x_104, 1); +lean_inc(x_105); +if (lean_is_exclusive(x_104)) { + lean_ctor_release(x_104, 0); + lean_ctor_release(x_104, 1); + x_106 = x_104; +} else { + lean_dec_ref(x_104); + x_106 = lean_box(0); +} +if (lean_is_scalar(x_106)) { + x_107 = lean_alloc_ctor(0, 2, 0); +} else { + x_107 = x_106; +} +lean_ctor_set(x_107, 0, x_86); +lean_ctor_set(x_107, 1, x_105); +return x_107; +} +else +{ +lean_object* x_108; +x_108 = lean_ctor_get(x_85, 0); +lean_inc(x_108); +lean_dec(x_85); +if (lean_obj_tag(x_108) == 0) +{ +lean_object* x_109; lean_object* x_110; lean_object* x_111; uint8_t x_112; +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_Lean_maxRecDepthErrorMessage; +x_112 = lean_string_dec_eq(x_110, x_111); +if (x_112 == 0) +{ +lean_object* x_113; lean_object* x_114; lean_object* x_115; +x_113 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_113, 0, x_110); +x_114 = l_Lean_MessageData_ofFormat(x_113); +x_115 = l_Lean_throwErrorAt___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__3(x_109, x_114, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_79); +return x_115; +} +else +{ +lean_object* x_116; +lean_dec(x_110); +x_116 = l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__5(x_109, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_79); +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_116; +} +} +else +{ +lean_object* x_117; +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_117 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__6___rarg(x_79); +return x_117; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalTactic_expandEval___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) { +_start: +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_io_promise_new(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); +lean_inc(x_13); +x_15 = lean_apply_10(x_2, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_14); +if (lean_obj_tag(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_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_io_promise_resolve(x_1, x_13, x_17); +lean_dec(x_13); +x_19 = !lean_is_exclusive(x_18); +if (x_19 == 0) +{ +lean_object* x_20; +x_20 = lean_ctor_get(x_18, 0); +lean_dec(x_20); +lean_ctor_set(x_18, 0, x_16); +return x_18; +} +else +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_ctor_get(x_18, 1); +lean_inc(x_21); +lean_dec(x_18); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_16); +lean_ctor_set(x_22, 1, x_21); +return x_22; +} +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_23 = lean_ctor_get(x_15, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_15, 1); +lean_inc(x_24); +lean_dec(x_15); +x_25 = lean_io_promise_resolve(x_1, x_13, x_24); +lean_dec(x_13); +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_tag(x_25, 1); +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(1, 2, 0); +lean_ctor_set(x_29, 0, x_23); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_expandEval___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_dec(x_2); +x_12 = l_Lean_Elab_Tactic_evalTactic(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_12; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; uint8_t x_3; lean_object* x_4; +x_1 = lean_box(0); +x_2 = l_Lean_Language_Snapshot_Diagnostics_empty; +x_3 = 0; +x_4 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_4, 0, x_2); +lean_ctor_set(x_4, 1, x_1); +lean_ctor_set_uint8(x_4, sizeof(void*)*2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(1u); +x_2 = lean_mk_empty_array_with_capacity(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_expandEval___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; uint8_t x_15; +x_14 = l_Lean_Elab_Tactic_saveState___rarg(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; lean_object* x_21; lean_object* 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_16 = lean_ctor_get(x_14, 0); +x_17 = lean_ctor_get(x_14, 1); +x_18 = lean_box(0); +x_19 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_19, 0, x_16); +x_20 = lean_task_pure(x_19); +x_21 = l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__1; +lean_inc(x_1); +x_22 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_1); +lean_ctor_set(x_22, 2, x_20); +x_23 = 0; +lean_inc(x_1); +x_24 = l_Lean_Syntax_getRange_x3f(x_1, x_23); +lean_inc(x_4); +x_25 = lean_io_promise_result(x_4); +lean_ctor_set(x_14, 1, x_25); +lean_ctor_set(x_14, 0, x_24); +x_26 = l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__2; +x_27 = lean_array_push(x_26, x_14); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_22); +lean_ctor_set(x_28, 1, x_27); +x_29 = lean_ctor_get(x_2, 1); +lean_inc(x_29); +lean_dec(x_2); +x_30 = lean_io_promise_resolve(x_28, x_29, x_17); +lean_dec(x_29); +if (lean_obj_tag(x_3) == 0) +{ +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, 1); +x_33 = lean_ctor_get(x_30, 0); +lean_dec(x_33); +x_34 = !lean_is_exclusive(x_7); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_7, 8); +lean_dec(x_35); +lean_ctor_set(x_30, 1, x_4); +lean_ctor_set(x_30, 0, x_18); +x_36 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_36, 0, x_30); +lean_ctor_set(x_7, 8, x_36); +x_37 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_32); +return x_37; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; uint8_t x_42; uint8_t x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; uint8_t x_49; uint8_t x_50; uint8_t x_51; uint8_t x_52; lean_object* x_53; uint8_t x_54; uint8_t x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_38 = lean_ctor_get(x_7, 0); +x_39 = lean_ctor_get(x_7, 1); +x_40 = lean_ctor_get(x_7, 2); +x_41 = lean_ctor_get_uint8(x_7, sizeof(void*)*9); +x_42 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 1); +x_43 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 2); +x_44 = lean_ctor_get(x_7, 3); +x_45 = lean_ctor_get(x_7, 4); +x_46 = lean_ctor_get(x_7, 5); +x_47 = lean_ctor_get(x_7, 6); +x_48 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 3); +x_49 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 4); +x_50 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 5); +x_51 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 6); +x_52 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 7); +x_53 = lean_ctor_get(x_7, 7); +x_54 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 8); +x_55 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 9); +lean_inc(x_53); +lean_inc(x_47); +lean_inc(x_46); +lean_inc(x_45); +lean_inc(x_44); +lean_inc(x_40); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_7); +lean_ctor_set(x_30, 1, x_4); +lean_ctor_set(x_30, 0, x_18); +x_56 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_56, 0, x_30); +x_57 = lean_alloc_ctor(0, 9, 10); +lean_ctor_set(x_57, 0, x_38); +lean_ctor_set(x_57, 1, x_39); +lean_ctor_set(x_57, 2, x_40); +lean_ctor_set(x_57, 3, x_44); +lean_ctor_set(x_57, 4, x_45); +lean_ctor_set(x_57, 5, x_46); +lean_ctor_set(x_57, 6, x_47); +lean_ctor_set(x_57, 7, x_53); +lean_ctor_set(x_57, 8, x_56); +lean_ctor_set_uint8(x_57, sizeof(void*)*9, x_41); +lean_ctor_set_uint8(x_57, sizeof(void*)*9 + 1, x_42); +lean_ctor_set_uint8(x_57, sizeof(void*)*9 + 2, x_43); +lean_ctor_set_uint8(x_57, sizeof(void*)*9 + 3, x_48); +lean_ctor_set_uint8(x_57, sizeof(void*)*9 + 4, x_49); +lean_ctor_set_uint8(x_57, sizeof(void*)*9 + 5, x_50); +lean_ctor_set_uint8(x_57, sizeof(void*)*9 + 6, x_51); +lean_ctor_set_uint8(x_57, sizeof(void*)*9 + 7, x_52); +lean_ctor_set_uint8(x_57, sizeof(void*)*9 + 8, x_54); +lean_ctor_set_uint8(x_57, sizeof(void*)*9 + 9, x_55); +x_58 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_57, x_8, x_9, x_10, x_11, x_12, x_32); +return x_58; +} +} +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; uint8_t x_63; uint8_t x_64; uint8_t x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; uint8_t x_70; uint8_t x_71; uint8_t x_72; uint8_t x_73; uint8_t x_74; lean_object* x_75; uint8_t x_76; uint8_t x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_59 = lean_ctor_get(x_30, 1); +lean_inc(x_59); +lean_dec(x_30); +x_60 = lean_ctor_get(x_7, 0); +lean_inc(x_60); +x_61 = lean_ctor_get(x_7, 1); +lean_inc(x_61); +x_62 = lean_ctor_get(x_7, 2); +lean_inc(x_62); +x_63 = lean_ctor_get_uint8(x_7, sizeof(void*)*9); +x_64 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 1); +x_65 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 2); +x_66 = lean_ctor_get(x_7, 3); +lean_inc(x_66); +x_67 = lean_ctor_get(x_7, 4); +lean_inc(x_67); +x_68 = lean_ctor_get(x_7, 5); +lean_inc(x_68); +x_69 = lean_ctor_get(x_7, 6); +lean_inc(x_69); +x_70 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 3); +x_71 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 4); +x_72 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 5); +x_73 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 6); +x_74 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 7); +x_75 = lean_ctor_get(x_7, 7); +lean_inc(x_75); +x_76 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 8); +x_77 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 9); +if (lean_is_exclusive(x_7)) { + lean_ctor_release(x_7, 0); + lean_ctor_release(x_7, 1); + lean_ctor_release(x_7, 2); + lean_ctor_release(x_7, 3); + lean_ctor_release(x_7, 4); + lean_ctor_release(x_7, 5); + lean_ctor_release(x_7, 6); + lean_ctor_release(x_7, 7); + lean_ctor_release(x_7, 8); + x_78 = x_7; +} else { + lean_dec_ref(x_7); + x_78 = lean_box(0); +} +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_18); +lean_ctor_set(x_79, 1, x_4); +x_80 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_80, 0, x_79); +if (lean_is_scalar(x_78)) { + x_81 = lean_alloc_ctor(0, 9, 10); +} else { + x_81 = x_78; +} +lean_ctor_set(x_81, 0, x_60); +lean_ctor_set(x_81, 1, x_61); +lean_ctor_set(x_81, 2, x_62); +lean_ctor_set(x_81, 3, x_66); +lean_ctor_set(x_81, 4, x_67); +lean_ctor_set(x_81, 5, x_68); +lean_ctor_set(x_81, 6, x_69); +lean_ctor_set(x_81, 7, x_75); +lean_ctor_set(x_81, 8, x_80); +lean_ctor_set_uint8(x_81, sizeof(void*)*9, x_63); +lean_ctor_set_uint8(x_81, sizeof(void*)*9 + 1, x_64); +lean_ctor_set_uint8(x_81, sizeof(void*)*9 + 2, x_65); +lean_ctor_set_uint8(x_81, sizeof(void*)*9 + 3, x_70); +lean_ctor_set_uint8(x_81, sizeof(void*)*9 + 4, x_71); +lean_ctor_set_uint8(x_81, sizeof(void*)*9 + 5, x_72); +lean_ctor_set_uint8(x_81, sizeof(void*)*9 + 6, x_73); +lean_ctor_set_uint8(x_81, sizeof(void*)*9 + 7, x_74); +lean_ctor_set_uint8(x_81, sizeof(void*)*9 + 8, x_76); +lean_ctor_set_uint8(x_81, sizeof(void*)*9 + 9, x_77); +x_82 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_81, x_8, x_9, x_10, x_11, x_12, x_59); +return x_82; +} +} +else +{ +uint8_t x_83; +x_83 = !lean_is_exclusive(x_3); +if (x_83 == 0) +{ +uint8_t x_84; +x_84 = !lean_is_exclusive(x_30); +if (x_84 == 0) +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; uint8_t x_88; +x_85 = lean_ctor_get(x_3, 0); +x_86 = lean_ctor_get(x_30, 1); +x_87 = lean_ctor_get(x_30, 0); +lean_dec(x_87); +x_88 = !lean_is_exclusive(x_7); +if (x_88 == 0) +{ +lean_object* x_89; uint8_t x_90; +x_89 = lean_ctor_get(x_7, 8); +lean_dec(x_89); +x_90 = !lean_is_exclusive(x_85); +if (x_90 == 0) +{ +lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +x_91 = lean_ctor_get(x_85, 0); +x_92 = lean_ctor_get(x_85, 1); +x_93 = lean_unsigned_to_nat(0u); +x_94 = l_Array_get_x3f___rarg(x_92, x_93); +lean_dec(x_92); +if (lean_obj_tag(x_94) == 0) +{ +lean_object* x_95; +lean_dec(x_91); +lean_free_object(x_30); +lean_ctor_set(x_85, 1, x_4); +lean_ctor_set(x_85, 0, x_18); +lean_ctor_set(x_7, 8, x_3); +x_95 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_86); +return x_95; +} +else +{ +uint8_t x_96; +x_96 = !lean_is_exclusive(x_94); +if (x_96 == 0) +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; +x_97 = lean_ctor_get(x_94, 0); +x_98 = lean_ctor_get(x_91, 1); +lean_inc(x_98); +lean_dec(x_91); +lean_ctor_set(x_85, 1, x_97); +lean_ctor_set(x_85, 0, x_98); +lean_ctor_set(x_94, 0, x_85); +lean_ctor_set(x_30, 1, x_4); +lean_ctor_set(x_30, 0, x_94); +lean_ctor_set(x_3, 0, x_30); +lean_ctor_set(x_7, 8, x_3); +x_99 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_86); +return x_99; +} +else +{ +lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +x_100 = lean_ctor_get(x_94, 0); +lean_inc(x_100); +lean_dec(x_94); +x_101 = lean_ctor_get(x_91, 1); +lean_inc(x_101); +lean_dec(x_91); +lean_ctor_set(x_85, 1, x_100); +lean_ctor_set(x_85, 0, x_101); +x_102 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_102, 0, x_85); +lean_ctor_set(x_30, 1, x_4); +lean_ctor_set(x_30, 0, x_102); +lean_ctor_set(x_3, 0, x_30); +lean_ctor_set(x_7, 8, x_3); +x_103 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_86); +return x_103; +} +} +} +else +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_104 = lean_ctor_get(x_85, 0); +x_105 = lean_ctor_get(x_85, 1); +lean_inc(x_105); +lean_inc(x_104); +lean_dec(x_85); +x_106 = lean_unsigned_to_nat(0u); +x_107 = l_Array_get_x3f___rarg(x_105, x_106); +lean_dec(x_105); +if (lean_obj_tag(x_107) == 0) +{ +lean_object* x_108; lean_object* x_109; +lean_dec(x_104); +lean_free_object(x_30); +x_108 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_108, 0, x_18); +lean_ctor_set(x_108, 1, x_4); +lean_ctor_set(x_3, 0, x_108); +lean_ctor_set(x_7, 8, x_3); +x_109 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_86); +return x_109; +} +else +{ +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_110 = lean_ctor_get(x_107, 0); +lean_inc(x_110); +if (lean_is_exclusive(x_107)) { + lean_ctor_release(x_107, 0); + x_111 = x_107; +} else { + lean_dec_ref(x_107); + x_111 = lean_box(0); +} +x_112 = lean_ctor_get(x_104, 1); +lean_inc(x_112); +lean_dec(x_104); +x_113 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_113, 0, x_112); +lean_ctor_set(x_113, 1, x_110); +if (lean_is_scalar(x_111)) { + x_114 = lean_alloc_ctor(1, 1, 0); +} else { + x_114 = x_111; +} +lean_ctor_set(x_114, 0, x_113); +lean_ctor_set(x_30, 1, x_4); +lean_ctor_set(x_30, 0, x_114); +lean_ctor_set(x_3, 0, x_30); +lean_ctor_set(x_7, 8, x_3); +x_115 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_86); +return x_115; +} +} +} +else +{ +lean_object* x_116; lean_object* x_117; lean_object* x_118; uint8_t x_119; uint8_t x_120; uint8_t x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; uint8_t x_126; uint8_t x_127; uint8_t x_128; uint8_t x_129; uint8_t x_130; lean_object* x_131; uint8_t x_132; uint8_t x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; +x_116 = lean_ctor_get(x_7, 0); +x_117 = lean_ctor_get(x_7, 1); +x_118 = lean_ctor_get(x_7, 2); +x_119 = lean_ctor_get_uint8(x_7, sizeof(void*)*9); +x_120 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 1); +x_121 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 2); +x_122 = lean_ctor_get(x_7, 3); +x_123 = lean_ctor_get(x_7, 4); +x_124 = lean_ctor_get(x_7, 5); +x_125 = lean_ctor_get(x_7, 6); +x_126 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 3); +x_127 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 4); +x_128 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 5); +x_129 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 6); +x_130 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 7); +x_131 = lean_ctor_get(x_7, 7); +x_132 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 8); +x_133 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 9); +lean_inc(x_131); +lean_inc(x_125); +lean_inc(x_124); +lean_inc(x_123); +lean_inc(x_122); +lean_inc(x_118); +lean_inc(x_117); +lean_inc(x_116); +lean_dec(x_7); +x_134 = lean_ctor_get(x_85, 0); +lean_inc(x_134); +x_135 = lean_ctor_get(x_85, 1); +lean_inc(x_135); +if (lean_is_exclusive(x_85)) { + lean_ctor_release(x_85, 0); + lean_ctor_release(x_85, 1); + x_136 = x_85; +} else { + lean_dec_ref(x_85); + x_136 = lean_box(0); +} +x_137 = lean_unsigned_to_nat(0u); +x_138 = l_Array_get_x3f___rarg(x_135, x_137); +lean_dec(x_135); +if (lean_obj_tag(x_138) == 0) +{ +lean_object* x_139; lean_object* x_140; lean_object* x_141; +lean_dec(x_134); +lean_free_object(x_30); +if (lean_is_scalar(x_136)) { + x_139 = lean_alloc_ctor(0, 2, 0); +} else { + x_139 = x_136; +} +lean_ctor_set(x_139, 0, x_18); +lean_ctor_set(x_139, 1, x_4); +lean_ctor_set(x_3, 0, x_139); +x_140 = lean_alloc_ctor(0, 9, 10); +lean_ctor_set(x_140, 0, x_116); +lean_ctor_set(x_140, 1, x_117); +lean_ctor_set(x_140, 2, x_118); +lean_ctor_set(x_140, 3, x_122); +lean_ctor_set(x_140, 4, x_123); +lean_ctor_set(x_140, 5, x_124); +lean_ctor_set(x_140, 6, x_125); +lean_ctor_set(x_140, 7, x_131); +lean_ctor_set(x_140, 8, x_3); +lean_ctor_set_uint8(x_140, sizeof(void*)*9, x_119); +lean_ctor_set_uint8(x_140, sizeof(void*)*9 + 1, x_120); +lean_ctor_set_uint8(x_140, sizeof(void*)*9 + 2, x_121); +lean_ctor_set_uint8(x_140, sizeof(void*)*9 + 3, x_126); +lean_ctor_set_uint8(x_140, sizeof(void*)*9 + 4, x_127); +lean_ctor_set_uint8(x_140, sizeof(void*)*9 + 5, x_128); +lean_ctor_set_uint8(x_140, sizeof(void*)*9 + 6, x_129); +lean_ctor_set_uint8(x_140, sizeof(void*)*9 + 7, x_130); +lean_ctor_set_uint8(x_140, sizeof(void*)*9 + 8, x_132); +lean_ctor_set_uint8(x_140, sizeof(void*)*9 + 9, x_133); +x_141 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_140, x_8, x_9, x_10, x_11, x_12, x_86); +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; lean_object* x_148; +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_134, 1); +lean_inc(x_144); +lean_dec(x_134); +if (lean_is_scalar(x_136)) { + x_145 = lean_alloc_ctor(0, 2, 0); +} else { + x_145 = x_136; +} +lean_ctor_set(x_145, 0, x_144); +lean_ctor_set(x_145, 1, x_142); +if (lean_is_scalar(x_143)) { + x_146 = lean_alloc_ctor(1, 1, 0); +} else { + x_146 = x_143; +} +lean_ctor_set(x_146, 0, x_145); +lean_ctor_set(x_30, 1, x_4); +lean_ctor_set(x_30, 0, x_146); +lean_ctor_set(x_3, 0, x_30); +x_147 = lean_alloc_ctor(0, 9, 10); +lean_ctor_set(x_147, 0, x_116); +lean_ctor_set(x_147, 1, x_117); +lean_ctor_set(x_147, 2, x_118); +lean_ctor_set(x_147, 3, x_122); +lean_ctor_set(x_147, 4, x_123); +lean_ctor_set(x_147, 5, x_124); +lean_ctor_set(x_147, 6, x_125); +lean_ctor_set(x_147, 7, x_131); +lean_ctor_set(x_147, 8, x_3); +lean_ctor_set_uint8(x_147, sizeof(void*)*9, x_119); +lean_ctor_set_uint8(x_147, sizeof(void*)*9 + 1, x_120); +lean_ctor_set_uint8(x_147, sizeof(void*)*9 + 2, x_121); +lean_ctor_set_uint8(x_147, sizeof(void*)*9 + 3, x_126); +lean_ctor_set_uint8(x_147, sizeof(void*)*9 + 4, x_127); +lean_ctor_set_uint8(x_147, sizeof(void*)*9 + 5, x_128); +lean_ctor_set_uint8(x_147, sizeof(void*)*9 + 6, x_129); +lean_ctor_set_uint8(x_147, sizeof(void*)*9 + 7, x_130); +lean_ctor_set_uint8(x_147, sizeof(void*)*9 + 8, x_132); +lean_ctor_set_uint8(x_147, sizeof(void*)*9 + 9, x_133); +x_148 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_147, x_8, x_9, x_10, x_11, x_12, x_86); +return x_148; +} +} +} +else +{ +lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; uint8_t x_154; uint8_t x_155; uint8_t x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; uint8_t x_161; uint8_t x_162; uint8_t x_163; uint8_t x_164; uint8_t x_165; lean_object* x_166; uint8_t x_167; uint8_t 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; +x_149 = lean_ctor_get(x_3, 0); +x_150 = lean_ctor_get(x_30, 1); +lean_inc(x_150); +lean_dec(x_30); +x_151 = lean_ctor_get(x_7, 0); +lean_inc(x_151); +x_152 = lean_ctor_get(x_7, 1); +lean_inc(x_152); +x_153 = lean_ctor_get(x_7, 2); +lean_inc(x_153); +x_154 = lean_ctor_get_uint8(x_7, sizeof(void*)*9); +x_155 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 1); +x_156 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 2); +x_157 = lean_ctor_get(x_7, 3); +lean_inc(x_157); +x_158 = lean_ctor_get(x_7, 4); +lean_inc(x_158); +x_159 = lean_ctor_get(x_7, 5); +lean_inc(x_159); +x_160 = lean_ctor_get(x_7, 6); +lean_inc(x_160); +x_161 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 3); +x_162 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 4); +x_163 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 5); +x_164 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 6); +x_165 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 7); +x_166 = lean_ctor_get(x_7, 7); +lean_inc(x_166); +x_167 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 8); +x_168 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 9); +if (lean_is_exclusive(x_7)) { + lean_ctor_release(x_7, 0); + lean_ctor_release(x_7, 1); + lean_ctor_release(x_7, 2); + lean_ctor_release(x_7, 3); + lean_ctor_release(x_7, 4); + lean_ctor_release(x_7, 5); + lean_ctor_release(x_7, 6); + lean_ctor_release(x_7, 7); + lean_ctor_release(x_7, 8); + x_169 = x_7; +} else { + lean_dec_ref(x_7); + x_169 = lean_box(0); +} +x_170 = lean_ctor_get(x_149, 0); +lean_inc(x_170); +x_171 = lean_ctor_get(x_149, 1); +lean_inc(x_171); +if (lean_is_exclusive(x_149)) { + lean_ctor_release(x_149, 0); + lean_ctor_release(x_149, 1); + x_172 = x_149; +} else { + lean_dec_ref(x_149); + x_172 = lean_box(0); +} +x_173 = lean_unsigned_to_nat(0u); +x_174 = l_Array_get_x3f___rarg(x_171, x_173); +lean_dec(x_171); +if (lean_obj_tag(x_174) == 0) +{ +lean_object* x_175; lean_object* x_176; lean_object* x_177; +lean_dec(x_170); +if (lean_is_scalar(x_172)) { + x_175 = lean_alloc_ctor(0, 2, 0); +} else { + x_175 = x_172; +} +lean_ctor_set(x_175, 0, x_18); +lean_ctor_set(x_175, 1, x_4); +lean_ctor_set(x_3, 0, x_175); +if (lean_is_scalar(x_169)) { + x_176 = lean_alloc_ctor(0, 9, 10); +} else { + x_176 = x_169; +} +lean_ctor_set(x_176, 0, x_151); +lean_ctor_set(x_176, 1, x_152); +lean_ctor_set(x_176, 2, x_153); +lean_ctor_set(x_176, 3, x_157); +lean_ctor_set(x_176, 4, x_158); +lean_ctor_set(x_176, 5, x_159); +lean_ctor_set(x_176, 6, x_160); +lean_ctor_set(x_176, 7, x_166); +lean_ctor_set(x_176, 8, x_3); +lean_ctor_set_uint8(x_176, sizeof(void*)*9, x_154); +lean_ctor_set_uint8(x_176, sizeof(void*)*9 + 1, x_155); +lean_ctor_set_uint8(x_176, sizeof(void*)*9 + 2, x_156); +lean_ctor_set_uint8(x_176, sizeof(void*)*9 + 3, x_161); +lean_ctor_set_uint8(x_176, sizeof(void*)*9 + 4, x_162); +lean_ctor_set_uint8(x_176, sizeof(void*)*9 + 5, x_163); +lean_ctor_set_uint8(x_176, sizeof(void*)*9 + 6, x_164); +lean_ctor_set_uint8(x_176, sizeof(void*)*9 + 7, x_165); +lean_ctor_set_uint8(x_176, sizeof(void*)*9 + 8, x_167); +lean_ctor_set_uint8(x_176, sizeof(void*)*9 + 9, x_168); +x_177 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_176, x_8, x_9, x_10, x_11, x_12, x_150); +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_object* x_183; lean_object* x_184; lean_object* x_185; +x_178 = lean_ctor_get(x_174, 0); +lean_inc(x_178); +if (lean_is_exclusive(x_174)) { + lean_ctor_release(x_174, 0); + x_179 = x_174; +} else { + lean_dec_ref(x_174); + x_179 = lean_box(0); +} +x_180 = lean_ctor_get(x_170, 1); +lean_inc(x_180); +lean_dec(x_170); +if (lean_is_scalar(x_172)) { + x_181 = lean_alloc_ctor(0, 2, 0); +} else { + x_181 = x_172; +} +lean_ctor_set(x_181, 0, x_180); +lean_ctor_set(x_181, 1, x_178); +if (lean_is_scalar(x_179)) { + x_182 = lean_alloc_ctor(1, 1, 0); +} else { + x_182 = x_179; +} +lean_ctor_set(x_182, 0, x_181); +x_183 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_183, 0, x_182); +lean_ctor_set(x_183, 1, x_4); +lean_ctor_set(x_3, 0, x_183); +if (lean_is_scalar(x_169)) { + x_184 = lean_alloc_ctor(0, 9, 10); +} else { + x_184 = x_169; +} +lean_ctor_set(x_184, 0, x_151); +lean_ctor_set(x_184, 1, x_152); +lean_ctor_set(x_184, 2, x_153); +lean_ctor_set(x_184, 3, x_157); +lean_ctor_set(x_184, 4, x_158); +lean_ctor_set(x_184, 5, x_159); +lean_ctor_set(x_184, 6, x_160); +lean_ctor_set(x_184, 7, x_166); +lean_ctor_set(x_184, 8, x_3); +lean_ctor_set_uint8(x_184, sizeof(void*)*9, x_154); +lean_ctor_set_uint8(x_184, sizeof(void*)*9 + 1, x_155); +lean_ctor_set_uint8(x_184, sizeof(void*)*9 + 2, x_156); +lean_ctor_set_uint8(x_184, sizeof(void*)*9 + 3, x_161); +lean_ctor_set_uint8(x_184, sizeof(void*)*9 + 4, x_162); +lean_ctor_set_uint8(x_184, sizeof(void*)*9 + 5, x_163); +lean_ctor_set_uint8(x_184, sizeof(void*)*9 + 6, x_164); +lean_ctor_set_uint8(x_184, sizeof(void*)*9 + 7, x_165); +lean_ctor_set_uint8(x_184, sizeof(void*)*9 + 8, x_167); +lean_ctor_set_uint8(x_184, sizeof(void*)*9 + 9, x_168); +x_185 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_184, x_8, x_9, x_10, x_11, x_12, x_150); +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; uint8_t x_192; uint8_t x_193; uint8_t x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; uint8_t x_199; uint8_t x_200; uint8_t x_201; uint8_t x_202; uint8_t x_203; lean_object* x_204; uint8_t x_205; uint8_t 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; +x_186 = lean_ctor_get(x_3, 0); +lean_inc(x_186); +lean_dec(x_3); +x_187 = lean_ctor_get(x_30, 1); +lean_inc(x_187); +if (lean_is_exclusive(x_30)) { + lean_ctor_release(x_30, 0); + lean_ctor_release(x_30, 1); + x_188 = x_30; +} else { + lean_dec_ref(x_30); + x_188 = lean_box(0); +} +x_189 = lean_ctor_get(x_7, 0); +lean_inc(x_189); +x_190 = lean_ctor_get(x_7, 1); +lean_inc(x_190); +x_191 = lean_ctor_get(x_7, 2); +lean_inc(x_191); +x_192 = lean_ctor_get_uint8(x_7, sizeof(void*)*9); +x_193 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 1); +x_194 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 2); +x_195 = lean_ctor_get(x_7, 3); +lean_inc(x_195); +x_196 = lean_ctor_get(x_7, 4); +lean_inc(x_196); +x_197 = lean_ctor_get(x_7, 5); +lean_inc(x_197); +x_198 = lean_ctor_get(x_7, 6); +lean_inc(x_198); +x_199 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 3); +x_200 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 4); +x_201 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 5); +x_202 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 6); +x_203 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 7); +x_204 = lean_ctor_get(x_7, 7); +lean_inc(x_204); +x_205 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 8); +x_206 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 9); +if (lean_is_exclusive(x_7)) { + lean_ctor_release(x_7, 0); + lean_ctor_release(x_7, 1); + lean_ctor_release(x_7, 2); + lean_ctor_release(x_7, 3); + lean_ctor_release(x_7, 4); + lean_ctor_release(x_7, 5); + lean_ctor_release(x_7, 6); + lean_ctor_release(x_7, 7); + lean_ctor_release(x_7, 8); + x_207 = x_7; +} else { + lean_dec_ref(x_7); + x_207 = lean_box(0); +} +x_208 = lean_ctor_get(x_186, 0); +lean_inc(x_208); +x_209 = lean_ctor_get(x_186, 1); +lean_inc(x_209); +if (lean_is_exclusive(x_186)) { + lean_ctor_release(x_186, 0); + lean_ctor_release(x_186, 1); + x_210 = x_186; +} else { + lean_dec_ref(x_186); + x_210 = lean_box(0); +} +x_211 = lean_unsigned_to_nat(0u); +x_212 = l_Array_get_x3f___rarg(x_209, x_211); +lean_dec(x_209); +if (lean_obj_tag(x_212) == 0) +{ +lean_object* x_213; lean_object* x_214; lean_object* x_215; lean_object* x_216; +lean_dec(x_208); +lean_dec(x_188); +if (lean_is_scalar(x_210)) { + x_213 = lean_alloc_ctor(0, 2, 0); +} else { + x_213 = x_210; +} +lean_ctor_set(x_213, 0, x_18); +lean_ctor_set(x_213, 1, x_4); +x_214 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_214, 0, x_213); +if (lean_is_scalar(x_207)) { + x_215 = lean_alloc_ctor(0, 9, 10); +} else { + x_215 = x_207; +} +lean_ctor_set(x_215, 0, x_189); +lean_ctor_set(x_215, 1, x_190); +lean_ctor_set(x_215, 2, x_191); +lean_ctor_set(x_215, 3, x_195); +lean_ctor_set(x_215, 4, x_196); +lean_ctor_set(x_215, 5, x_197); +lean_ctor_set(x_215, 6, x_198); +lean_ctor_set(x_215, 7, x_204); +lean_ctor_set(x_215, 8, x_214); +lean_ctor_set_uint8(x_215, sizeof(void*)*9, x_192); +lean_ctor_set_uint8(x_215, sizeof(void*)*9 + 1, x_193); +lean_ctor_set_uint8(x_215, sizeof(void*)*9 + 2, x_194); +lean_ctor_set_uint8(x_215, sizeof(void*)*9 + 3, x_199); +lean_ctor_set_uint8(x_215, sizeof(void*)*9 + 4, x_200); +lean_ctor_set_uint8(x_215, sizeof(void*)*9 + 5, x_201); +lean_ctor_set_uint8(x_215, sizeof(void*)*9 + 6, x_202); +lean_ctor_set_uint8(x_215, sizeof(void*)*9 + 7, x_203); +lean_ctor_set_uint8(x_215, sizeof(void*)*9 + 8, x_205); +lean_ctor_set_uint8(x_215, sizeof(void*)*9 + 9, x_206); +x_216 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_215, x_8, x_9, x_10, x_11, x_12, x_187); +return x_216; +} +else +{ +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; lean_object* x_224; lean_object* x_225; +x_217 = lean_ctor_get(x_212, 0); +lean_inc(x_217); +if (lean_is_exclusive(x_212)) { + lean_ctor_release(x_212, 0); + x_218 = x_212; +} else { + lean_dec_ref(x_212); + x_218 = lean_box(0); +} +x_219 = lean_ctor_get(x_208, 1); +lean_inc(x_219); +lean_dec(x_208); +if (lean_is_scalar(x_210)) { + x_220 = lean_alloc_ctor(0, 2, 0); +} else { + x_220 = x_210; +} +lean_ctor_set(x_220, 0, x_219); +lean_ctor_set(x_220, 1, x_217); +if (lean_is_scalar(x_218)) { + x_221 = lean_alloc_ctor(1, 1, 0); +} else { + x_221 = x_218; +} +lean_ctor_set(x_221, 0, x_220); +if (lean_is_scalar(x_188)) { + x_222 = lean_alloc_ctor(0, 2, 0); +} else { + x_222 = x_188; +} +lean_ctor_set(x_222, 0, x_221); +lean_ctor_set(x_222, 1, x_4); +x_223 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_223, 0, x_222); +if (lean_is_scalar(x_207)) { + x_224 = lean_alloc_ctor(0, 9, 10); +} else { + x_224 = x_207; +} +lean_ctor_set(x_224, 0, x_189); +lean_ctor_set(x_224, 1, x_190); +lean_ctor_set(x_224, 2, x_191); +lean_ctor_set(x_224, 3, x_195); +lean_ctor_set(x_224, 4, x_196); +lean_ctor_set(x_224, 5, x_197); +lean_ctor_set(x_224, 6, x_198); +lean_ctor_set(x_224, 7, x_204); +lean_ctor_set(x_224, 8, x_223); +lean_ctor_set_uint8(x_224, sizeof(void*)*9, x_192); +lean_ctor_set_uint8(x_224, sizeof(void*)*9 + 1, x_193); +lean_ctor_set_uint8(x_224, sizeof(void*)*9 + 2, x_194); +lean_ctor_set_uint8(x_224, sizeof(void*)*9 + 3, x_199); +lean_ctor_set_uint8(x_224, sizeof(void*)*9 + 4, x_200); +lean_ctor_set_uint8(x_224, sizeof(void*)*9 + 5, x_201); +lean_ctor_set_uint8(x_224, sizeof(void*)*9 + 6, x_202); +lean_ctor_set_uint8(x_224, sizeof(void*)*9 + 7, x_203); +lean_ctor_set_uint8(x_224, sizeof(void*)*9 + 8, x_205); +lean_ctor_set_uint8(x_224, sizeof(void*)*9 + 9, x_206); +x_225 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_224, x_8, x_9, x_10, x_11, x_12, x_187); +return x_225; +} +} +} +} +else +{ +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; uint8_t 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; +x_226 = lean_ctor_get(x_14, 0); +x_227 = lean_ctor_get(x_14, 1); +lean_inc(x_227); +lean_inc(x_226); +lean_dec(x_14); +x_228 = lean_box(0); +x_229 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_229, 0, x_226); +x_230 = lean_task_pure(x_229); +x_231 = l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__1; +lean_inc(x_1); +x_232 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_232, 0, x_231); +lean_ctor_set(x_232, 1, x_1); +lean_ctor_set(x_232, 2, x_230); +x_233 = 0; +lean_inc(x_1); +x_234 = l_Lean_Syntax_getRange_x3f(x_1, x_233); +lean_inc(x_4); +x_235 = lean_io_promise_result(x_4); +x_236 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_236, 0, x_234); +lean_ctor_set(x_236, 1, x_235); +x_237 = l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__2; +x_238 = lean_array_push(x_237, x_236); +x_239 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_239, 0, x_232); +lean_ctor_set(x_239, 1, x_238); +x_240 = lean_ctor_get(x_2, 1); +lean_inc(x_240); +lean_dec(x_2); +x_241 = lean_io_promise_resolve(x_239, x_240, x_227); +lean_dec(x_240); +if (lean_obj_tag(x_3) == 0) +{ +lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; uint8_t x_247; uint8_t x_248; uint8_t x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; lean_object* x_253; uint8_t x_254; uint8_t x_255; uint8_t x_256; uint8_t x_257; uint8_t x_258; lean_object* x_259; uint8_t x_260; uint8_t x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; +x_242 = lean_ctor_get(x_241, 1); +lean_inc(x_242); +if (lean_is_exclusive(x_241)) { + lean_ctor_release(x_241, 0); + lean_ctor_release(x_241, 1); + x_243 = x_241; +} else { + lean_dec_ref(x_241); + x_243 = lean_box(0); +} +x_244 = lean_ctor_get(x_7, 0); +lean_inc(x_244); +x_245 = lean_ctor_get(x_7, 1); +lean_inc(x_245); +x_246 = lean_ctor_get(x_7, 2); +lean_inc(x_246); +x_247 = lean_ctor_get_uint8(x_7, sizeof(void*)*9); +x_248 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 1); +x_249 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 2); +x_250 = lean_ctor_get(x_7, 3); +lean_inc(x_250); +x_251 = lean_ctor_get(x_7, 4); +lean_inc(x_251); +x_252 = lean_ctor_get(x_7, 5); +lean_inc(x_252); +x_253 = lean_ctor_get(x_7, 6); +lean_inc(x_253); +x_254 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 3); +x_255 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 4); +x_256 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 5); +x_257 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 6); +x_258 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 7); +x_259 = lean_ctor_get(x_7, 7); +lean_inc(x_259); +x_260 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 8); +x_261 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 9); +if (lean_is_exclusive(x_7)) { + lean_ctor_release(x_7, 0); + lean_ctor_release(x_7, 1); + lean_ctor_release(x_7, 2); + lean_ctor_release(x_7, 3); + lean_ctor_release(x_7, 4); + lean_ctor_release(x_7, 5); + lean_ctor_release(x_7, 6); + lean_ctor_release(x_7, 7); + lean_ctor_release(x_7, 8); + x_262 = x_7; +} else { + lean_dec_ref(x_7); + x_262 = lean_box(0); +} +if (lean_is_scalar(x_243)) { + x_263 = lean_alloc_ctor(0, 2, 0); +} else { + x_263 = x_243; +} +lean_ctor_set(x_263, 0, x_228); +lean_ctor_set(x_263, 1, x_4); +x_264 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_264, 0, x_263); +if (lean_is_scalar(x_262)) { + x_265 = lean_alloc_ctor(0, 9, 10); +} else { + x_265 = x_262; +} +lean_ctor_set(x_265, 0, x_244); +lean_ctor_set(x_265, 1, x_245); +lean_ctor_set(x_265, 2, x_246); +lean_ctor_set(x_265, 3, x_250); +lean_ctor_set(x_265, 4, x_251); +lean_ctor_set(x_265, 5, x_252); +lean_ctor_set(x_265, 6, x_253); +lean_ctor_set(x_265, 7, x_259); +lean_ctor_set(x_265, 8, x_264); +lean_ctor_set_uint8(x_265, sizeof(void*)*9, x_247); +lean_ctor_set_uint8(x_265, sizeof(void*)*9 + 1, x_248); +lean_ctor_set_uint8(x_265, sizeof(void*)*9 + 2, x_249); +lean_ctor_set_uint8(x_265, sizeof(void*)*9 + 3, x_254); +lean_ctor_set_uint8(x_265, sizeof(void*)*9 + 4, x_255); +lean_ctor_set_uint8(x_265, sizeof(void*)*9 + 5, x_256); +lean_ctor_set_uint8(x_265, sizeof(void*)*9 + 6, x_257); +lean_ctor_set_uint8(x_265, sizeof(void*)*9 + 7, x_258); +lean_ctor_set_uint8(x_265, sizeof(void*)*9 + 8, x_260); +lean_ctor_set_uint8(x_265, sizeof(void*)*9 + 9, x_261); +x_266 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_265, x_8, x_9, x_10, x_11, x_12, x_242); +return x_266; +} +else +{ +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; uint8_t x_274; uint8_t x_275; uint8_t x_276; lean_object* x_277; lean_object* x_278; lean_object* x_279; lean_object* x_280; uint8_t x_281; uint8_t x_282; uint8_t x_283; uint8_t x_284; uint8_t x_285; lean_object* x_286; uint8_t x_287; uint8_t 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; +x_267 = lean_ctor_get(x_3, 0); +lean_inc(x_267); +if (lean_is_exclusive(x_3)) { + lean_ctor_release(x_3, 0); + x_268 = x_3; +} else { + lean_dec_ref(x_3); + x_268 = lean_box(0); +} +x_269 = lean_ctor_get(x_241, 1); +lean_inc(x_269); +if (lean_is_exclusive(x_241)) { + lean_ctor_release(x_241, 0); + lean_ctor_release(x_241, 1); + x_270 = x_241; +} else { + lean_dec_ref(x_241); + x_270 = lean_box(0); +} +x_271 = lean_ctor_get(x_7, 0); +lean_inc(x_271); +x_272 = lean_ctor_get(x_7, 1); +lean_inc(x_272); +x_273 = lean_ctor_get(x_7, 2); +lean_inc(x_273); +x_274 = lean_ctor_get_uint8(x_7, sizeof(void*)*9); +x_275 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 1); +x_276 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 2); +x_277 = lean_ctor_get(x_7, 3); +lean_inc(x_277); +x_278 = lean_ctor_get(x_7, 4); +lean_inc(x_278); +x_279 = lean_ctor_get(x_7, 5); +lean_inc(x_279); +x_280 = lean_ctor_get(x_7, 6); +lean_inc(x_280); +x_281 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 3); +x_282 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 4); +x_283 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 5); +x_284 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 6); +x_285 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 7); +x_286 = lean_ctor_get(x_7, 7); +lean_inc(x_286); +x_287 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 8); +x_288 = lean_ctor_get_uint8(x_7, sizeof(void*)*9 + 9); +if (lean_is_exclusive(x_7)) { + lean_ctor_release(x_7, 0); + lean_ctor_release(x_7, 1); + lean_ctor_release(x_7, 2); + lean_ctor_release(x_7, 3); + lean_ctor_release(x_7, 4); + lean_ctor_release(x_7, 5); + lean_ctor_release(x_7, 6); + lean_ctor_release(x_7, 7); + lean_ctor_release(x_7, 8); + x_289 = x_7; +} else { + lean_dec_ref(x_7); + x_289 = lean_box(0); +} +x_290 = lean_ctor_get(x_267, 0); +lean_inc(x_290); +x_291 = lean_ctor_get(x_267, 1); +lean_inc(x_291); +if (lean_is_exclusive(x_267)) { + lean_ctor_release(x_267, 0); + lean_ctor_release(x_267, 1); + x_292 = x_267; +} else { + lean_dec_ref(x_267); + x_292 = lean_box(0); +} +x_293 = lean_unsigned_to_nat(0u); +x_294 = l_Array_get_x3f___rarg(x_291, x_293); +lean_dec(x_291); +if (lean_obj_tag(x_294) == 0) +{ +lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; +lean_dec(x_290); +lean_dec(x_270); +if (lean_is_scalar(x_292)) { + x_295 = lean_alloc_ctor(0, 2, 0); +} else { + x_295 = x_292; +} +lean_ctor_set(x_295, 0, x_228); +lean_ctor_set(x_295, 1, x_4); +if (lean_is_scalar(x_268)) { + x_296 = lean_alloc_ctor(1, 1, 0); +} else { + x_296 = x_268; +} +lean_ctor_set(x_296, 0, x_295); +if (lean_is_scalar(x_289)) { + x_297 = lean_alloc_ctor(0, 9, 10); +} else { + x_297 = x_289; +} +lean_ctor_set(x_297, 0, x_271); +lean_ctor_set(x_297, 1, x_272); +lean_ctor_set(x_297, 2, x_273); +lean_ctor_set(x_297, 3, x_277); +lean_ctor_set(x_297, 4, x_278); +lean_ctor_set(x_297, 5, x_279); +lean_ctor_set(x_297, 6, x_280); +lean_ctor_set(x_297, 7, x_286); +lean_ctor_set(x_297, 8, x_296); +lean_ctor_set_uint8(x_297, sizeof(void*)*9, x_274); +lean_ctor_set_uint8(x_297, sizeof(void*)*9 + 1, x_275); +lean_ctor_set_uint8(x_297, sizeof(void*)*9 + 2, x_276); +lean_ctor_set_uint8(x_297, sizeof(void*)*9 + 3, x_281); +lean_ctor_set_uint8(x_297, sizeof(void*)*9 + 4, x_282); +lean_ctor_set_uint8(x_297, sizeof(void*)*9 + 5, x_283); +lean_ctor_set_uint8(x_297, sizeof(void*)*9 + 6, x_284); +lean_ctor_set_uint8(x_297, sizeof(void*)*9 + 7, x_285); +lean_ctor_set_uint8(x_297, sizeof(void*)*9 + 8, x_287); +lean_ctor_set_uint8(x_297, sizeof(void*)*9 + 9, x_288); +x_298 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_297, x_8, x_9, x_10, x_11, x_12, x_269); +return x_298; +} +else +{ +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_object* x_307; +x_299 = lean_ctor_get(x_294, 0); +lean_inc(x_299); +if (lean_is_exclusive(x_294)) { + lean_ctor_release(x_294, 0); + x_300 = x_294; +} else { + lean_dec_ref(x_294); + x_300 = lean_box(0); +} +x_301 = lean_ctor_get(x_290, 1); +lean_inc(x_301); +lean_dec(x_290); +if (lean_is_scalar(x_292)) { + x_302 = lean_alloc_ctor(0, 2, 0); +} else { + x_302 = x_292; +} +lean_ctor_set(x_302, 0, x_301); +lean_ctor_set(x_302, 1, x_299); +if (lean_is_scalar(x_300)) { + x_303 = lean_alloc_ctor(1, 1, 0); +} else { + x_303 = x_300; +} +lean_ctor_set(x_303, 0, x_302); +if (lean_is_scalar(x_270)) { + x_304 = lean_alloc_ctor(0, 2, 0); +} else { + x_304 = x_270; +} +lean_ctor_set(x_304, 0, x_303); +lean_ctor_set(x_304, 1, x_4); +if (lean_is_scalar(x_268)) { + x_305 = lean_alloc_ctor(1, 1, 0); +} else { + x_305 = x_268; +} +lean_ctor_set(x_305, 0, x_304); +if (lean_is_scalar(x_289)) { + x_306 = lean_alloc_ctor(0, 9, 10); +} else { + x_306 = x_289; +} +lean_ctor_set(x_306, 0, x_271); +lean_ctor_set(x_306, 1, x_272); +lean_ctor_set(x_306, 2, x_273); +lean_ctor_set(x_306, 3, x_277); +lean_ctor_set(x_306, 4, x_278); +lean_ctor_set(x_306, 5, x_279); +lean_ctor_set(x_306, 6, x_280); +lean_ctor_set(x_306, 7, x_286); +lean_ctor_set(x_306, 8, x_305); +lean_ctor_set_uint8(x_306, sizeof(void*)*9, x_274); +lean_ctor_set_uint8(x_306, sizeof(void*)*9 + 1, x_275); +lean_ctor_set_uint8(x_306, sizeof(void*)*9 + 2, x_276); +lean_ctor_set_uint8(x_306, sizeof(void*)*9 + 3, x_281); +lean_ctor_set_uint8(x_306, sizeof(void*)*9 + 4, x_282); +lean_ctor_set_uint8(x_306, sizeof(void*)*9 + 5, x_283); +lean_ctor_set_uint8(x_306, sizeof(void*)*9 + 6, x_284); +lean_ctor_set_uint8(x_306, sizeof(void*)*9 + 7, x_285); +lean_ctor_set_uint8(x_306, sizeof(void*)*9 + 8, x_287); +lean_ctor_set_uint8(x_306, sizeof(void*)*9 + 9, x_288); +x_307 = l_Lean_Elab_Tactic_evalTactic(x_1, x_5, x_6, x_306, x_8, x_9, x_10, x_11, x_12, x_269); +return x_307; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_expandEval___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_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_14 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__1(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; lean_object* x_16; uint8_t 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_List_isEmpty___rarg(x_2); +lean_dec(x_2); +if (x_17 == 0) +{ +lean_object* x_18; +lean_dec(x_4); +lean_dec(x_3); +x_18 = l_Lean_Elab_Tactic_evalTactic(x_15, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_16); +return x_18; +} +else +{ +uint8_t x_19; +x_19 = l_List_isEmpty___rarg(x_3); +lean_dec(x_3); +if (x_19 == 0) +{ +lean_object* x_20; +lean_dec(x_4); +x_20 = l_Lean_Elab_Tactic_evalTactic(x_15, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_16); +return x_20; +} +else +{ +lean_object* x_21; +x_21 = lean_ctor_get(x_7, 8); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; +lean_dec(x_4); +x_22 = l_Lean_Elab_Tactic_evalTactic(x_15, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_16); +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; +x_23 = lean_ctor_get(x_21, 0); +lean_inc(x_23); +lean_dec(x_21); +x_24 = lean_st_ref_get(x_12, x_16); +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, 1); +lean_inc(x_27); +lean_dec(x_25); +x_28 = lean_st_ref_get(x_12, x_26); +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_ctor_get(x_29, 3); +lean_inc(x_31); +lean_dec(x_29); +x_32 = lean_ctor_get(x_23, 0); +lean_inc(x_32); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_48; +lean_dec(x_31); +lean_dec(x_27); +lean_dec(x_4); +x_48 = lean_box(0); +x_33 = x_48; +goto block_47; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_49 = lean_ctor_get(x_32, 0); +lean_inc(x_49); +lean_dec(x_32); +x_50 = lean_ctor_get(x_49, 0); +lean_inc(x_50); +x_51 = l_Lean_Syntax_getKind(x_4); +x_52 = l_Lean_Syntax_isOfKind(x_50, x_51); +lean_dec(x_51); +if (x_52 == 0) +{ +lean_object* x_53; +lean_dec(x_49); +lean_dec(x_31); +lean_dec(x_27); +x_53 = lean_box(0); +x_33 = x_53; +goto block_47; +} +else +{ +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_49, 1); +lean_inc(x_54); +lean_dec(x_49); +x_55 = l_Lean_Language_SnapshotTask_get___rarg(x_54); +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_ctor_get(x_56, 2); +lean_inc(x_57); +lean_dec(x_56); +x_58 = lean_task_get_own(x_57); +if (lean_obj_tag(x_58) == 0) +{ +lean_object* x_59; +lean_dec(x_55); +lean_dec(x_31); +lean_dec(x_27); +x_59 = lean_box(0); +x_33 = x_59; +goto block_47; +} +else +{ +uint8_t x_60; +x_60 = !lean_is_exclusive(x_58); +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; uint8_t x_67; +x_61 = lean_ctor_get(x_58, 0); +x_62 = lean_ctor_get(x_61, 0); +lean_inc(x_62); +lean_dec(x_61); +x_63 = lean_ctor_get(x_62, 0); +lean_inc(x_63); +lean_dec(x_62); +x_64 = lean_ctor_get(x_63, 0); +lean_inc(x_64); +lean_dec(x_63); +x_65 = lean_ctor_get(x_64, 0); +lean_inc(x_65); +lean_dec(x_64); +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +x_67 = lean_nat_dec_eq(x_66, x_27); +lean_dec(x_27); +lean_dec(x_66); +if (x_67 == 0) +{ +lean_object* x_68; +lean_dec(x_65); +lean_free_object(x_58); +lean_dec(x_55); +lean_dec(x_31); +x_68 = lean_box(0); +x_33 = x_68; +goto block_47; +} +else +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; uint8_t x_72; +x_69 = lean_ctor_get(x_65, 3); +lean_inc(x_69); +lean_dec(x_65); +x_70 = lean_ctor_get(x_69, 2); +lean_inc(x_70); +lean_dec(x_69); +x_71 = lean_unsigned_to_nat(0u); +x_72 = lean_nat_dec_eq(x_70, x_71); +lean_dec(x_70); +if (x_72 == 0) +{ +lean_object* x_73; +lean_free_object(x_58); +lean_dec(x_55); +lean_dec(x_31); +x_73 = lean_box(0); +x_33 = x_73; +goto block_47; +} +else +{ +lean_object* x_74; uint8_t x_75; +x_74 = lean_ctor_get(x_31, 2); +lean_inc(x_74); +lean_dec(x_31); +x_75 = lean_nat_dec_eq(x_74, x_71); +lean_dec(x_74); +if (x_75 == 0) +{ +lean_object* x_76; +lean_free_object(x_58); +lean_dec(x_55); +x_76 = lean_box(0); +x_33 = x_76; +goto block_47; +} +else +{ +lean_ctor_set(x_58, 0, x_55); +x_33 = x_58; +goto block_47; +} +} +} +} +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; +x_77 = lean_ctor_get(x_58, 0); +lean_inc(x_77); +lean_dec(x_58); +x_78 = lean_ctor_get(x_77, 0); lean_inc(x_78); -lean_dec(x_27); -x_80 = lean_ctor_get(x_78, 1); -lean_inc(x_80); +lean_dec(x_77); +x_79 = lean_ctor_get(x_78, 0); +lean_inc(x_79); lean_dec(x_78); -x_81 = lean_environment_main_module(x_14); -x_82 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_82, 0, x_26); -lean_ctor_set(x_82, 1, x_81); -lean_ctor_set(x_82, 2, x_20); -lean_ctor_set(x_82, 3, x_15); -lean_ctor_set(x_82, 4, x_16); -lean_ctor_set(x_82, 5, x_17); -x_83 = lean_box(0); -x_84 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_84, 0, x_80); -lean_ctor_set(x_84, 1, x_83); -x_85 = lean_apply_2(x_1, x_82, x_84); -if (lean_obj_tag(x_85) == 0) +x_80 = lean_ctor_get(x_79, 0); +lean_inc(x_80); +lean_dec(x_79); +x_81 = lean_ctor_get(x_80, 0); +lean_inc(x_81); +lean_dec(x_80); +x_82 = lean_ctor_get(x_81, 1); +lean_inc(x_82); +x_83 = lean_nat_dec_eq(x_82, x_27); +lean_dec(x_27); +lean_dec(x_82); +if (x_83 == 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; 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; -x_86 = lean_ctor_get(x_85, 0); +lean_object* x_84; +lean_dec(x_81); +lean_dec(x_55); +lean_dec(x_31); +x_84 = lean_box(0); +x_33 = x_84; +goto block_47; +} +else +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; uint8_t x_88; +x_85 = lean_ctor_get(x_81, 3); +lean_inc(x_85); +lean_dec(x_81); +x_86 = lean_ctor_get(x_85, 2); lean_inc(x_86); -x_87 = lean_ctor_get(x_85, 1); -lean_inc(x_87); lean_dec(x_85); -x_88 = lean_ctor_get(x_87, 0); -lean_inc(x_88); -x_89 = lean_st_ref_take(x_9, x_79); -x_90 = lean_ctor_get(x_89, 0); +x_87 = lean_unsigned_to_nat(0u); +x_88 = lean_nat_dec_eq(x_86, x_87); +lean_dec(x_86); +if (x_88 == 0) +{ +lean_object* x_89; +lean_dec(x_55); +lean_dec(x_31); +x_89 = lean_box(0); +x_33 = x_89; +goto block_47; +} +else +{ +lean_object* x_90; uint8_t x_91; +x_90 = lean_ctor_get(x_31, 2); lean_inc(x_90); -x_91 = lean_ctor_get(x_89, 1); -lean_inc(x_91); -lean_dec(x_89); -x_92 = lean_ctor_get(x_90, 0); -lean_inc(x_92); -x_93 = lean_ctor_get(x_90, 2); -lean_inc(x_93); -x_94 = lean_ctor_get(x_90, 3); -lean_inc(x_94); -x_95 = lean_ctor_get(x_90, 4); -lean_inc(x_95); -x_96 = lean_ctor_get(x_90, 5); -lean_inc(x_96); -x_97 = lean_ctor_get(x_90, 6); -lean_inc(x_97); -if (lean_is_exclusive(x_90)) { - lean_ctor_release(x_90, 0); - lean_ctor_release(x_90, 1); - lean_ctor_release(x_90, 2); - lean_ctor_release(x_90, 3); - lean_ctor_release(x_90, 4); - lean_ctor_release(x_90, 5); - lean_ctor_release(x_90, 6); - x_98 = x_90; -} else { - lean_dec_ref(x_90); - x_98 = lean_box(0); +lean_dec(x_31); +x_91 = lean_nat_dec_eq(x_90, x_87); +lean_dec(x_90); +if (x_91 == 0) +{ +lean_object* x_92; +lean_dec(x_55); +x_92 = lean_box(0); +x_33 = x_92; +goto block_47; } -if (lean_is_scalar(x_98)) { - x_99 = lean_alloc_ctor(0, 7, 0); -} else { - x_99 = x_98; +else +{ +lean_object* x_93; +x_93 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_93, 0, x_55); +x_33 = x_93; +goto block_47; } -lean_ctor_set(x_99, 0, x_92); -lean_ctor_set(x_99, 1, x_88); -lean_ctor_set(x_99, 2, x_93); -lean_ctor_set(x_99, 3, x_94); -lean_ctor_set(x_99, 4, x_95); -lean_ctor_set(x_99, 5, x_96); -lean_ctor_set(x_99, 6, x_97); -x_100 = lean_st_ref_set(x_9, x_99, x_91); -x_101 = lean_ctor_get(x_100, 1); -lean_inc(x_101); -lean_dec(x_100); -x_102 = lean_ctor_get(x_87, 1); -lean_inc(x_102); -lean_dec(x_87); -x_103 = l_List_reverse___rarg(x_102); -x_104 = l_List_forM___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__2(x_103, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_101); -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_105 = lean_ctor_get(x_104, 1); -lean_inc(x_105); -if (lean_is_exclusive(x_104)) { - lean_ctor_release(x_104, 0); - lean_ctor_release(x_104, 1); - x_106 = x_104; -} else { - lean_dec_ref(x_104); - x_106 = lean_box(0); } -if (lean_is_scalar(x_106)) { - x_107 = lean_alloc_ctor(0, 2, 0); -} else { - x_107 = x_106; } -lean_ctor_set(x_107, 0, x_86); -lean_ctor_set(x_107, 1, x_105); -return x_107; } -else -{ -lean_object* x_108; -x_108 = lean_ctor_get(x_85, 0); -lean_inc(x_108); -lean_dec(x_85); -if (lean_obj_tag(x_108) == 0) +} +} +} +block_47: { -lean_object* x_109; lean_object* x_110; lean_object* x_111; uint8_t x_112; -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_Lean_maxRecDepthErrorMessage; -x_112 = lean_string_dec_eq(x_110, x_111); -if (x_112 == 0) +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2), 13, 3); +lean_closure_set(x_34, 0, x_15); +lean_closure_set(x_34, 1, x_23); +lean_closure_set(x_34, 2, x_33); +x_35 = l_Lean_Elab_Tactic_instInhabitedTacticParsedSnapshot; +x_36 = l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__7(x_35, x_34, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_30); +if (lean_obj_tag(x_36) == 0) +{ +uint8_t x_37; +x_37 = !lean_is_exclusive(x_36); +if (x_37 == 0) { -lean_object* x_113; lean_object* x_114; lean_object* x_115; -x_113 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_113, 0, x_110); -x_114 = l_Lean_MessageData_ofFormat(x_113); -x_115 = l_Lean_throwErrorAt___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__3(x_109, x_114, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_79); -return x_115; +lean_object* x_38; lean_object* x_39; +x_38 = lean_ctor_get(x_36, 0); +lean_dec(x_38); +x_39 = lean_box(0); +lean_ctor_set(x_36, 0, x_39); +return x_36; } else { -lean_object* x_116; -lean_dec(x_110); -x_116 = l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__5(x_109, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_79); -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_116; +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_36, 1); +lean_inc(x_40); +lean_dec(x_36); +x_41 = lean_box(0); +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 { -lean_object* x_117; -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_117 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__6___rarg(x_79); -return x_117; +uint8_t x_43; +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; +} } } } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_expandEval___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_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_11 = l_Lean_Elab_liftMacroM___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__1(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; lean_object* 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_Elab_Tactic_evalTactic(x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); -return x_14; } else { -uint8_t x_15; +uint8_t x_94; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -8832,28 +10536,28 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_15 = !lean_is_exclusive(x_11); -if (x_15 == 0) +x_94 = !lean_is_exclusive(x_14); +if (x_94 == 0) { -return x_11; +return x_14; } else { -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_11, 0); -x_17 = lean_ctor_get(x_11, 1); -lean_inc(x_17); -lean_inc(x_16); -lean_dec(x_11); -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_object* x_95; lean_object* x_96; lean_object* x_97; +x_95 = lean_ctor_get(x_14, 0); +x_96 = lean_ctor_get(x_14, 1); +lean_inc(x_96); +lean_inc(x_95); +lean_dec(x_14); +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; } } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_expandEval___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) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTactic_expandEval___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) { _start: { lean_object* x_17; uint8_t x_18; @@ -8940,8 +10644,14 @@ x_19 = lean_ctor_get(x_16, 1); lean_inc(x_19); lean_inc(x_1); x_20 = lean_apply_1(x_19, x_1); -x_21 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__1), 10, 1); +lean_inc(x_1); +lean_inc(x_17); +lean_inc(x_4); +x_21 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__3), 13, 4); lean_closure_set(x_21, 0, x_20); +lean_closure_set(x_21, 1, x_4); +lean_closure_set(x_21, 2, x_17); +lean_closure_set(x_21, 3, x_1); x_76 = lean_ctor_get(x_16, 0); lean_inc(x_76); lean_dec(x_16); @@ -9026,7 +10736,7 @@ x_30 = lean_ctor_get(x_27, 1); lean_inc(x_30); lean_dec(x_27); x_31 = lean_box(0); -x_32 = l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2(x_22, x_5, x_2, x_1, x_17, x_4, x_31, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_30); +x_32 = l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__4(x_22, x_5, x_2, x_1, x_17, x_4, x_31, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_30); return x_32; } else @@ -9043,7 +10753,7 @@ 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_evalTactic_expandEval___lambda__2(x_22, x_5, x_2, x_1, x_17, x_4, x_36, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_37); +x_38 = l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__4(x_22, x_5, x_2, x_1, x_17, x_4, x_36, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_37); return x_38; } } @@ -20226,7 +21936,7 @@ lean_dec(x_1); return x_5; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__1() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -20236,7 +21946,7 @@ x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__2() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -20246,27 +21956,27 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__3() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__2; +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__2; x_2 = l_Lean_Elab_Tactic_mkTacticAttribute___closed__8; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__4() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__3; +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__3; x_2 = l_Lean_Elab_Term_reportUnsolvedGoals___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__5() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__5() { _start: { lean_object* x_1; @@ -20274,17 +21984,17 @@ x_1 = lean_mk_string_from_bytes("initFn", 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__6() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__4; -x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__5; +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__4; +x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__5; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__7() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__7() { _start: { lean_object* x_1; @@ -20292,47 +22002,47 @@ x_1 = lean_mk_string_from_bytes("_@", 2); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__8() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__6; -x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__7; +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__6; +x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__7; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__9() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__8; +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__8; x_2 = l_Lean_Elab_Tactic_mkTacticAttribute___closed__5; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__10() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__9; +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__9; x_2 = l_Lean_Elab_Tactic_mkTacticAttribute___closed__8; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__11() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__10; +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__10; x_2 = l_Lean_Elab_Term_reportUnsolvedGoals___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__12() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__12() { _start: { lean_object* x_1; @@ -20340,17 +22050,17 @@ x_1 = lean_mk_string_from_bytes("Basic", 5); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__13() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__11; -x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__12; +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__11; +x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__12; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__14() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__14() { _start: { lean_object* x_1; @@ -20358,54 +22068,54 @@ x_1 = lean_mk_string_from_bytes("_hyg", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__15() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__13; -x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__14; +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__13; +x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__14; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__16() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__15; -x_2 = lean_unsigned_to_nat(5845u); +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__15; +x_2 = lean_unsigned_to_nat(8161u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161_(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_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__1; +x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__1; x_3 = 0; -x_4 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__16; +x_4 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__16; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5887____closed__1() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8203____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__15; -x_2 = lean_unsigned_to_nat(5887u); +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__15; +x_2 = lean_unsigned_to_nat(8203u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5887_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8203_(lean_object* x_1) { _start: { lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; x_2 = l_List_forIn_loop___at_Lean_Elab_Tactic_evalTactic_handleEx___spec__4___closed__2; x_3 = 0; -x_4 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5887____closed__1; +x_4 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8203____closed__1; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } @@ -20522,6 +22232,10 @@ l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__5_ lean_mark_persistent(l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__5___closed__2); l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__6___rarg___closed__1 = _init_l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__6___rarg___closed__1(); lean_mark_persistent(l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__6___rarg___closed__1); +l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__1 = _init_l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__1); +l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__2 = _init_l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_evalTactic_expandEval___lambda__2___closed__2); l_Lean_withTraceNode___at_Lean_Elab_Tactic_evalTactic___spec__3___lambda__2___closed__1 = _init_l_Lean_withTraceNode___at_Lean_Elab_Tactic_evalTactic___spec__3___lambda__2___closed__1(); lean_mark_persistent(l_Lean_withTraceNode___at_Lean_Elab_Tactic_evalTactic___spec__3___lambda__2___closed__1); l_Lean_withTraceNode___at_Lean_Elab_Tactic_evalTactic___spec__3___lambda__3___closed__1 = _init_l_Lean_withTraceNode___at_Lean_Elab_Tactic_evalTactic___spec__3___lambda__3___closed__1(); @@ -20628,44 +22342,44 @@ l_Lean_Elab_Tactic_getNameOfIdent_x27___closed__2 = _init_l_Lean_Elab_Tactic_get lean_mark_persistent(l_Lean_Elab_Tactic_getNameOfIdent_x27___closed__2); l_Lean_Elab_Tactic_withCaseRef___rarg___closed__1 = _init_l_Lean_Elab_Tactic_withCaseRef___rarg___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_withCaseRef___rarg___closed__1); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__1 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__1(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__1); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__2 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__2(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__2); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__3 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__3(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__3); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__4 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__4(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__4); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__5 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__5(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__5); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__6 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__6(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__6); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__7 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__7(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__7); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__8 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__8(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__8); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__9 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__9(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__9); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__10 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__10(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__10); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__11 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__11(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__11); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__12 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__12(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__12); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__13 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__13(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__13); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__14 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__14(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__14); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__15 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__15(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__15); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__16 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__16(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845____closed__16); -if (builtin) {res = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5845_(lean_io_mk_world()); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__1 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__1); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__2 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__2); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__3 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__3); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__4 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__4(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__4); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__5 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__5(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__5); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__6 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__6(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__6); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__7 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__7(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__7); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__8 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__8(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__8); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__9 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__9(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__9); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__10 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__10(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__10); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__11 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__11(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__11); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__12 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__12(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__12); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__13 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__13(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__13); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__14 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__14(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__14); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__15 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__15(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__15); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__16 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__16(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161____closed__16); +if (builtin) {res = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8161_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5887____closed__1 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5887____closed__1(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5887____closed__1); -if (builtin) {res = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_5887_(lean_io_mk_world()); +}l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8203____closed__1 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8203____closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8203____closed__1); +if (builtin) {res = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Basic___hyg_8203_(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/BuiltinTactic.c b/stage0/stdlib/Lean/Elab/Tactic/BuiltinTactic.c index 5357450c18f3..7652cff7c01e 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/BuiltinTactic.c +++ b/stage0/stdlib/Lean/Elab/Tactic/BuiltinTactic.c @@ -15,6 +15,7 @@ extern "C" { #endif LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalUnknown__1(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalAllGoals__1___closed__3; +static lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__5; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__2; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalParen__1___closed__3; @@ -80,7 +81,6 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRenameInaccessibles static lean_object* l_Lean_Elab_Tactic_evalDbgTrace___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalDbgTrace___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___regBuiltin_Lean_Elab_Tactic_evalSubstEqs_declRange__1(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalFocus___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_Elab_Tactic_evalIntro___closed__20; LEAN_EXPORT lean_object* l_Lean_resolveGlobalConstNoOverloadCore___at_Lean_Elab_Tactic_evalOpen___spec__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___regBuiltin_Lean_Elab_Tactic_evalRotateRight__1___closed__3; @@ -96,6 +96,7 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalClear_declRange__1___clo static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals_declRange__1___closed__5; static lean_object* l___regBuiltin_Lean_Elab_Tactic_elabSetOption__1___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalChoice__1___closed__3; +lean_object* l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalTactic_expandEval___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_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Tactic_evalOpen___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* l_Lean_MVarId_isAssigned___at_Lean_Elab_Tactic_pruneSolvedGoals___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_throwError___at_Lean_Elab_Tactic_elabSetOption___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -113,7 +114,6 @@ LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_renameInac extern lean_object* l_Lean_Elab_Tactic_instInhabitedTacticParsedSnapshot; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_renameInaccessibles___spec__10(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_List_forIn_loop___at_Lean_Elab_Tactic_evalAnyGoals___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_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__1; lean_object* l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft_declRange__1___closed__3; static lean_object* l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___closed__5; @@ -134,7 +134,6 @@ uint8_t l_Lean_Exception_isInterrupt(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRunTac_declRange__1___closed__4; uint64_t lean_uint64_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_renameInaccessibles___lambda__3___boxed(lean_object*); -static lean_object* l_Lean_Elab_Tactic_evalTacticCDot___lambda__1___closed__1; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_evalOpen___spec__2___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_elabSetOption_setOption___at_Lean_Elab_Tactic_elabSetOption___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* l_Lean_throwError___at_Lean_Elab_Tactic_evalTactic_throwExs___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -144,10 +143,10 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace_declRange__1___ static lean_object* l_Lean_Elab_Tactic_evalRunTac_unsafe__1___closed__7; lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1___closed__7; +static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__7; lean_object* l_Lean_TSyntax_getString(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSubst_declRange__1___closed__1; lean_object* l_Lean_MessageData_joinSep(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSubstVars___boxed(lean_object*); static lean_object* l_Lean_Elab_Tactic_evalIntro___closed__2; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRotateRight_declRange__1___closed__2; @@ -205,7 +204,6 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalFirst_declRange__1___clo LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalRunTac_unsafe__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalIntros_declRange__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedTacticReuse___at_Lean_Elab_Tactic_evalSepTactics_goEven___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*); static lean_object* l_Lean_Elab_Tactic_evalReplace___closed__1; static lean_object* l_Lean_Elab_elabSetOption___at_Lean_Elab_Tactic_elabSetOption___spec__1___closed__5; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess_declRange__1___closed__2; @@ -320,6 +318,7 @@ static lean_object* l_Lean_Elab_Tactic_evalIntro___closed__12; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalUnknown_declRange__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSepTactics_goEven___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*); extern lean_object* l_Lean_LocalContext_empty; +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalParen__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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* l_Lean_Syntax_node5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalAssumption__1___closed__4; @@ -374,6 +373,7 @@ static lean_object* l_Lean_Elab_Tactic_evalAnyGoals___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed_declRange__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalRight___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_Lean_Elab_Tactic_evalOpen___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_EXPORT lean_object* l_Lean_Elab_Tactic_evalSepTactics_goEven___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*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage_declRange__1___closed__1; uint8_t l_Lean_Name_isPrefixOf(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSkip__1___closed__5; @@ -392,7 +392,6 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_forEachV LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTraceState__1(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__5; static lean_object* l_Lean_Elab_Tactic_evalRight___rarg___lambda__1___closed__2; -static lean_object* l_Lean_Elab_Tactic_evalWithAnnotateState___closed__5; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__2; static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_addCheckpoints___spec__1___closed__4; static lean_object* l_Lean_Elab_Tactic_evalRunTac_unsafe__1___closed__2; @@ -412,6 +411,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_evalOpen___spec lean_object* l_Lean_Kernel_enableDiag(lean_object*, uint8_t); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalChoice_declRange__1(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSubstVars_declRange__1___closed__7; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSepTactics_goOdd___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_Syntax_getNumArgs(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSleep_declRange__1___closed__1; lean_object* l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(lean_object*, lean_object*); @@ -483,6 +483,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Tactic_r lean_object* l_Lean_Elab_Term_Do_getDoHaveVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRotateRight__1___closed__4; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalFirst_declRange__1___closed__4; +static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__8; LEAN_EXPORT lean_object* l_Lean_Elab_elabSetOption_setOption___at_Lean_Elab_Tactic_elabSetOption___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_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSubst_declRange__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13___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*); @@ -547,7 +548,6 @@ static lean_object* l_Lean_Elab_Tactic_evalIntro___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalDbgTrace___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___regBuiltin_Lean_Elab_Tactic_evalSubstEqs_declRange__1___closed__5; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRight__1___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalParen___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_Tactic_evalRevert__1___closed__2; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSleep__1___closed__4; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSubst_declRange__1___closed__4; @@ -562,6 +562,7 @@ lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRenameInaccessibles_declRange__1___closed__3; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRunTac__1___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___boxed(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRunTac_declRange__1___closed__3; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs_declRange__1___closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalRotateRight___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -683,7 +684,6 @@ lean_object* lean_array_pop(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_evalOpen___spec__32(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___regBuiltin_Lean_Elab_Tactic_evalCase_declRange__1___closed__2; lean_object* l_Lean_log___at_Lean_Elab_Tactic_closeUsingOrAdmit___spec__3(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_Elab_Tactic_evalFocus___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_Elab_Tactic_evalDone__1___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_BuiltinTactic_0__Lean_Elab_Tactic_getCaseGoals(lean_object*, 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_renameInaccessibles___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*); @@ -726,7 +726,6 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSkip_declRange__1___closed__6; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalCase__1___closed__3; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalIntros__1(lean_object*); -static lean_object* l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRight__1___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_addConstInfo___at_Lean_Elab_Tactic_evalOpen___spec__24___boxed(lean_object*, lean_object*, lean_object*, lean_object*, 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_evalFirst___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*); @@ -898,6 +897,7 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRunTac_declRange__1___cl LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch_declRange__1(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_evalCase_x27___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*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSepTactics(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_evalWithAnnotateState__1___closed__9; LEAN_EXPORT lean_object* l_Lean_getRefPos___at_Lean_Elab_Tactic_evalOpen___spec__38___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalLeft_declRange__1___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalContradiction__1___closed__5; @@ -932,8 +932,8 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalReplace_declRange__1___c LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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___regBuiltin_Lean_Elab_Tactic_evalIntroMatch_declRange__1___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalContradiction__1(lean_object*); +static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__10; static lean_object* l_Lean_Elab_Tactic_addCheckpoints___lambda__1___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTacticCDot___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___regBuiltin_Lean_Elab_Tactic_evalSkip_declRange__1(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalUnknown_declRange__1___closed__6; @@ -1045,6 +1045,7 @@ static lean_object* l_Lean_Elab_CommandContextInfo_saveNoFileMap___at_Lean_Elab_ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_elabSetOption___spec__5(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_nestedExceptionToMessageData___at_Lean_Elab_Tactic_evalOpen___spec__37___closed__1; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___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___regBuiltin_Lean_Elab_Tactic_evalChoice__1___closed__5; lean_object* l_Lean_MVarId_getDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_evalOpen___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*); @@ -1103,7 +1104,6 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq_declRange__1__ lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_evalExact___spec__1___rarg(lean_object*); static lean_object* l_Lean_Elab_Tactic_evalIntro___closed__24; LEAN_EXPORT lean_object* l___private_Lean_ResolveName_0__Lean_resolveGlobalConstCore___at_Lean_Elab_Tactic_evalOpen___spec__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_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___boxed(lean_object*); lean_object* l_Lean_Syntax_node1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_logException___at_Lean_Elab_Tactic_closeUsingOrAdmit___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1167,7 +1167,6 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_renameInac static lean_object* l_Lean_Elab_Tactic_evalReplace___lambda__2___closed__2; lean_object* lean_nat_mul(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_renameInaccessibles___spec__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___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___regBuiltin_Lean_Elab_Tactic_evalRight_declRange__1___closed__4; static lean_object* l_Lean_Elab_Tactic_evalIntro_introStep___lambda__6___closed__1; lean_object* l_Lean_MVarId_intro(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1242,6 +1241,7 @@ LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalContradiction(lean_object*); lean_object* l_Lean_MVarId_tryClearMany(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRight_declRange__1(lean_object*); +static lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapMAux___at_Lean_Elab_Tactic_renameInaccessibles___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*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalReplace_declRange__1___closed__7; LEAN_EXPORT lean_object* l_Lean_pushScope___at_Lean_Elab_Tactic_evalOpen___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1269,6 +1269,7 @@ static lean_object* l_Lean_Elab_Tactic_evalRunTac_unsafe__1___closed__3; extern lean_object* l_Lean_instInhabitedName; static lean_object* l_Lean_Elab_Tactic_evalCase___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___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*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1(lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); lean_object* l_Lean_Expr_fvar___override(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_renameInaccessibles___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*); @@ -1327,6 +1328,7 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalUnknown__1___closed__1; static lean_object* l_Lean_Elab_Tactic_evalFail___closed__6; static lean_object* l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___closed__13; lean_object* l_Lean_mkAtomFrom(lean_object*, lean_object*, uint8_t); +LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___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_Elab_Tactic_evalAssumption___boxed(lean_object*); uint8_t l_Lean_Name_isSuffixOf(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_evalOpen___spec__42___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1340,6 +1342,7 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs_declRange__1___ lean_object* l_Lean_Syntax_isNatLit_x3f(lean_object*); static lean_object* l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___lambda__2___closed__3; static lean_object* l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_addCheckpoints___spec__1___closed__5; +static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_evalIntros___spec__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_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_evalOpen___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_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTraceState_declRange__1___closed__6; @@ -1373,6 +1376,7 @@ lean_object* lean_expr_dbg_to_string(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_evalOpen___spec__27(lean_object*, 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_evalCase_x27__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalAnyGoals(lean_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_Elab_Tactic_evalFocus__2(lean_object*); lean_object* l_Lean_Elab_Tactic_setGoals(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_intros(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); @@ -1383,7 +1387,6 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed_declR static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__4; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRevert_declRange__1___closed__3; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalFocus__1(lean_object*); -static lean_object* l_Lean_Elab_Tactic_evalWithAnnotateState___closed__4; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq1Indented__1___closed__3; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRevert_declRange__1___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalIntro___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*); @@ -1415,7 +1418,6 @@ static lean_object* l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_eval static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__4; lean_object* l_Lean_Elab_getResetInfoTrees___at_Lean_Elab_Tactic_withTacticInfoContext___spec__2___rarg(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1___lambda__1___boxed(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalReplace_declRange__1___closed__4; lean_object* l_String_toSubstring_x27(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSeq1_declRange__1(lean_object*); @@ -1455,6 +1457,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSkip(lean_object*, lean_object*, static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalIntros_declRange__1___closed__2; static lean_object* l_Lean_resolveUniqueNamespace___at_Lean_Elab_Tactic_evalOpen___spec__5___closed__2; static lean_object* l_Lean_Elab_nestedExceptionToMessageData___at_Lean_Elab_Tactic_evalOpen___spec__37___closed__2; +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__2(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs__1___closed__4; LEAN_EXPORT lean_object* l_List_findM_x3f___at___private_Lean_Elab_Tactic_BuiltinTactic_0__Lean_Elab_Tactic_findTag_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*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals__1___closed__3; @@ -1485,2498 +1488,2794 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTacticSeq1Indented(lean_object*, lean_object* l_Array_get_x3f___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalFirst_declRange__1(lean_object*); uint8_t l_Lean_MacroScopesView_equalScope(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalWithAnnotateState___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_Term_withNarrowedTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___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_12; -x_12 = lean_apply_9(x_1, x_3, 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_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; +lean_inc(x_1); +x_13 = lean_apply_1(x_1, x_3); +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_is_exclusive(x_10); +if (x_16 == 0) { -uint8_t x_13; -x_13 = !lean_is_exclusive(x_12); -if (x_13 == 0) +uint8_t x_17; +x_17 = !lean_is_exclusive(x_6); +if (x_17 == 0) { -lean_object* x_14; lean_object* x_15; -x_14 = lean_ctor_get(x_12, 0); -x_15 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_15, 0, x_14); -lean_ctor_set(x_15, 1, x_2); -lean_ctor_set(x_12, 0, x_15); -return x_12; -} -else +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_18 = lean_ctor_get(x_10, 2); +x_19 = lean_ctor_get(x_10, 5); +x_20 = lean_ctor_get(x_6, 8); +x_21 = l_Lean_replaceRef(x_15, x_19); +lean_dec(x_19); +lean_inc(x_18); +lean_ctor_set(x_10, 5, x_21); +if (lean_obj_tag(x_20) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = lean_ctor_get(x_12, 0); -x_17 = lean_ctor_get(x_12, 1); -lean_inc(x_17); -lean_inc(x_16); -lean_dec(x_12); -x_18 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_18, 0, x_16); -lean_ctor_set(x_18, 1, x_2); -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_22; lean_object* x_23; +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_1); +x_22 = lean_box(0); +lean_ctor_set(x_6, 8, x_22); +x_23 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_23; } else { -uint8_t x_20; -lean_dec(x_2); -x_20 = !lean_is_exclusive(x_12); -if (x_20 == 0) +uint8_t x_24; +x_24 = !lean_is_exclusive(x_20); +if (x_24 == 0) { -return x_12; +lean_object* x_25; lean_object* x_26; +x_25 = lean_ctor_get(x_20, 0); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) +{ +uint8_t x_27; +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_1); +x_27 = !lean_is_exclusive(x_25); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_25, 0); +lean_dec(x_28); +x_29 = lean_box(0); +lean_ctor_set(x_25, 0, x_29); +x_30 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_30; } 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_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +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); +lean_ctor_set(x_20, 0, x_33); +x_34 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_34; } } -static lean_object* _init_l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Lean", 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2() { -_start: +uint8_t x_35; +x_35 = !lean_is_exclusive(x_26); +if (x_35 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Parser", 6); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3() { -_start: +uint8_t x_36; +x_36 = !lean_is_exclusive(x_25); +if (x_36 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Tactic", 6); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_evalWithAnnotateState___closed__4() { -_start: +lean_object* x_37; lean_object* x_38; uint8_t x_39; +x_37 = lean_ctor_get(x_26, 0); +x_38 = lean_ctor_get(x_25, 0); +lean_dec(x_38); +x_39 = !lean_is_exclusive(x_37); +if (x_39 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("withAnnotateState", 17); -return x_1; -} +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_40 = lean_ctor_get(x_37, 0); +x_41 = lean_ctor_get(x_37, 1); +x_42 = lean_apply_1(x_1, x_40); +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_Syntax_structRangeEqWithTraceReuse(x_18, x_14, x_43); +lean_dec(x_18); +x_46 = lean_unbox(x_45); +lean_dec(x_45); +if (x_46 == 0) +{ +lean_object* x_47; lean_object* x_48; +lean_dec(x_44); +lean_free_object(x_37); +lean_dec(x_41); +lean_free_object(x_20); +x_47 = lean_box(0); +lean_ctor_set(x_25, 0, x_47); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_6, 8, x_26); +x_48 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_48; } -static lean_object* _init_l_Lean_Elab_Tactic_evalWithAnnotateState___closed__5() { -_start: +else { -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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; -x_4 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__4; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; +lean_object* x_49; +lean_ctor_set(x_37, 0, x_44); +x_49 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_49; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalWithAnnotateState(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, 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: +else { -lean_object* x_11; uint8_t x_12; -x_11 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__5; -lean_inc(x_1); -x_12 = l_Lean_Syntax_isOfKind(x_1, x_11); -if (x_12 == 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; +x_50 = lean_ctor_get(x_37, 0); +x_51 = lean_ctor_get(x_37, 1); +lean_inc(x_51); +lean_inc(x_50); +lean_dec(x_37); +x_52 = lean_apply_1(x_1, x_50); +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 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_18, x_14, x_53); +lean_dec(x_18); +x_56 = lean_unbox(x_55); +lean_dec(x_55); +if (x_56 == 0) { -lean_object* 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); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_13 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_evalExact___spec__1___rarg(x_10); -return x_13; +lean_object* x_57; lean_object* x_58; +lean_dec(x_54); +lean_dec(x_51); +lean_free_object(x_20); +x_57 = lean_box(0); +lean_ctor_set(x_25, 0, x_57); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_6, 8, x_26); +x_58 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_58; } 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; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_14 = lean_unsigned_to_nat(1u); -x_15 = l_Lean_Syntax_getArg(x_1, x_14); -x_16 = lean_unsigned_to_nat(2u); -x_17 = l_Lean_Syntax_getArg(x_1, x_16); -lean_dec(x_1); -x_18 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalTactic), 10, 1); -lean_closure_set(x_18, 0, x_17); -x_19 = l_Lean_Elab_Tactic_mkInitialTacticInfo(x_15, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -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_alloc_closure((void*)(l_Lean_Elab_Tactic_evalWithAnnotateState___lambda__1), 11, 1); -lean_closure_set(x_22, 0, x_20); -x_23 = l_Lean_Elab_withInfoTreeContext___at_Lean_Elab_Tactic_evalTactic_eval___spec__2(x_18, x_22, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_21); -return x_23; +lean_object* x_59; lean_object* x_60; +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_54); +lean_ctor_set(x_59, 1, x_51); +lean_ctor_set(x_26, 0, x_59); +x_60 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_60; } } } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Elab", 4); -return x_1; -} +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; +x_61 = lean_ctor_get(x_26, 0); +x_62 = lean_ctor_get(x_25, 1); +lean_inc(x_62); +lean_dec(x_25); +x_63 = lean_ctor_get(x_61, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_61, 1); +lean_inc(x_64); +if (lean_is_exclusive(x_61)) { + lean_ctor_release(x_61, 0); + lean_ctor_release(x_61, 1); + x_65 = x_61; +} else { + lean_dec_ref(x_61); + x_65 = lean_box(0); } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2() { -_start: +x_66 = lean_apply_1(x_1, x_63); +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_Syntax_structRangeEqWithTraceReuse(x_18, x_14, x_67); +lean_dec(x_18); +x_70 = lean_unbox(x_69); +lean_dec(x_69); +if (x_70 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("evalWithAnnotateState", 21); -return x_1; -} +lean_object* x_71; lean_object* x_72; lean_object* x_73; +lean_dec(x_68); +lean_dec(x_65); +lean_dec(x_64); +lean_free_object(x_20); +x_71 = lean_box(0); +x_72 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_72, 0, x_71); +lean_ctor_set(x_72, 1, x_62); +lean_ctor_set(x_26, 0, x_72); +lean_ctor_set(x_6, 8, x_26); +x_73 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_73; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3() { -_start: +else { -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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; -x_4 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; +lean_object* x_74; lean_object* x_75; lean_object* x_76; +if (lean_is_scalar(x_65)) { + x_74 = lean_alloc_ctor(0, 2, 0); +} else { + x_74 = x_65; } +lean_ctor_set(x_74, 0, x_68); +lean_ctor_set(x_74, 1, x_64); +lean_ctor_set(x_26, 0, x_74); +x_75 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_75, 0, x_26); +lean_ctor_set(x_75, 1, x_62); +lean_ctor_set(x_20, 0, x_75); +x_76 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_76; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__4() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_Elab_Tactic_tacticElabAttribute; -return x_1; } } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__5() { -_start: +else { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalWithAnnotateState), 10, 0); -return x_1; +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_ctor_get(x_26, 0); +lean_inc(x_77); +lean_dec(x_26); +x_78 = lean_ctor_get(x_25, 1); +lean_inc(x_78); +if (lean_is_exclusive(x_25)) { + lean_ctor_release(x_25, 0); + lean_ctor_release(x_25, 1); + x_79 = x_25; +} else { + lean_dec_ref(x_25); + x_79 = lean_box(0); } +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); } -LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1(lean_object* x_1) { -_start: +x_83 = lean_apply_1(x_1, x_80); +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_Syntax_structRangeEqWithTraceReuse(x_18, x_14, x_84); +lean_dec(x_18); +x_87 = lean_unbox(x_86); +lean_dec(x_86); +if (x_87 == 0) { -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_Elab_Tactic_evalWithAnnotateState__1___closed__4; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__5; -x_4 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; -x_5 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__5; -x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); -return x_6; +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_85); +lean_dec(x_82); +lean_dec(x_81); +lean_free_object(x_20); +x_88 = lean_box(0); +if (lean_is_scalar(x_79)) { + x_89 = lean_alloc_ctor(0, 2, 0); +} else { + x_89 = x_79; } +lean_ctor_set(x_89, 0, x_88); +lean_ctor_set(x_89, 1, x_78); +x_90 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_90, 0, x_89); +lean_ctor_set(x_6, 8, x_90); +x_91 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_91; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__1() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(24u); -x_2 = lean_unsigned_to_nat(36u); -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_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; +if (lean_is_scalar(x_82)) { + x_92 = lean_alloc_ctor(0, 2, 0); +} else { + x_92 = x_82; } +lean_ctor_set(x_92, 0, x_85); +lean_ctor_set(x_92, 1, x_81); +x_93 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_93, 0, x_92); +if (lean_is_scalar(x_79)) { + x_94 = lean_alloc_ctor(0, 2, 0); +} else { + x_94 = x_79; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(27u); -x_2 = lean_unsigned_to_nat(31u); -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_ctor_set(x_94, 0, x_93); +lean_ctor_set(x_94, 1, x_78); +lean_ctor_set(x_20, 0, x_94); +x_95 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_95; } } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__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___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__1; -x_2 = lean_unsigned_to_nat(36u); -x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__2; -x_4 = lean_unsigned_to_nat(31u); -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___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__4() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(24u); -x_2 = lean_unsigned_to_nat(40u); -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_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__5() { -_start: +lean_object* x_96; lean_object* x_97; +x_96 = lean_ctor_get(x_20, 0); +lean_inc(x_96); +lean_dec(x_20); +x_97 = lean_ctor_get(x_96, 0); +lean_inc(x_97); +if (lean_obj_tag(x_97) == 0) { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(24u); -x_2 = lean_unsigned_to_nat(61u); -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_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_18); +lean_dec(x_14); +lean_dec(x_1); +x_98 = lean_ctor_get(x_96, 1); +lean_inc(x_98); +if (lean_is_exclusive(x_96)) { + lean_ctor_release(x_96, 0); + lean_ctor_release(x_96, 1); + x_99 = x_96; +} else { + lean_dec_ref(x_96); + x_99 = lean_box(0); } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___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___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__4; -x_2 = lean_unsigned_to_nat(40u); -x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__5; -x_4 = lean_unsigned_to_nat(61u); -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; +x_100 = lean_box(0); +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); +x_102 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_102, 0, x_101); +lean_ctor_set(x_6, 8, x_102); +x_103 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_103; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__7() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__3; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__6; -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_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; uint8_t x_115; +x_104 = lean_ctor_get(x_97, 0); +lean_inc(x_104); +if (lean_is_exclusive(x_97)) { + lean_ctor_release(x_97, 0); + x_105 = x_97; +} else { + lean_dec_ref(x_97); + x_105 = lean_box(0); } -LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; -x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__7; -x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); -return x_4; +x_106 = lean_ctor_get(x_96, 1); +lean_inc(x_106); +if (lean_is_exclusive(x_96)) { + lean_ctor_release(x_96, 0); + lean_ctor_release(x_96, 1); + x_107 = x_96; +} else { + lean_dec_ref(x_96); + x_107 = lean_box(0); } +x_108 = lean_ctor_get(x_104, 0); +lean_inc(x_108); +x_109 = lean_ctor_get(x_104, 1); +lean_inc(x_109); +if (lean_is_exclusive(x_104)) { + lean_ctor_release(x_104, 0); + lean_ctor_release(x_104, 1); + x_110 = x_104; +} else { + lean_dec_ref(x_104); + x_110 = lean_box(0); } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalDone___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: +x_111 = lean_apply_1(x_1, x_108); +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_Syntax_structRangeEqWithTraceReuse(x_18, x_14, x_112); +lean_dec(x_18); +x_115 = lean_unbox(x_114); +lean_dec(x_114); +if (x_115 == 0) { -lean_object* x_10; -x_10 = l_Lean_Elab_Tactic_done(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -return x_10; -} +lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; +lean_dec(x_113); +lean_dec(x_110); +lean_dec(x_109); +x_116 = lean_box(0); +if (lean_is_scalar(x_107)) { + x_117 = lean_alloc_ctor(0, 2, 0); +} else { + x_117 = x_107; } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalDone(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalDone___rarg___boxed), 9, 0); -return x_2; +lean_ctor_set(x_117, 0, x_116); +lean_ctor_set(x_117, 1, x_106); +if (lean_is_scalar(x_105)) { + x_118 = lean_alloc_ctor(1, 1, 0); +} else { + x_118 = x_105; } +lean_ctor_set(x_118, 0, x_117); +lean_ctor_set(x_6, 8, x_118); +x_119 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_119; } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalDone___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: +else { -lean_object* x_10; -x_10 = l_Lean_Elab_Tactic_evalDone___rarg(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); -lean_dec(x_2); -return x_10; +lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; +if (lean_is_scalar(x_110)) { + x_120 = lean_alloc_ctor(0, 2, 0); +} else { + x_120 = x_110; } +lean_ctor_set(x_120, 0, x_113); +lean_ctor_set(x_120, 1, x_109); +if (lean_is_scalar(x_105)) { + x_121 = lean_alloc_ctor(1, 1, 0); +} else { + x_121 = x_105; } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalDone___boxed(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = l_Lean_Elab_Tactic_evalDone(x_1); -lean_dec(x_1); -return x_2; +lean_ctor_set(x_121, 0, x_120); +if (lean_is_scalar(x_107)) { + x_122 = lean_alloc_ctor(0, 2, 0); +} else { + x_122 = x_107; } +lean_ctor_set(x_122, 0, x_121); +lean_ctor_set(x_122, 1, x_106); +x_123 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_123, 0, x_122); +lean_ctor_set(x_6, 8, x_123); +x_124 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_124; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("done", 4); -return x_1; } } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone__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_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; -x_4 = l___regBuiltin_Lean_Elab_Tactic_evalDone__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_Elab_Tactic_evalDone__1___closed__3() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("evalDone", 8); -return x_1; -} -} -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__4() { -_start: +lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; uint8_t x_130; uint8_t x_131; uint8_t x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; uint8_t x_137; uint8_t x_138; uint8_t x_139; uint8_t x_140; uint8_t x_141; lean_object* x_142; lean_object* x_143; uint8_t x_144; uint8_t x_145; lean_object* x_146; +x_125 = lean_ctor_get(x_10, 2); +x_126 = lean_ctor_get(x_10, 5); +x_127 = lean_ctor_get(x_6, 0); +x_128 = lean_ctor_get(x_6, 1); +x_129 = lean_ctor_get(x_6, 2); +x_130 = lean_ctor_get_uint8(x_6, sizeof(void*)*9); +x_131 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 1); +x_132 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 2); +x_133 = lean_ctor_get(x_6, 3); +x_134 = lean_ctor_get(x_6, 4); +x_135 = lean_ctor_get(x_6, 5); +x_136 = lean_ctor_get(x_6, 6); +x_137 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 3); +x_138 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 4); +x_139 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 5); +x_140 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 6); +x_141 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 7); +x_142 = lean_ctor_get(x_6, 7); +x_143 = lean_ctor_get(x_6, 8); +x_144 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 8); +x_145 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 9); +lean_inc(x_143); +lean_inc(x_142); +lean_inc(x_136); +lean_inc(x_135); +lean_inc(x_134); +lean_inc(x_133); +lean_inc(x_129); +lean_inc(x_128); +lean_inc(x_127); +lean_dec(x_6); +x_146 = l_Lean_replaceRef(x_15, x_126); +lean_dec(x_126); +lean_inc(x_125); +lean_ctor_set(x_10, 5, x_146); +if (lean_obj_tag(x_143) == 0) { -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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; -x_4 = l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__3; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} +lean_object* x_147; lean_object* x_148; lean_object* x_149; +lean_dec(x_125); +lean_dec(x_14); +lean_dec(x_1); +x_147 = lean_box(0); +x_148 = lean_alloc_ctor(0, 9, 10); +lean_ctor_set(x_148, 0, x_127); +lean_ctor_set(x_148, 1, x_128); +lean_ctor_set(x_148, 2, x_129); +lean_ctor_set(x_148, 3, x_133); +lean_ctor_set(x_148, 4, x_134); +lean_ctor_set(x_148, 5, x_135); +lean_ctor_set(x_148, 6, x_136); +lean_ctor_set(x_148, 7, x_142); +lean_ctor_set(x_148, 8, x_147); +lean_ctor_set_uint8(x_148, sizeof(void*)*9, x_130); +lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 1, x_131); +lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 2, x_132); +lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 3, x_137); +lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 4, x_138); +lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 5, x_139); +lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 6, x_140); +lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 7, x_141); +lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 8, x_144); +lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 9, x_145); +x_149 = lean_apply_10(x_2, x_15, x_4, x_5, x_148, x_7, x_8, x_9, x_10, x_11, x_12); +return x_149; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__5() { -_start: +else { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalDone___boxed), 1, 0); -return x_1; -} +lean_object* x_150; lean_object* x_151; lean_object* x_152; +x_150 = lean_ctor_get(x_143, 0); +lean_inc(x_150); +if (lean_is_exclusive(x_143)) { + lean_ctor_release(x_143, 0); + x_151 = x_143; +} else { + lean_dec_ref(x_143); + x_151 = lean_box(0); } -LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDone__1(lean_object* x_1) { -_start: +x_152 = lean_ctor_get(x_150, 0); +lean_inc(x_152); +if (lean_obj_tag(x_152) == 0) { -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_Elab_Tactic_evalWithAnnotateState__1___closed__4; -x_3 = l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__2; -x_4 = l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__4; -x_5 = l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__5; -x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); -return x_6; +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_dec(x_125); +lean_dec(x_14); +lean_dec(x_1); +x_153 = lean_ctor_get(x_150, 1); +lean_inc(x_153); +if (lean_is_exclusive(x_150)) { + lean_ctor_release(x_150, 0); + lean_ctor_release(x_150, 1); + x_154 = x_150; +} else { + lean_dec_ref(x_150); + x_154 = lean_box(0); } +x_155 = lean_box(0); +if (lean_is_scalar(x_154)) { + x_156 = lean_alloc_ctor(0, 2, 0); +} else { + x_156 = x_154; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(29u); -x_2 = lean_unsigned_to_nat(44u); -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_ctor_set(x_156, 0, x_155); +lean_ctor_set(x_156, 1, x_153); +if (lean_is_scalar(x_151)) { + x_157 = lean_alloc_ctor(1, 1, 0); +} else { + x_157 = x_151; } +lean_ctor_set(x_157, 0, x_156); +x_158 = lean_alloc_ctor(0, 9, 10); +lean_ctor_set(x_158, 0, x_127); +lean_ctor_set(x_158, 1, x_128); +lean_ctor_set(x_158, 2, x_129); +lean_ctor_set(x_158, 3, x_133); +lean_ctor_set(x_158, 4, x_134); +lean_ctor_set(x_158, 5, x_135); +lean_ctor_set(x_158, 6, x_136); +lean_ctor_set(x_158, 7, x_142); +lean_ctor_set(x_158, 8, x_157); +lean_ctor_set_uint8(x_158, sizeof(void*)*9, x_130); +lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 1, x_131); +lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 2, x_132); +lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 3, x_137); +lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 4, x_138); +lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 5, x_139); +lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 6, x_140); +lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 7, x_141); +lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 8, x_144); +lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 9, x_145); +x_159 = lean_apply_10(x_2, x_15, x_4, x_5, x_158, x_7, x_8, x_9, x_10, x_11, x_12); +return x_159; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__2() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(30u); -x_2 = lean_unsigned_to_nat(6u); -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_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; uint8_t x_171; +x_160 = lean_ctor_get(x_152, 0); +lean_inc(x_160); +if (lean_is_exclusive(x_152)) { + lean_ctor_release(x_152, 0); + x_161 = x_152; +} else { + lean_dec_ref(x_152); + x_161 = lean_box(0); } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__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___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__1; -x_2 = lean_unsigned_to_nat(44u); -x_3 = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__2; -x_4 = lean_unsigned_to_nat(6u); -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; +x_162 = lean_ctor_get(x_150, 1); +lean_inc(x_162); +if (lean_is_exclusive(x_150)) { + lean_ctor_release(x_150, 0); + lean_ctor_release(x_150, 1); + x_163 = x_150; +} else { + lean_dec_ref(x_150); + x_163 = lean_box(0); } +x_164 = lean_ctor_get(x_160, 0); +lean_inc(x_164); +x_165 = lean_ctor_get(x_160, 1); +lean_inc(x_165); +if (lean_is_exclusive(x_160)) { + lean_ctor_release(x_160, 0); + lean_ctor_release(x_160, 1); + x_166 = x_160; +} else { + lean_dec_ref(x_160); + x_166 = lean_box(0); } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__4() { -_start: +x_167 = lean_apply_1(x_1, x_164); +x_168 = lean_ctor_get(x_167, 0); +lean_inc(x_168); +x_169 = lean_ctor_get(x_167, 1); +lean_inc(x_169); +lean_dec(x_167); +x_170 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_125, x_14, x_168); +lean_dec(x_125); +x_171 = lean_unbox(x_170); +lean_dec(x_170); +if (x_171 == 0) { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(29u); -x_2 = lean_unsigned_to_nat(48u); -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_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; +lean_dec(x_169); +lean_dec(x_166); +lean_dec(x_165); +lean_dec(x_151); +x_172 = lean_box(0); +if (lean_is_scalar(x_163)) { + x_173 = lean_alloc_ctor(0, 2, 0); +} else { + x_173 = x_163; } +lean_ctor_set(x_173, 0, x_172); +lean_ctor_set(x_173, 1, x_162); +if (lean_is_scalar(x_161)) { + x_174 = lean_alloc_ctor(1, 1, 0); +} else { + x_174 = x_161; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__5() { -_start: +lean_ctor_set(x_174, 0, x_173); +x_175 = lean_alloc_ctor(0, 9, 10); +lean_ctor_set(x_175, 0, x_127); +lean_ctor_set(x_175, 1, x_128); +lean_ctor_set(x_175, 2, x_129); +lean_ctor_set(x_175, 3, x_133); +lean_ctor_set(x_175, 4, x_134); +lean_ctor_set(x_175, 5, x_135); +lean_ctor_set(x_175, 6, x_136); +lean_ctor_set(x_175, 7, x_142); +lean_ctor_set(x_175, 8, x_174); +lean_ctor_set_uint8(x_175, sizeof(void*)*9, x_130); +lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 1, x_131); +lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 2, x_132); +lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 3, x_137); +lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 4, x_138); +lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 5, x_139); +lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 6, x_140); +lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 7, x_141); +lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 8, x_144); +lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 9, x_145); +x_176 = lean_apply_10(x_2, x_15, x_4, x_5, x_175, x_7, x_8, x_9, x_10, x_11, x_12); +return x_176; +} +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(29u); -x_2 = lean_unsigned_to_nat(56u); -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_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; +if (lean_is_scalar(x_166)) { + x_177 = lean_alloc_ctor(0, 2, 0); +} else { + x_177 = x_166; } +lean_ctor_set(x_177, 0, x_169); +lean_ctor_set(x_177, 1, x_165); +if (lean_is_scalar(x_161)) { + x_178 = lean_alloc_ctor(1, 1, 0); +} else { + x_178 = x_161; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___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___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__4; -x_2 = lean_unsigned_to_nat(48u); -x_3 = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__5; -x_4 = lean_unsigned_to_nat(56u); -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_ctor_set(x_178, 0, x_177); +if (lean_is_scalar(x_163)) { + x_179 = lean_alloc_ctor(0, 2, 0); +} else { + x_179 = x_163; } +lean_ctor_set(x_179, 0, x_178); +lean_ctor_set(x_179, 1, x_162); +if (lean_is_scalar(x_151)) { + x_180 = lean_alloc_ctor(1, 1, 0); +} else { + x_180 = x_151; } -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__7() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__3; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__6; -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_ctor_set(x_180, 0, x_179); +x_181 = lean_alloc_ctor(0, 9, 10); +lean_ctor_set(x_181, 0, x_127); +lean_ctor_set(x_181, 1, x_128); +lean_ctor_set(x_181, 2, x_129); +lean_ctor_set(x_181, 3, x_133); +lean_ctor_set(x_181, 4, x_134); +lean_ctor_set(x_181, 5, x_135); +lean_ctor_set(x_181, 6, x_136); +lean_ctor_set(x_181, 7, x_142); +lean_ctor_set(x_181, 8, x_180); +lean_ctor_set_uint8(x_181, sizeof(void*)*9, x_130); +lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 1, x_131); +lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 2, x_132); +lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 3, x_137); +lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 4, x_138); +lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 5, x_139); +lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 6, x_140); +lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 7, x_141); +lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 8, x_144); +lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 9, x_145); +x_182 = lean_apply_10(x_2, x_15, x_4, x_5, x_181, x_7, x_8, x_9, x_10, x_11, x_12); +return x_182; } } -LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__4; -x_3 = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__7; -x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); -return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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) { -_start: -{ -lean_object* x_14; uint8_t x_15; -x_14 = lean_io_get_num_heartbeats(x_13); -x_15 = !lean_is_exclusive(x_14); -if (x_15 == 0) +} +else { -uint8_t x_16; -x_16 = !lean_is_exclusive(x_1); -if (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_14, 0); -x_18 = lean_ctor_get(x_14, 1); -x_19 = lean_ctor_get(x_1, 8); -lean_dec(x_19); -lean_ctor_set(x_14, 1, x_3); -lean_ctor_set(x_14, 0, x_2); -x_20 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_20, 0, x_14); -lean_ctor_set(x_1, 8, x_20); -lean_inc(x_12); -lean_inc(x_9); -lean_inc(x_7); -lean_inc(x_6); -x_21 = l_Lean_Elab_Tactic_evalTactic(x_4, x_5, x_6, x_1, x_7, x_8, x_9, x_11, x_12, x_18); -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_12, x_22); -lean_dec(x_12); -x_24 = !lean_is_exclusive(x_23); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_25 = lean_ctor_get(x_23, 0); -x_26 = lean_ctor_get(x_23, 1); -x_27 = lean_io_get_num_heartbeats(x_26); -x_28 = !lean_is_exclusive(x_27); -if (x_28 == 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_27, 0); -x_30 = lean_ctor_get(x_27, 1); -x_31 = lean_nat_sub(x_29, x_17); -lean_dec(x_17); -lean_dec(x_29); -lean_ctor_set(x_27, 1, x_31); -lean_ctor_set(x_27, 0, x_25); -x_32 = lean_st_ref_get(x_9, x_30); -lean_dec(x_9); -x_33 = !lean_is_exclusive(x_32); -if (x_33 == 0) -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_34 = lean_ctor_get(x_32, 0); -x_35 = lean_ctor_get(x_32, 1); -lean_ctor_set(x_32, 1, x_34); -lean_ctor_set(x_32, 0, x_27); -x_36 = lean_st_ref_get(x_7, x_35); -lean_dec(x_7); -x_37 = !lean_is_exclusive(x_36); -if (x_37 == 0) -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_38 = lean_ctor_get(x_36, 0); -x_39 = lean_ctor_get(x_36, 1); -lean_ctor_set(x_36, 1, x_38); -lean_ctor_set(x_36, 0, x_32); -x_40 = lean_st_ref_get(x_6, x_39); -lean_dec(x_6); -x_41 = !lean_is_exclusive(x_40); -if (x_41 == 0) -{ -lean_object* x_42; -x_42 = lean_ctor_get(x_40, 0); -lean_ctor_set(x_23, 1, x_42); -lean_ctor_set(x_23, 0, x_36); -lean_ctor_set(x_40, 0, x_23); -return x_40; +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; lean_object* x_195; uint8_t x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; uint8_t x_200; uint8_t x_201; uint8_t x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* 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; lean_object* x_213; uint8_t x_214; uint8_t x_215; lean_object* x_216; lean_object* x_217; lean_object* x_218; +x_183 = lean_ctor_get(x_10, 0); +x_184 = lean_ctor_get(x_10, 1); +x_185 = lean_ctor_get(x_10, 2); +x_186 = lean_ctor_get(x_10, 3); +x_187 = lean_ctor_get(x_10, 4); +x_188 = lean_ctor_get(x_10, 5); +x_189 = lean_ctor_get(x_10, 6); +x_190 = lean_ctor_get(x_10, 7); +x_191 = lean_ctor_get(x_10, 8); +x_192 = lean_ctor_get(x_10, 9); +x_193 = lean_ctor_get(x_10, 10); +x_194 = lean_ctor_get_uint8(x_10, sizeof(void*)*12); +x_195 = lean_ctor_get(x_10, 11); +x_196 = lean_ctor_get_uint8(x_10, sizeof(void*)*12 + 1); +lean_inc(x_195); +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_187); +lean_inc(x_186); +lean_inc(x_185); +lean_inc(x_184); +lean_inc(x_183); +lean_dec(x_10); +x_197 = lean_ctor_get(x_6, 0); +lean_inc(x_197); +x_198 = lean_ctor_get(x_6, 1); +lean_inc(x_198); +x_199 = lean_ctor_get(x_6, 2); +lean_inc(x_199); +x_200 = lean_ctor_get_uint8(x_6, sizeof(void*)*9); +x_201 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 1); +x_202 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 2); +x_203 = lean_ctor_get(x_6, 3); +lean_inc(x_203); +x_204 = lean_ctor_get(x_6, 4); +lean_inc(x_204); +x_205 = lean_ctor_get(x_6, 5); +lean_inc(x_205); +x_206 = lean_ctor_get(x_6, 6); +lean_inc(x_206); +x_207 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 3); +x_208 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 4); +x_209 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 5); +x_210 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 6); +x_211 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 7); +x_212 = lean_ctor_get(x_6, 7); +lean_inc(x_212); +x_213 = lean_ctor_get(x_6, 8); +lean_inc(x_213); +x_214 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 8); +x_215 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 9); +if (lean_is_exclusive(x_6)) { + lean_ctor_release(x_6, 0); + lean_ctor_release(x_6, 1); + lean_ctor_release(x_6, 2); + lean_ctor_release(x_6, 3); + lean_ctor_release(x_6, 4); + lean_ctor_release(x_6, 5); + lean_ctor_release(x_6, 6); + lean_ctor_release(x_6, 7); + lean_ctor_release(x_6, 8); + x_216 = x_6; +} else { + lean_dec_ref(x_6); + x_216 = lean_box(0); } -else +x_217 = l_Lean_replaceRef(x_15, x_188); +lean_dec(x_188); +lean_inc(x_185); +x_218 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_218, 0, x_183); +lean_ctor_set(x_218, 1, x_184); +lean_ctor_set(x_218, 2, x_185); +lean_ctor_set(x_218, 3, x_186); +lean_ctor_set(x_218, 4, x_187); +lean_ctor_set(x_218, 5, x_217); +lean_ctor_set(x_218, 6, x_189); +lean_ctor_set(x_218, 7, x_190); +lean_ctor_set(x_218, 8, x_191); +lean_ctor_set(x_218, 9, x_192); +lean_ctor_set(x_218, 10, x_193); +lean_ctor_set(x_218, 11, x_195); +lean_ctor_set_uint8(x_218, sizeof(void*)*12, x_194); +lean_ctor_set_uint8(x_218, sizeof(void*)*12 + 1, x_196); +if (lean_obj_tag(x_213) == 0) { -lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_43 = lean_ctor_get(x_40, 0); -x_44 = lean_ctor_get(x_40, 1); -lean_inc(x_44); -lean_inc(x_43); -lean_dec(x_40); -lean_ctor_set(x_23, 1, x_43); -lean_ctor_set(x_23, 0, x_36); -x_45 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_45, 0, x_23); -lean_ctor_set(x_45, 1, x_44); -return x_45; +lean_object* x_219; lean_object* x_220; lean_object* x_221; +lean_dec(x_185); +lean_dec(x_14); +lean_dec(x_1); +x_219 = lean_box(0); +if (lean_is_scalar(x_216)) { + x_220 = lean_alloc_ctor(0, 9, 10); +} else { + x_220 = x_216; } +lean_ctor_set(x_220, 0, x_197); +lean_ctor_set(x_220, 1, x_198); +lean_ctor_set(x_220, 2, x_199); +lean_ctor_set(x_220, 3, x_203); +lean_ctor_set(x_220, 4, x_204); +lean_ctor_set(x_220, 5, x_205); +lean_ctor_set(x_220, 6, x_206); +lean_ctor_set(x_220, 7, x_212); +lean_ctor_set(x_220, 8, x_219); +lean_ctor_set_uint8(x_220, sizeof(void*)*9, x_200); +lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 1, x_201); +lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 2, x_202); +lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 3, x_207); +lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 4, x_208); +lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 5, x_209); +lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 6, x_210); +lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 7, x_211); +lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 8, x_214); +lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 9, x_215); +x_221 = lean_apply_10(x_2, x_15, x_4, x_5, x_220, x_7, x_8, x_9, x_218, x_11, x_12); +return x_221; } 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; -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(0, 2, 0); -lean_ctor_set(x_48, 0, x_32); -lean_ctor_set(x_48, 1, x_46); -x_49 = lean_st_ref_get(x_6, x_47); -lean_dec(x_6); -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); -} -lean_ctor_set(x_23, 1, x_50); -lean_ctor_set(x_23, 0, x_48); -if (lean_is_scalar(x_52)) { - x_53 = lean_alloc_ctor(0, 2, 0); +lean_object* x_222; lean_object* x_223; lean_object* x_224; +x_222 = lean_ctor_get(x_213, 0); +lean_inc(x_222); +if (lean_is_exclusive(x_213)) { + lean_ctor_release(x_213, 0); + x_223 = x_213; } else { - x_53 = x_52; -} -lean_ctor_set(x_53, 0, x_23); -lean_ctor_set(x_53, 1, x_51); -return x_53; -} + lean_dec_ref(x_213); + x_223 = lean_box(0); } -else +x_224 = lean_ctor_get(x_222, 0); +lean_inc(x_224); +if (lean_obj_tag(x_224) == 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; -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(0, 2, 0); -lean_ctor_set(x_56, 0, x_27); -lean_ctor_set(x_56, 1, x_54); -x_57 = lean_st_ref_get(x_7, x_55); -lean_dec(x_7); -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; +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_dec(x_185); +lean_dec(x_14); +lean_dec(x_1); +x_225 = lean_ctor_get(x_222, 1); +lean_inc(x_225); +if (lean_is_exclusive(x_222)) { + lean_ctor_release(x_222, 0); + lean_ctor_release(x_222, 1); + x_226 = x_222; } else { - lean_dec_ref(x_57); - x_60 = lean_box(0); + lean_dec_ref(x_222); + x_226 = lean_box(0); } -if (lean_is_scalar(x_60)) { - x_61 = lean_alloc_ctor(0, 2, 0); +x_227 = lean_box(0); +if (lean_is_scalar(x_226)) { + x_228 = lean_alloc_ctor(0, 2, 0); } else { - x_61 = x_60; + x_228 = x_226; } -lean_ctor_set(x_61, 0, x_56); -lean_ctor_set(x_61, 1, x_58); -x_62 = lean_st_ref_get(x_6, x_59); -lean_dec(x_6); -x_63 = lean_ctor_get(x_62, 0); -lean_inc(x_63); -x_64 = lean_ctor_get(x_62, 1); -lean_inc(x_64); -if (lean_is_exclusive(x_62)) { - lean_ctor_release(x_62, 0); - lean_ctor_release(x_62, 1); - x_65 = x_62; +lean_ctor_set(x_228, 0, x_227); +lean_ctor_set(x_228, 1, x_225); +if (lean_is_scalar(x_223)) { + x_229 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_62); - x_65 = lean_box(0); + x_229 = x_223; } -lean_ctor_set(x_23, 1, x_63); -lean_ctor_set(x_23, 0, x_61); -if (lean_is_scalar(x_65)) { - x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_229, 0, x_228); +if (lean_is_scalar(x_216)) { + x_230 = lean_alloc_ctor(0, 9, 10); } else { - x_66 = x_65; -} -lean_ctor_set(x_66, 0, x_23); -lean_ctor_set(x_66, 1, x_64); -return x_66; + x_230 = x_216; } +lean_ctor_set(x_230, 0, x_197); +lean_ctor_set(x_230, 1, x_198); +lean_ctor_set(x_230, 2, x_199); +lean_ctor_set(x_230, 3, x_203); +lean_ctor_set(x_230, 4, x_204); +lean_ctor_set(x_230, 5, x_205); +lean_ctor_set(x_230, 6, x_206); +lean_ctor_set(x_230, 7, x_212); +lean_ctor_set(x_230, 8, x_229); +lean_ctor_set_uint8(x_230, sizeof(void*)*9, x_200); +lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 1, x_201); +lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 2, x_202); +lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 3, x_207); +lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 4, x_208); +lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 5, x_209); +lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 6, x_210); +lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 7, x_211); +lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 8, x_214); +lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 9, x_215); +x_231 = lean_apply_10(x_2, x_15, x_4, x_5, x_230, x_7, x_8, x_9, x_218, x_11, x_12); +return x_231; } 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_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; -x_67 = lean_ctor_get(x_27, 0); -x_68 = lean_ctor_get(x_27, 1); -lean_inc(x_68); -lean_inc(x_67); -lean_dec(x_27); -x_69 = lean_nat_sub(x_67, x_17); -lean_dec(x_17); -lean_dec(x_67); -x_70 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_70, 0, x_25); -lean_ctor_set(x_70, 1, x_69); -x_71 = lean_st_ref_get(x_9, x_68); -lean_dec(x_9); -x_72 = lean_ctor_get(x_71, 0); -lean_inc(x_72); -x_73 = lean_ctor_get(x_71, 1); -lean_inc(x_73); -if (lean_is_exclusive(x_71)) { - lean_ctor_release(x_71, 0); - lean_ctor_release(x_71, 1); - x_74 = x_71; +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; uint8_t x_243; +x_232 = lean_ctor_get(x_224, 0); +lean_inc(x_232); +if (lean_is_exclusive(x_224)) { + lean_ctor_release(x_224, 0); + x_233 = x_224; } else { - lean_dec_ref(x_71); - x_74 = lean_box(0); + lean_dec_ref(x_224); + x_233 = lean_box(0); } -if (lean_is_scalar(x_74)) { - x_75 = lean_alloc_ctor(0, 2, 0); +x_234 = lean_ctor_get(x_222, 1); +lean_inc(x_234); +if (lean_is_exclusive(x_222)) { + lean_ctor_release(x_222, 0); + lean_ctor_release(x_222, 1); + x_235 = x_222; } else { - x_75 = x_74; + lean_dec_ref(x_222); + x_235 = lean_box(0); } -lean_ctor_set(x_75, 0, x_70); -lean_ctor_set(x_75, 1, x_72); -x_76 = lean_st_ref_get(x_7, x_73); -lean_dec(x_7); -x_77 = lean_ctor_get(x_76, 0); -lean_inc(x_77); -x_78 = lean_ctor_get(x_76, 1); -lean_inc(x_78); -if (lean_is_exclusive(x_76)) { - lean_ctor_release(x_76, 0); - lean_ctor_release(x_76, 1); - x_79 = x_76; +x_236 = lean_ctor_get(x_232, 0); +lean_inc(x_236); +x_237 = lean_ctor_get(x_232, 1); +lean_inc(x_237); +if (lean_is_exclusive(x_232)) { + lean_ctor_release(x_232, 0); + lean_ctor_release(x_232, 1); + x_238 = x_232; } else { - lean_dec_ref(x_76); - x_79 = lean_box(0); + lean_dec_ref(x_232); + x_238 = lean_box(0); } -if (lean_is_scalar(x_79)) { - x_80 = lean_alloc_ctor(0, 2, 0); +x_239 = lean_apply_1(x_1, x_236); +x_240 = lean_ctor_get(x_239, 0); +lean_inc(x_240); +x_241 = lean_ctor_get(x_239, 1); +lean_inc(x_241); +lean_dec(x_239); +x_242 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_185, x_14, x_240); +lean_dec(x_185); +x_243 = lean_unbox(x_242); +lean_dec(x_242); +if (x_243 == 0) +{ +lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; +lean_dec(x_241); +lean_dec(x_238); +lean_dec(x_237); +lean_dec(x_223); +x_244 = lean_box(0); +if (lean_is_scalar(x_235)) { + x_245 = lean_alloc_ctor(0, 2, 0); } else { - x_80 = x_79; + x_245 = x_235; } -lean_ctor_set(x_80, 0, x_75); -lean_ctor_set(x_80, 1, x_77); -x_81 = lean_st_ref_get(x_6, x_78); -lean_dec(x_6); -x_82 = lean_ctor_get(x_81, 0); -lean_inc(x_82); -x_83 = lean_ctor_get(x_81, 1); -lean_inc(x_83); -if (lean_is_exclusive(x_81)) { - lean_ctor_release(x_81, 0); - lean_ctor_release(x_81, 1); - x_84 = x_81; +lean_ctor_set(x_245, 0, x_244); +lean_ctor_set(x_245, 1, x_234); +if (lean_is_scalar(x_233)) { + x_246 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_81); - x_84 = lean_box(0); + x_246 = x_233; } -lean_ctor_set(x_23, 1, x_82); -lean_ctor_set(x_23, 0, x_80); -if (lean_is_scalar(x_84)) { - x_85 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_246, 0, x_245); +if (lean_is_scalar(x_216)) { + x_247 = lean_alloc_ctor(0, 9, 10); } else { - x_85 = x_84; -} -lean_ctor_set(x_85, 0, x_23); -lean_ctor_set(x_85, 1, x_83); -return x_85; + x_247 = x_216; } +lean_ctor_set(x_247, 0, x_197); +lean_ctor_set(x_247, 1, x_198); +lean_ctor_set(x_247, 2, x_199); +lean_ctor_set(x_247, 3, x_203); +lean_ctor_set(x_247, 4, x_204); +lean_ctor_set(x_247, 5, x_205); +lean_ctor_set(x_247, 6, x_206); +lean_ctor_set(x_247, 7, x_212); +lean_ctor_set(x_247, 8, x_246); +lean_ctor_set_uint8(x_247, sizeof(void*)*9, x_200); +lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 1, x_201); +lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 2, x_202); +lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 3, x_207); +lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 4, x_208); +lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 5, x_209); +lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 6, x_210); +lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 7, x_211); +lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 8, x_214); +lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 9, x_215); +x_248 = lean_apply_10(x_2, x_15, x_4, x_5, x_247, x_7, x_8, x_9, x_218, x_11, x_12); +return x_248; } else { -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; -x_86 = lean_ctor_get(x_23, 0); -x_87 = lean_ctor_get(x_23, 1); -lean_inc(x_87); -lean_inc(x_86); -lean_dec(x_23); -x_88 = lean_io_get_num_heartbeats(x_87); -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; +lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; lean_object* x_253; lean_object* x_254; +if (lean_is_scalar(x_238)) { + x_249 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_88); - x_91 = lean_box(0); + x_249 = x_238; } -x_92 = lean_nat_sub(x_89, x_17); -lean_dec(x_17); -lean_dec(x_89); -if (lean_is_scalar(x_91)) { - x_93 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_249, 0, x_241); +lean_ctor_set(x_249, 1, x_237); +if (lean_is_scalar(x_233)) { + x_250 = lean_alloc_ctor(1, 1, 0); } else { - x_93 = x_91; + x_250 = x_233; } -lean_ctor_set(x_93, 0, x_86); -lean_ctor_set(x_93, 1, x_92); -x_94 = lean_st_ref_get(x_9, x_90); -lean_dec(x_9); -x_95 = lean_ctor_get(x_94, 0); -lean_inc(x_95); -x_96 = lean_ctor_get(x_94, 1); -lean_inc(x_96); -if (lean_is_exclusive(x_94)) { - lean_ctor_release(x_94, 0); - lean_ctor_release(x_94, 1); - x_97 = x_94; +lean_ctor_set(x_250, 0, x_249); +if (lean_is_scalar(x_235)) { + x_251 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_94); - x_97 = lean_box(0); + x_251 = x_235; } -if (lean_is_scalar(x_97)) { - x_98 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_251, 0, x_250); +lean_ctor_set(x_251, 1, x_234); +if (lean_is_scalar(x_223)) { + x_252 = lean_alloc_ctor(1, 1, 0); } else { - x_98 = x_97; + x_252 = x_223; } -lean_ctor_set(x_98, 0, x_93); -lean_ctor_set(x_98, 1, x_95); -x_99 = lean_st_ref_get(x_7, x_96); -lean_dec(x_7); -x_100 = lean_ctor_get(x_99, 0); -lean_inc(x_100); -x_101 = lean_ctor_get(x_99, 1); -lean_inc(x_101); -if (lean_is_exclusive(x_99)) { - lean_ctor_release(x_99, 0); - lean_ctor_release(x_99, 1); - x_102 = x_99; +lean_ctor_set(x_252, 0, x_251); +if (lean_is_scalar(x_216)) { + x_253 = lean_alloc_ctor(0, 9, 10); } else { - lean_dec_ref(x_99); - x_102 = lean_box(0); + x_253 = x_216; } -if (lean_is_scalar(x_102)) { - x_103 = lean_alloc_ctor(0, 2, 0); -} else { - x_103 = x_102; +lean_ctor_set(x_253, 0, x_197); +lean_ctor_set(x_253, 1, x_198); +lean_ctor_set(x_253, 2, x_199); +lean_ctor_set(x_253, 3, x_203); +lean_ctor_set(x_253, 4, x_204); +lean_ctor_set(x_253, 5, x_205); +lean_ctor_set(x_253, 6, x_206); +lean_ctor_set(x_253, 7, x_212); +lean_ctor_set(x_253, 8, x_252); +lean_ctor_set_uint8(x_253, sizeof(void*)*9, x_200); +lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 1, x_201); +lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 2, x_202); +lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 3, x_207); +lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 4, x_208); +lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 5, x_209); +lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 6, x_210); +lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 7, x_211); +lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 8, x_214); +lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 9, x_215); +x_254 = lean_apply_10(x_2, x_15, x_4, x_5, x_253, x_7, x_8, x_9, x_218, x_11, x_12); +return x_254; } -lean_ctor_set(x_103, 0, x_98); -lean_ctor_set(x_103, 1, x_100); -x_104 = lean_st_ref_get(x_6, x_101); -lean_dec(x_6); -x_105 = lean_ctor_get(x_104, 0); -lean_inc(x_105); -x_106 = lean_ctor_get(x_104, 1); -lean_inc(x_106); -if (lean_is_exclusive(x_104)) { - lean_ctor_release(x_104, 0); - lean_ctor_release(x_104, 1); - x_107 = x_104; -} else { - lean_dec_ref(x_104); - x_107 = lean_box(0); } -x_108 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_108, 0, x_103); -lean_ctor_set(x_108, 1, x_105); -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 +} +static lean_object* _init_l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__1() { +_start: { -uint8_t x_110; -lean_dec(x_17); -lean_dec(x_12); -lean_dec(x_9); -lean_dec(x_7); -lean_dec(x_6); -x_110 = !lean_is_exclusive(x_21); -if (x_110 == 0) -{ -return x_21; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("null", 4); +return x_1; } -else -{ -lean_object* x_111; lean_object* x_112; lean_object* x_113; -x_111 = lean_ctor_get(x_21, 0); -x_112 = lean_ctor_get(x_21, 1); -lean_inc(x_112); -lean_inc(x_111); -lean_dec(x_21); -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; } +static lean_object* _init_l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___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_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1(lean_object* x_1, lean_object* x_2) { +_start: { -lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; uint8_t x_119; uint8_t x_120; uint8_t x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; uint8_t x_126; uint8_t x_127; uint8_t x_128; uint8_t x_129; uint8_t x_130; lean_object* x_131; uint8_t x_132; uint8_t x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; -x_114 = lean_ctor_get(x_14, 0); -x_115 = lean_ctor_get(x_14, 1); -x_116 = lean_ctor_get(x_1, 0); -x_117 = lean_ctor_get(x_1, 1); -x_118 = lean_ctor_get(x_1, 2); -x_119 = lean_ctor_get_uint8(x_1, sizeof(void*)*9); -x_120 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 1); -x_121 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 2); -x_122 = lean_ctor_get(x_1, 3); -x_123 = lean_ctor_get(x_1, 4); -x_124 = lean_ctor_get(x_1, 5); -x_125 = lean_ctor_get(x_1, 6); -x_126 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 3); -x_127 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 4); -x_128 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 5); -x_129 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 6); -x_130 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 7); -x_131 = lean_ctor_get(x_1, 7); -x_132 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 8); -x_133 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 9); -lean_inc(x_131); -lean_inc(x_125); -lean_inc(x_124); -lean_inc(x_123); -lean_inc(x_122); -lean_inc(x_118); -lean_inc(x_117); -lean_inc(x_116); +lean_object* x_3; lean_object* x_4; lean_object* x_5; 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 = l_Lean_Syntax_getArgs(x_2); +x_4 = lean_unsigned_to_nat(0u); +lean_inc(x_1); +x_5 = l_Array_toSubarray___rarg(x_3, x_4, x_1); +x_6 = l_Array_ofSubarray___rarg(x_5); +x_7 = lean_box(2); +x_8 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; +x_9 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_9, 0, x_7); +lean_ctor_set(x_9, 1, x_8); +lean_ctor_set(x_9, 2, x_6); +x_10 = l_Lean_Syntax_getArg(x_2, x_1); lean_dec(x_1); -lean_ctor_set(x_14, 1, x_3); -lean_ctor_set(x_14, 0, x_2); -x_134 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_134, 0, x_14); -x_135 = lean_alloc_ctor(0, 9, 10); -lean_ctor_set(x_135, 0, x_116); -lean_ctor_set(x_135, 1, x_117); -lean_ctor_set(x_135, 2, x_118); -lean_ctor_set(x_135, 3, x_122); -lean_ctor_set(x_135, 4, x_123); -lean_ctor_set(x_135, 5, x_124); -lean_ctor_set(x_135, 6, x_125); -lean_ctor_set(x_135, 7, x_131); -lean_ctor_set(x_135, 8, x_134); -lean_ctor_set_uint8(x_135, sizeof(void*)*9, x_119); -lean_ctor_set_uint8(x_135, sizeof(void*)*9 + 1, x_120); -lean_ctor_set_uint8(x_135, sizeof(void*)*9 + 2, x_121); -lean_ctor_set_uint8(x_135, sizeof(void*)*9 + 3, x_126); -lean_ctor_set_uint8(x_135, sizeof(void*)*9 + 4, x_127); -lean_ctor_set_uint8(x_135, sizeof(void*)*9 + 5, x_128); -lean_ctor_set_uint8(x_135, sizeof(void*)*9 + 6, x_129); -lean_ctor_set_uint8(x_135, sizeof(void*)*9 + 7, x_130); -lean_ctor_set_uint8(x_135, sizeof(void*)*9 + 8, x_132); -lean_ctor_set_uint8(x_135, sizeof(void*)*9 + 9, x_133); -lean_inc(x_12); -lean_inc(x_9); -lean_inc(x_7); -lean_inc(x_6); -x_136 = l_Lean_Elab_Tactic_evalTactic(x_4, x_5, x_6, x_135, x_7, x_8, x_9, x_11, x_12, x_115); -if (lean_obj_tag(x_136) == 0) -{ -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; -x_137 = lean_ctor_get(x_136, 1); -lean_inc(x_137); -lean_dec(x_136); -x_138 = lean_st_ref_get(x_12, x_137); -lean_dec(x_12); -x_139 = lean_ctor_get(x_138, 0); -lean_inc(x_139); -x_140 = lean_ctor_get(x_138, 1); -lean_inc(x_140); -if (lean_is_exclusive(x_138)) { - lean_ctor_release(x_138, 0); - lean_ctor_release(x_138, 1); - x_141 = x_138; -} else { - lean_dec_ref(x_138); - x_141 = lean_box(0); -} -x_142 = lean_io_get_num_heartbeats(x_140); -x_143 = lean_ctor_get(x_142, 0); -lean_inc(x_143); -x_144 = lean_ctor_get(x_142, 1); -lean_inc(x_144); -if (lean_is_exclusive(x_142)) { - lean_ctor_release(x_142, 0); - lean_ctor_release(x_142, 1); - x_145 = x_142; -} else { - lean_dec_ref(x_142); - x_145 = lean_box(0); -} -x_146 = lean_nat_sub(x_143, x_114); -lean_dec(x_114); -lean_dec(x_143); -if (lean_is_scalar(x_145)) { - x_147 = lean_alloc_ctor(0, 2, 0); -} else { - x_147 = x_145; -} -lean_ctor_set(x_147, 0, x_139); -lean_ctor_set(x_147, 1, x_146); -x_148 = lean_st_ref_get(x_9, x_144); -lean_dec(x_9); -x_149 = lean_ctor_get(x_148, 0); -lean_inc(x_149); -x_150 = lean_ctor_get(x_148, 1); -lean_inc(x_150); -if (lean_is_exclusive(x_148)) { - lean_ctor_release(x_148, 0); - lean_ctor_release(x_148, 1); - x_151 = x_148; -} else { - lean_dec_ref(x_148); - x_151 = lean_box(0); -} -if (lean_is_scalar(x_151)) { - x_152 = lean_alloc_ctor(0, 2, 0); -} else { - x_152 = x_151; -} -lean_ctor_set(x_152, 0, x_147); -lean_ctor_set(x_152, 1, x_149); -x_153 = lean_st_ref_get(x_7, x_150); -lean_dec(x_7); -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); -} -if (lean_is_scalar(x_156)) { - x_157 = lean_alloc_ctor(0, 2, 0); -} else { - x_157 = x_156; +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_9); +lean_ctor_set(x_11, 1, x_10); +return x_11; } -lean_ctor_set(x_157, 0, x_152); -lean_ctor_set(x_157, 1, x_154); -x_158 = lean_st_ref_get(x_6, x_155); -lean_dec(x_6); -x_159 = lean_ctor_get(x_158, 0); -lean_inc(x_159); -x_160 = lean_ctor_get(x_158, 1); -lean_inc(x_160); -if (lean_is_exclusive(x_158)) { - lean_ctor_release(x_158, 0); - lean_ctor_release(x_158, 1); - x_161 = x_158; -} else { - lean_dec_ref(x_158); - x_161 = lean_box(0); } -if (lean_is_scalar(x_141)) { - x_162 = lean_alloc_ctor(0, 2, 0); -} else { - x_162 = x_141; +LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___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) { +_start: +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___boxed), 2, 1); +lean_closure_set(x_13, 0, x_1); +x_14 = l_Lean_Elab_Term_withNarrowedTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__2(x_13, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_14; } -lean_ctor_set(x_162, 0, x_157); -lean_ctor_set(x_162, 1, x_159); -if (lean_is_scalar(x_161)) { - x_163 = lean_alloc_ctor(0, 2, 0); -} else { - x_163 = x_161; } -lean_ctor_set(x_163, 0, x_162); -lean_ctor_set(x_163, 1, x_160); -return x_163; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalWithAnnotateState___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_apply_9(x_1, x_3, x_4, x_5, x_6, 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; +x_14 = lean_ctor_get(x_12, 0); +x_15 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_2); +lean_ctor_set(x_12, 0, x_15); +return x_12; } else { -lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; -lean_dec(x_114); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_16 = lean_ctor_get(x_12, 0); +x_17 = lean_ctor_get(x_12, 1); +lean_inc(x_17); +lean_inc(x_16); lean_dec(x_12); -lean_dec(x_9); -lean_dec(x_7); -lean_dec(x_6); -x_164 = lean_ctor_get(x_136, 0); -lean_inc(x_164); -x_165 = lean_ctor_get(x_136, 1); -lean_inc(x_165); -if (lean_is_exclusive(x_136)) { - lean_ctor_release(x_136, 0); - lean_ctor_release(x_136, 1); - x_166 = x_136; -} else { - lean_dec_ref(x_136); - 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; -} +x_18 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_2); +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 { -lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; uint8_t x_173; uint8_t x_174; uint8_t x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; uint8_t x_180; uint8_t x_181; uint8_t x_182; uint8_t x_183; uint8_t x_184; lean_object* x_185; uint8_t 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; -x_168 = lean_ctor_get(x_14, 0); -x_169 = lean_ctor_get(x_14, 1); -lean_inc(x_169); -lean_inc(x_168); -lean_dec(x_14); -x_170 = lean_ctor_get(x_1, 0); -lean_inc(x_170); -x_171 = lean_ctor_get(x_1, 1); -lean_inc(x_171); -x_172 = lean_ctor_get(x_1, 2); -lean_inc(x_172); -x_173 = lean_ctor_get_uint8(x_1, sizeof(void*)*9); -x_174 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 1); -x_175 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 2); -x_176 = lean_ctor_get(x_1, 3); -lean_inc(x_176); -x_177 = lean_ctor_get(x_1, 4); -lean_inc(x_177); -x_178 = lean_ctor_get(x_1, 5); -lean_inc(x_178); -x_179 = lean_ctor_get(x_1, 6); -lean_inc(x_179); -x_180 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 3); -x_181 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 4); -x_182 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 5); -x_183 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 6); -x_184 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 7); -x_185 = lean_ctor_get(x_1, 7); -lean_inc(x_185); -x_186 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 8); -x_187 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 9); -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); - x_188 = x_1; -} else { - lean_dec_ref(x_1); - x_188 = lean_box(0); -} -x_189 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_189, 0, x_2); -lean_ctor_set(x_189, 1, x_3); -x_190 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_190, 0, x_189); -if (lean_is_scalar(x_188)) { - x_191 = lean_alloc_ctor(0, 9, 10); -} else { - x_191 = x_188; -} -lean_ctor_set(x_191, 0, x_170); -lean_ctor_set(x_191, 1, x_171); -lean_ctor_set(x_191, 2, x_172); -lean_ctor_set(x_191, 3, x_176); -lean_ctor_set(x_191, 4, x_177); -lean_ctor_set(x_191, 5, x_178); -lean_ctor_set(x_191, 6, x_179); -lean_ctor_set(x_191, 7, x_185); -lean_ctor_set(x_191, 8, x_190); -lean_ctor_set_uint8(x_191, sizeof(void*)*9, x_173); -lean_ctor_set_uint8(x_191, sizeof(void*)*9 + 1, x_174); -lean_ctor_set_uint8(x_191, sizeof(void*)*9 + 2, x_175); -lean_ctor_set_uint8(x_191, sizeof(void*)*9 + 3, x_180); -lean_ctor_set_uint8(x_191, sizeof(void*)*9 + 4, x_181); -lean_ctor_set_uint8(x_191, sizeof(void*)*9 + 5, x_182); -lean_ctor_set_uint8(x_191, sizeof(void*)*9 + 6, x_183); -lean_ctor_set_uint8(x_191, sizeof(void*)*9 + 7, x_184); -lean_ctor_set_uint8(x_191, sizeof(void*)*9 + 8, x_186); -lean_ctor_set_uint8(x_191, sizeof(void*)*9 + 9, x_187); -lean_inc(x_12); -lean_inc(x_9); -lean_inc(x_7); -lean_inc(x_6); -x_192 = l_Lean_Elab_Tactic_evalTactic(x_4, x_5, x_6, x_191, x_7, x_8, x_9, x_11, x_12, x_169); -if (lean_obj_tag(x_192) == 0) +uint8_t x_20; +lean_dec(x_2); +x_20 = !lean_is_exclusive(x_12); +if (x_20 == 0) { -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; lean_object* x_219; -x_193 = lean_ctor_get(x_192, 1); -lean_inc(x_193); -lean_dec(x_192); -x_194 = lean_st_ref_get(x_12, x_193); -lean_dec(x_12); -x_195 = lean_ctor_get(x_194, 0); -lean_inc(x_195); -x_196 = lean_ctor_get(x_194, 1); -lean_inc(x_196); -if (lean_is_exclusive(x_194)) { - lean_ctor_release(x_194, 0); - lean_ctor_release(x_194, 1); - x_197 = x_194; -} else { - lean_dec_ref(x_194); - x_197 = lean_box(0); -} -x_198 = lean_io_get_num_heartbeats(x_196); -x_199 = lean_ctor_get(x_198, 0); -lean_inc(x_199); -x_200 = lean_ctor_get(x_198, 1); -lean_inc(x_200); -if (lean_is_exclusive(x_198)) { - lean_ctor_release(x_198, 0); - lean_ctor_release(x_198, 1); - x_201 = x_198; -} else { - lean_dec_ref(x_198); - x_201 = lean_box(0); -} -x_202 = lean_nat_sub(x_199, x_168); -lean_dec(x_168); -lean_dec(x_199); -if (lean_is_scalar(x_201)) { - x_203 = lean_alloc_ctor(0, 2, 0); -} else { - x_203 = x_201; -} -lean_ctor_set(x_203, 0, x_195); -lean_ctor_set(x_203, 1, x_202); -x_204 = lean_st_ref_get(x_9, x_200); -lean_dec(x_9); -x_205 = lean_ctor_get(x_204, 0); -lean_inc(x_205); -x_206 = lean_ctor_get(x_204, 1); -lean_inc(x_206); -if (lean_is_exclusive(x_204)) { - lean_ctor_release(x_204, 0); - lean_ctor_release(x_204, 1); - x_207 = x_204; -} else { - lean_dec_ref(x_204); - x_207 = lean_box(0); -} -if (lean_is_scalar(x_207)) { - x_208 = lean_alloc_ctor(0, 2, 0); -} else { - x_208 = x_207; -} -lean_ctor_set(x_208, 0, x_203); -lean_ctor_set(x_208, 1, x_205); -x_209 = lean_st_ref_get(x_7, x_206); -lean_dec(x_7); -x_210 = lean_ctor_get(x_209, 0); -lean_inc(x_210); -x_211 = lean_ctor_get(x_209, 1); -lean_inc(x_211); -if (lean_is_exclusive(x_209)) { - lean_ctor_release(x_209, 0); - lean_ctor_release(x_209, 1); - x_212 = x_209; -} else { - lean_dec_ref(x_209); - x_212 = lean_box(0); -} -if (lean_is_scalar(x_212)) { - x_213 = lean_alloc_ctor(0, 2, 0); -} else { - x_213 = x_212; -} -lean_ctor_set(x_213, 0, x_208); -lean_ctor_set(x_213, 1, x_210); -x_214 = lean_st_ref_get(x_6, x_211); -lean_dec(x_6); -x_215 = lean_ctor_get(x_214, 0); -lean_inc(x_215); -x_216 = lean_ctor_get(x_214, 1); -lean_inc(x_216); -if (lean_is_exclusive(x_214)) { - lean_ctor_release(x_214, 0); - lean_ctor_release(x_214, 1); - x_217 = x_214; -} else { - lean_dec_ref(x_214); - x_217 = lean_box(0); -} -if (lean_is_scalar(x_197)) { - x_218 = lean_alloc_ctor(0, 2, 0); -} else { - x_218 = x_197; -} -lean_ctor_set(x_218, 0, x_213); -lean_ctor_set(x_218, 1, x_215); -if (lean_is_scalar(x_217)) { - x_219 = lean_alloc_ctor(0, 2, 0); -} else { - x_219 = x_217; -} -lean_ctor_set(x_219, 0, x_218); -lean_ctor_set(x_219, 1, x_216); -return x_219; +return x_12; } else { -lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; -lean_dec(x_168); +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); -lean_dec(x_9); -lean_dec(x_7); -lean_dec(x_6); -x_220 = lean_ctor_get(x_192, 0); -lean_inc(x_220); -x_221 = lean_ctor_get(x_192, 1); -lean_inc(x_221); -if (lean_is_exclusive(x_192)) { - lean_ctor_release(x_192, 0); - lean_ctor_release(x_192, 1); - x_222 = x_192; -} else { - lean_dec_ref(x_192); - 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; +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_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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) { +static lean_object* _init_l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1() { _start: { -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_box(0); -x_15 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4___lambda__1(x_6, x_2, x_3, x_1, x_4, x_5, x_7, x_8, x_9, x_14, x_11, x_12, x_13); -return x_15; +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalTactic), 10, 0); +return x_1; } -else +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalWithAnnotateState(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, 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_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; uint64_t x_23; lean_object* x_24; uint8_t x_25; -lean_dec(x_11); -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_16 = lean_ctor_get(x_10, 0); -lean_inc(x_16); -lean_dec(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_11 = lean_unsigned_to_nat(1u); +x_12 = l_Lean_Syntax_getArg(x_1, x_11); +x_13 = lean_unsigned_to_nat(2u); +x_14 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; +x_15 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1), 12, 3); +lean_closure_set(x_15, 0, x_13); +lean_closure_set(x_15, 1, x_14); +lean_closure_set(x_15, 2, x_1); +x_16 = l_Lean_Elab_Tactic_mkInitialTacticInfo(x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); 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_18, 0); -lean_inc(x_19); -x_20 = lean_st_ref_set(x_12, x_19, x_13); -lean_dec(x_12); -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = lean_ctor_get(x_18, 1); -lean_inc(x_22); -lean_dec(x_18); -x_23 = lean_uint64_of_nat(x_22); -lean_dec(x_22); -x_24 = lean_io_add_heartbeats(x_23, x_21); -x_25 = !lean_is_exclusive(x_24); -if (x_25 == 0) -{ -lean_object* x_26; -x_26 = lean_ctor_get(x_24, 0); -lean_dec(x_26); -lean_ctor_set(x_24, 0, x_17); -return x_24; +x_19 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalWithAnnotateState___lambda__1), 11, 1); +lean_closure_set(x_19, 0, x_17); +x_20 = l_Lean_Elab_withInfoTreeContext___at_Lean_Elab_Tactic_evalTactic_eval___spec__2(x_15, x_19, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_18); +return x_20; } -else +} +LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { +_start: { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_24, 1); -lean_inc(x_27); -lean_dec(x_24); -x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_17); -lean_ctor_set(x_28, 1, x_27); -return x_28; +lean_object* x_3; +x_3 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1(x_1, x_2); +lean_dec(x_2); +return x_3; } } +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Lean", 4); +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_12, lean_object* x_13) { +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2() { _start: { -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_box(0); -x_15 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4___lambda__1(x_6, x_2, x_3, x_1, x_4, x_5, x_7, x_8, x_9, x_14, x_11, x_12, x_13); -return x_15; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Parser", 6); +return x_1; } -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; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; -lean_dec(x_11); -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_16 = lean_ctor_get(x_10, 0); -lean_inc(x_16); -lean_dec(x_10); -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_18, 0); -lean_inc(x_19); -x_20 = lean_st_ref_set(x_12, x_19, x_13); -lean_dec(x_12); -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = lean_ctor_get(x_18, 1); -lean_inc(x_22); -lean_dec(x_18); -x_23 = lean_uint64_of_nat(x_22); -lean_dec(x_22); -x_24 = lean_io_add_heartbeats(x_23, x_21); -x_25 = !lean_is_exclusive(x_24); -if (x_25 == 0) -{ -lean_object* x_26; -x_26 = lean_ctor_get(x_24, 0); -lean_dec(x_26); -lean_ctor_set(x_24, 0, x_17); -return x_24; } -else +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3() { +_start: { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_24, 1); -lean_inc(x_27); -lean_dec(x_24); -x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_17); -lean_ctor_set(x_28, 1, x_27); -return x_28; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Tactic", 6); +return x_1; } } +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("withAnnotateState", 17); +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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) { +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__5() { _start: { -if (lean_obj_tag(x_1) == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_box(0); -x_16 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_15, x_12, x_13, x_14); -if (lean_obj_tag(x_16) == 0) -{ -uint8_t x_17; -x_17 = !lean_is_exclusive(x_16); -if (x_17 == 0) -{ -return x_16; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; +x_4 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } -else +} +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6() { +_start: { -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(0, 2, 0); -lean_ctor_set(x_20, 0, x_18); -lean_ctor_set(x_20, 1, x_19); -return x_20; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Elab", 4); +return x_1; } } -else -{ -uint8_t x_21; -x_21 = !lean_is_exclusive(x_16); -if (x_21 == 0) +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__7() { +_start: { -return x_16; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("evalWithAnnotateState", 21); +return x_1; } -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; -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_alloc_ctor(1, 2, 0); -lean_ctor_set(x_24, 0, x_22); -lean_ctor_set(x_24, 1, x_23); -return x_24; } +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___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___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; +x_4 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__7; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } } -else -{ -uint8_t x_25; -x_25 = !lean_is_exclusive(x_1); -if (x_25 == 0) -{ -lean_object* x_26; uint8_t x_27; -x_26 = lean_ctor_get(x_1, 0); -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_28, 0); -lean_inc(x_29); -lean_dec(x_28); -lean_ctor_set(x_26, 1, x_29); -x_30 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__5(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); -if (lean_obj_tag(x_30) == 0) -{ -uint8_t x_31; -x_31 = !lean_is_exclusive(x_30); -if (x_31 == 0) +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9() { +_start: { -return x_30; +lean_object* x_1; +x_1 = l_Lean_Elab_Tactic_tacticElabAttribute; +return x_1; } -else +} +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__10() { +_start: { -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_inc(x_33); -lean_inc(x_32); -lean_dec(x_30); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -return x_34; +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalWithAnnotateState), 10, 0); +return x_1; } } -else -{ -uint8_t x_35; -x_35 = !lean_is_exclusive(x_30); -if (x_35 == 0) +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1(lean_object* x_1) { +_start: { -return x_30; +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_Elab_Tactic_evalWithAnnotateState__1___closed__9; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__5; +x_4 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__8; +x_5 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__10; +x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); +return x_6; } -else +} +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__1() { +_start: { -lean_object* x_36; lean_object* x_37; lean_object* x_38; -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_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); -return x_38; -} +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(24u); +x_2 = lean_unsigned_to_nat(57u); +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; } } -else -{ -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_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_ctor_get(x_40, 0); -lean_inc(x_41); -lean_dec(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); -lean_ctor_set(x_1, 0, x_42); -x_43 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__5(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); -if (lean_obj_tag(x_43) == 0) +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__2() { +_start: { -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); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_46 = x_43; -} else { - lean_dec_ref(x_43); - x_46 = lean_box(0); -} -if (lean_is_scalar(x_46)) { - x_47 = lean_alloc_ctor(0, 2, 0); -} else { - x_47 = x_46; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(27u); +x_2 = lean_unsigned_to_nat(64u); +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_ctor_set(x_47, 0, x_44); -lean_ctor_set(x_47, 1, x_45); -return x_47; } -else +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__3() { +_start: { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_48 = lean_ctor_get(x_43, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_43, 1); -lean_inc(x_49); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_50 = x_43; -} else { - lean_dec_ref(x_43); - 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; -} +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__1; +x_2 = lean_unsigned_to_nat(57u); +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__2; +x_4 = lean_unsigned_to_nat(64u); +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; } } -else +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__4() { +_start: { -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_52 = lean_ctor_get(x_1, 0); -lean_inc(x_52); -lean_dec(x_1); -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -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); +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(24u); +x_2 = lean_unsigned_to_nat(61u); +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; } -x_56 = lean_ctor_get(x_54, 0); -lean_inc(x_56); -lean_dec(x_54); -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_53); -lean_ctor_set(x_57, 1, x_56); -x_58 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_58, 0, x_57); -x_59 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__5(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_58, x_12, x_13, x_14); -if (lean_obj_tag(x_59) == 0) +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__5() { +_start: { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_60 = lean_ctor_get(x_59, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_59, 1); -lean_inc(x_61); -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_59); - x_62 = lean_box(0); -} -if (lean_is_scalar(x_62)) { - x_63 = lean_alloc_ctor(0, 2, 0); -} else { - x_63 = x_62; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(24u); +x_2 = lean_unsigned_to_nat(82u); +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_ctor_set(x_63, 0, x_60); -lean_ctor_set(x_63, 1, x_61); -return x_63; } -else +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__6() { +_start: { -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); -x_65 = lean_ctor_get(x_59, 1); -lean_inc(x_65); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_66 = x_59; -} else { - lean_dec_ref(x_59); - 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_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__4; +x_2 = lean_unsigned_to_nat(61u); +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__5; +x_4 = lean_unsigned_to_nat(82u); +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_ctor_set(x_67, 0, x_64); -lean_ctor_set(x_67, 1, x_65); -return x_67; } +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__3; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__6; +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___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__8; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1___closed__7; +x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); +return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__2(lean_object* x_1) { _start: { -if (lean_obj_tag(x_8) == 0) -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_box(0); -x_15 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__3___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_9, x_10, x_11, x_12, x_13); -return x_15; +lean_object* x_2; lean_object* x_3; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__8; +x_3 = l_Lean_Elab_addBuiltinIncrementalElab(x_2, x_1); +return x_3; } -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; lean_object* x_22; -x_16 = lean_ctor_get(x_8, 0); -lean_inc(x_16); -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = lean_ctor_get(x_17, 1); -lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_st_ref_set(x_10, x_18, x_13); -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_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__3___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_20, x_9, x_10, x_11, x_12, x_21); -lean_dec(x_20); -return x_22; } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalDone___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; +x_10 = l_Lean_Elab_Tactic_done(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +return x_10; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalDone(lean_object* x_1) { _start: { -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_box(0); -x_15 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4___lambda__1(x_6, x_2, x_3, x_1, x_4, x_5, x_7, x_8, x_9, x_14, x_11, x_12, x_13); -return x_15; +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalDone___rarg___boxed), 9, 0); +return x_2; } -else +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalDone___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_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; uint64_t x_23; lean_object* x_24; uint8_t x_25; -lean_dec(x_11); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); +lean_object* x_10; +x_10 = l_Lean_Elab_Tactic_evalDone___rarg(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); lean_dec(x_2); -lean_dec(x_1); -x_16 = lean_ctor_get(x_10, 0); -lean_inc(x_16); -lean_dec(x_10); -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_18, 0); -lean_inc(x_19); -x_20 = lean_st_ref_set(x_12, x_19, x_13); -lean_dec(x_12); -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = lean_ctor_get(x_18, 1); -lean_inc(x_22); -lean_dec(x_18); -x_23 = lean_uint64_of_nat(x_22); -lean_dec(x_22); -x_24 = lean_io_add_heartbeats(x_23, x_21); -x_25 = !lean_is_exclusive(x_24); -if (x_25 == 0) -{ -lean_object* x_26; -x_26 = lean_ctor_get(x_24, 0); -lean_dec(x_26); -lean_ctor_set(x_24, 0, x_17); -return x_24; +return x_10; } -else +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalDone___boxed(lean_object* x_1) { +_start: { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_24, 1); -lean_inc(x_27); -lean_dec(x_24); -x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_17); -lean_ctor_set(x_28, 1, x_27); -return x_28; +lean_object* x_2; +x_2 = l_Lean_Elab_Tactic_evalDone(x_1); +lean_dec(x_1); +return x_2; } } +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("done", 4); +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_13) { +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__2() { _start: { -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_box(0); -x_15 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4___lambda__1(x_6, x_2, x_3, x_1, x_4, x_5, x_7, x_8, x_9, x_14, x_11, x_12, x_13); -return x_15; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; +x_4 = l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__1; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } -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; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; -lean_dec(x_11); -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_16 = lean_ctor_get(x_10, 0); -lean_inc(x_16); -lean_dec(x_10); -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_18, 0); -lean_inc(x_19); -x_20 = lean_st_ref_set(x_12, x_19, x_13); -lean_dec(x_12); -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = lean_ctor_get(x_18, 1); -lean_inc(x_22); -lean_dec(x_18); -x_23 = lean_uint64_of_nat(x_22); -lean_dec(x_22); -x_24 = lean_io_add_heartbeats(x_23, x_21); -x_25 = !lean_is_exclusive(x_24); -if (x_25 == 0) +} +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__3() { +_start: { -lean_object* x_26; -x_26 = lean_ctor_get(x_24, 0); -lean_dec(x_26); -lean_ctor_set(x_24, 0, x_17); -return x_24; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("evalDone", 8); +return x_1; } -else +} +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__4() { +_start: { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_24, 1); -lean_inc(x_27); -lean_dec(x_24); -x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_17); -lean_ctor_set(x_28, 1, x_27); -return x_28; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; +x_4 = l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__3; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } } +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalDone___boxed), 1, 0); +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_14) { +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDone__1(lean_object* x_1) { _start: { -if (lean_obj_tag(x_1) == 0) +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_Elab_Tactic_evalWithAnnotateState__1___closed__9; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__2; +x_4 = l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__4; +x_5 = l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__5; +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___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__1() { +_start: { -lean_object* x_15; lean_object* x_16; -x_15 = lean_box(0); -x_16 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__7(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_15, x_12, x_13, x_14); -if (lean_obj_tag(x_16) == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(29u); +x_2 = lean_unsigned_to_nat(44u); +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_Elab_Tactic_evalDone_declRange__1___closed__2() { +_start: { -uint8_t x_17; -x_17 = !lean_is_exclusive(x_16); -if (x_17 == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(30u); +x_2 = lean_unsigned_to_nat(6u); +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_Elab_Tactic_evalDone_declRange__1___closed__3() { +_start: { -return x_16; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__1; +x_2 = lean_unsigned_to_nat(44u); +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__2; +x_4 = lean_unsigned_to_nat(6u); +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; } -else +} +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__4() { +_start: { -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(0, 2, 0); -lean_ctor_set(x_20, 0, x_18); -lean_ctor_set(x_20, 1, x_19); -return x_20; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(29u); +x_2 = lean_unsigned_to_nat(48u); +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; } } -else +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__5() { +_start: { -uint8_t x_21; -x_21 = !lean_is_exclusive(x_16); -if (x_21 == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(29u); +x_2 = lean_unsigned_to_nat(56u); +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_Elab_Tactic_evalDone_declRange__1___closed__6() { +_start: { -return x_16; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__4; +x_2 = lean_unsigned_to_nat(48u); +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__5; +x_4 = lean_unsigned_to_nat(56u); +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; } -else +} +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__7() { +_start: { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -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_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_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__3; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__6; +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___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__4; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___closed__7; +x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); +return x_4; +} } -else +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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) { +_start: { -uint8_t x_25; -x_25 = !lean_is_exclusive(x_1); -if (x_25 == 0) +lean_object* x_14; uint8_t x_15; +x_14 = lean_io_get_num_heartbeats(x_13); +x_15 = !lean_is_exclusive(x_14); +if (x_15 == 0) { -lean_object* x_26; uint8_t x_27; -x_26 = lean_ctor_get(x_1, 0); -x_27 = !lean_is_exclusive(x_26); -if (x_27 == 0) +uint8_t x_16; +x_16 = !lean_is_exclusive(x_1); +if (x_16 == 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_28, 0); -lean_inc(x_29); -lean_dec(x_28); -lean_ctor_set(x_26, 1, x_29); -x_30 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__8(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); -if (lean_obj_tag(x_30) == 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_14, 0); +x_18 = lean_ctor_get(x_14, 1); +x_19 = lean_ctor_get(x_1, 8); +lean_dec(x_19); +lean_ctor_set(x_14, 1, x_3); +lean_ctor_set(x_14, 0, x_2); +x_20 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_20, 0, x_14); +lean_ctor_set(x_1, 8, x_20); +lean_inc(x_12); +x_21 = l_Lean_Elab_Tactic_evalTactic(x_4, x_5, x_6, x_1, x_7, x_8, x_9, x_11, x_12, x_18); +if (lean_obj_tag(x_21) == 0) { -uint8_t x_31; -x_31 = !lean_is_exclusive(x_30); -if (x_31 == 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 = lean_st_ref_get(x_12, x_23); +lean_dec(x_12); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) { -return x_30; +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_24, 1); +x_27 = lean_io_get_num_heartbeats(x_26); +x_28 = !lean_is_exclusive(x_27); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_29 = lean_ctor_get(x_27, 0); +x_30 = lean_nat_sub(x_29, x_17); +lean_dec(x_17); +lean_dec(x_29); +lean_ctor_set(x_24, 1, x_30); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_22); +lean_ctor_set(x_31, 1, x_24); +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_30, 0); -x_33 = 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; +x_32 = lean_ctor_get(x_27, 0); +x_33 = lean_ctor_get(x_27, 1); lean_inc(x_33); lean_inc(x_32); -lean_dec(x_30); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -return x_34; +lean_dec(x_27); +x_34 = lean_nat_sub(x_32, x_17); +lean_dec(x_17); +lean_dec(x_32); +lean_ctor_set(x_24, 1, x_34); +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_22); +lean_ctor_set(x_35, 1, x_24); +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 { -uint8_t x_35; -x_35 = !lean_is_exclusive(x_30); -if (x_35 == 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; lean_object* x_45; lean_object* x_46; +x_37 = lean_ctor_get(x_24, 0); +x_38 = lean_ctor_get(x_24, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_24); +x_39 = lean_io_get_num_heartbeats(x_38); +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +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_nat_sub(x_40, x_17); +lean_dec(x_17); +lean_dec(x_40); +x_44 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_44, 0, x_37); +lean_ctor_set(x_44, 1, x_43); +x_45 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_45, 0, x_22); +lean_ctor_set(x_45, 1, x_44); +if (lean_is_scalar(x_42)) { + x_46 = lean_alloc_ctor(0, 2, 0); +} else { + x_46 = x_42; +} +lean_ctor_set(x_46, 0, x_45); +lean_ctor_set(x_46, 1, x_41); +return x_46; +} +} +else { -return x_30; +uint8_t x_47; +lean_dec(x_17); +lean_dec(x_12); +x_47 = !lean_is_exclusive(x_21); +if (x_47 == 0) +{ +return x_21; } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; -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_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); -return x_38; +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_21, 0); +x_49 = lean_ctor_get(x_21, 1); +lean_inc(x_49); +lean_inc(x_48); +lean_dec(x_21); +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_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -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_ctor_get(x_40, 0); -lean_inc(x_41); -lean_dec(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); -lean_ctor_set(x_1, 0, x_42); -x_43 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__8(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); -if (lean_obj_tag(x_43) == 0) +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; uint8_t x_56; uint8_t 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; uint8_t x_64; uint8_t x_65; uint8_t x_66; uint8_t x_67; lean_object* x_68; uint8_t x_69; uint8_t x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_51 = lean_ctor_get(x_14, 0); +x_52 = lean_ctor_get(x_14, 1); +x_53 = lean_ctor_get(x_1, 0); +x_54 = lean_ctor_get(x_1, 1); +x_55 = lean_ctor_get(x_1, 2); +x_56 = lean_ctor_get_uint8(x_1, sizeof(void*)*9); +x_57 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 1); +x_58 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 2); +x_59 = lean_ctor_get(x_1, 3); +x_60 = lean_ctor_get(x_1, 4); +x_61 = lean_ctor_get(x_1, 5); +x_62 = lean_ctor_get(x_1, 6); +x_63 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 3); +x_64 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 4); +x_65 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 5); +x_66 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 6); +x_67 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 7); +x_68 = lean_ctor_get(x_1, 7); +x_69 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 8); +x_70 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 9); +lean_inc(x_68); +lean_inc(x_62); +lean_inc(x_61); +lean_inc(x_60); +lean_inc(x_59); +lean_inc(x_55); +lean_inc(x_54); +lean_inc(x_53); +lean_dec(x_1); +lean_ctor_set(x_14, 1, x_3); +lean_ctor_set(x_14, 0, x_2); +x_71 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_71, 0, x_14); +x_72 = lean_alloc_ctor(0, 9, 10); +lean_ctor_set(x_72, 0, x_53); +lean_ctor_set(x_72, 1, x_54); +lean_ctor_set(x_72, 2, x_55); +lean_ctor_set(x_72, 3, x_59); +lean_ctor_set(x_72, 4, x_60); +lean_ctor_set(x_72, 5, x_61); +lean_ctor_set(x_72, 6, x_62); +lean_ctor_set(x_72, 7, x_68); +lean_ctor_set(x_72, 8, x_71); +lean_ctor_set_uint8(x_72, sizeof(void*)*9, x_56); +lean_ctor_set_uint8(x_72, sizeof(void*)*9 + 1, x_57); +lean_ctor_set_uint8(x_72, sizeof(void*)*9 + 2, x_58); +lean_ctor_set_uint8(x_72, sizeof(void*)*9 + 3, x_63); +lean_ctor_set_uint8(x_72, sizeof(void*)*9 + 4, x_64); +lean_ctor_set_uint8(x_72, sizeof(void*)*9 + 5, x_65); +lean_ctor_set_uint8(x_72, sizeof(void*)*9 + 6, x_66); +lean_ctor_set_uint8(x_72, sizeof(void*)*9 + 7, x_67); +lean_ctor_set_uint8(x_72, sizeof(void*)*9 + 8, x_69); +lean_ctor_set_uint8(x_72, sizeof(void*)*9 + 9, x_70); +lean_inc(x_12); +x_73 = l_Lean_Elab_Tactic_evalTactic(x_4, x_5, x_6, x_72, x_7, x_8, x_9, x_11, x_12, x_52); +if (lean_obj_tag(x_73) == 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); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_46 = x_43; +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; +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_st_ref_get(x_12, x_75); +lean_dec(x_12); +x_77 = lean_ctor_get(x_76, 0); +lean_inc(x_77); +x_78 = lean_ctor_get(x_76, 1); +lean_inc(x_78); +if (lean_is_exclusive(x_76)) { + lean_ctor_release(x_76, 0); + lean_ctor_release(x_76, 1); + x_79 = x_76; } else { - lean_dec_ref(x_43); - x_46 = lean_box(0); + lean_dec_ref(x_76); + x_79 = lean_box(0); } -if (lean_is_scalar(x_46)) { - x_47 = lean_alloc_ctor(0, 2, 0); +x_80 = lean_io_get_num_heartbeats(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); +if (lean_is_exclusive(x_80)) { + lean_ctor_release(x_80, 0); + lean_ctor_release(x_80, 1); + x_83 = x_80; } else { - x_47 = x_46; + lean_dec_ref(x_80); + x_83 = lean_box(0); } -lean_ctor_set(x_47, 0, x_44); -lean_ctor_set(x_47, 1, x_45); -return x_47; +x_84 = lean_nat_sub(x_81, x_51); +lean_dec(x_51); +lean_dec(x_81); +if (lean_is_scalar(x_79)) { + x_85 = lean_alloc_ctor(0, 2, 0); +} else { + x_85 = x_79; +} +lean_ctor_set(x_85, 0, x_77); +lean_ctor_set(x_85, 1, x_84); +x_86 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_86, 0, x_74); +lean_ctor_set(x_86, 1, x_85); +if (lean_is_scalar(x_83)) { + x_87 = lean_alloc_ctor(0, 2, 0); +} else { + x_87 = x_83; +} +lean_ctor_set(x_87, 0, x_86); +lean_ctor_set(x_87, 1, x_82); +return x_87; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_48 = lean_ctor_get(x_43, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_43, 1); -lean_inc(x_49); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_50 = x_43; +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_51); +lean_dec(x_12); +x_88 = lean_ctor_get(x_73, 0); +lean_inc(x_88); +x_89 = lean_ctor_get(x_73, 1); +lean_inc(x_89); +if (lean_is_exclusive(x_73)) { + lean_ctor_release(x_73, 0); + lean_ctor_release(x_73, 1); + x_90 = x_73; } else { - lean_dec_ref(x_43); - x_50 = lean_box(0); + lean_dec_ref(x_73); + x_90 = lean_box(0); } -if (lean_is_scalar(x_50)) { - x_51 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_90)) { + x_91 = lean_alloc_ctor(1, 2, 0); } else { - x_51 = x_50; + x_91 = x_90; } -lean_ctor_set(x_51, 0, x_48); -lean_ctor_set(x_51, 1, x_49); -return x_51; +lean_ctor_set(x_91, 0, x_88); +lean_ctor_set(x_91, 1, x_89); +return x_91; } } } 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; -x_52 = lean_ctor_get(x_1, 0); -lean_inc(x_52); -lean_dec(x_1); -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -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; +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; uint8_t x_97; uint8_t x_98; uint8_t x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; uint8_t x_104; uint8_t x_105; uint8_t x_106; uint8_t x_107; uint8_t x_108; lean_object* x_109; uint8_t x_110; uint8_t x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; +x_92 = lean_ctor_get(x_14, 0); +x_93 = lean_ctor_get(x_14, 1); +lean_inc(x_93); +lean_inc(x_92); +lean_dec(x_14); +x_94 = lean_ctor_get(x_1, 0); +lean_inc(x_94); +x_95 = lean_ctor_get(x_1, 1); +lean_inc(x_95); +x_96 = lean_ctor_get(x_1, 2); +lean_inc(x_96); +x_97 = lean_ctor_get_uint8(x_1, sizeof(void*)*9); +x_98 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 1); +x_99 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 2); +x_100 = lean_ctor_get(x_1, 3); +lean_inc(x_100); +x_101 = lean_ctor_get(x_1, 4); +lean_inc(x_101); +x_102 = lean_ctor_get(x_1, 5); +lean_inc(x_102); +x_103 = lean_ctor_get(x_1, 6); +lean_inc(x_103); +x_104 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 3); +x_105 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 4); +x_106 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 5); +x_107 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 6); +x_108 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 7); +x_109 = lean_ctor_get(x_1, 7); +lean_inc(x_109); +x_110 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 8); +x_111 = lean_ctor_get_uint8(x_1, sizeof(void*)*9 + 9); +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); + x_112 = x_1; } else { - lean_dec_ref(x_52); - x_55 = lean_box(0); + lean_dec_ref(x_1); + x_112 = lean_box(0); +} +x_113 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_113, 0, x_2); +lean_ctor_set(x_113, 1, x_3); +x_114 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_114, 0, x_113); +if (lean_is_scalar(x_112)) { + x_115 = lean_alloc_ctor(0, 9, 10); +} else { + x_115 = x_112; +} +lean_ctor_set(x_115, 0, x_94); +lean_ctor_set(x_115, 1, x_95); +lean_ctor_set(x_115, 2, x_96); +lean_ctor_set(x_115, 3, x_100); +lean_ctor_set(x_115, 4, x_101); +lean_ctor_set(x_115, 5, x_102); +lean_ctor_set(x_115, 6, x_103); +lean_ctor_set(x_115, 7, x_109); +lean_ctor_set(x_115, 8, x_114); +lean_ctor_set_uint8(x_115, sizeof(void*)*9, x_97); +lean_ctor_set_uint8(x_115, sizeof(void*)*9 + 1, x_98); +lean_ctor_set_uint8(x_115, sizeof(void*)*9 + 2, x_99); +lean_ctor_set_uint8(x_115, sizeof(void*)*9 + 3, x_104); +lean_ctor_set_uint8(x_115, sizeof(void*)*9 + 4, x_105); +lean_ctor_set_uint8(x_115, sizeof(void*)*9 + 5, x_106); +lean_ctor_set_uint8(x_115, sizeof(void*)*9 + 6, x_107); +lean_ctor_set_uint8(x_115, sizeof(void*)*9 + 7, x_108); +lean_ctor_set_uint8(x_115, sizeof(void*)*9 + 8, x_110); +lean_ctor_set_uint8(x_115, sizeof(void*)*9 + 9, x_111); +lean_inc(x_12); +x_116 = l_Lean_Elab_Tactic_evalTactic(x_4, x_5, x_6, x_115, x_7, x_8, x_9, x_11, x_12, x_93); +if (lean_obj_tag(x_116) == 0) +{ +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; +x_117 = lean_ctor_get(x_116, 0); +lean_inc(x_117); +x_118 = lean_ctor_get(x_116, 1); +lean_inc(x_118); +lean_dec(x_116); +x_119 = lean_st_ref_get(x_12, x_118); +lean_dec(x_12); +x_120 = lean_ctor_get(x_119, 0); +lean_inc(x_120); +x_121 = lean_ctor_get(x_119, 1); +lean_inc(x_121); +if (lean_is_exclusive(x_119)) { + lean_ctor_release(x_119, 0); + lean_ctor_release(x_119, 1); + x_122 = x_119; +} else { + lean_dec_ref(x_119); + x_122 = lean_box(0); } -x_56 = lean_ctor_get(x_54, 0); -lean_inc(x_56); -lean_dec(x_54); -if (lean_is_scalar(x_55)) { - x_57 = lean_alloc_ctor(0, 2, 0); +x_123 = lean_io_get_num_heartbeats(x_121); +x_124 = lean_ctor_get(x_123, 0); +lean_inc(x_124); +x_125 = lean_ctor_get(x_123, 1); +lean_inc(x_125); +if (lean_is_exclusive(x_123)) { + lean_ctor_release(x_123, 0); + lean_ctor_release(x_123, 1); + x_126 = x_123; } else { - x_57 = x_55; + lean_dec_ref(x_123); + x_126 = lean_box(0); } -lean_ctor_set(x_57, 0, x_53); -lean_ctor_set(x_57, 1, x_56); -x_58 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_58, 0, x_57); -x_59 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__8(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_58, x_12, x_13, x_14); -if (lean_obj_tag(x_59) == 0) -{ -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_60 = lean_ctor_get(x_59, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_59, 1); -lean_inc(x_61); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_62 = x_59; +x_127 = lean_nat_sub(x_124, x_92); +lean_dec(x_92); +lean_dec(x_124); +if (lean_is_scalar(x_122)) { + x_128 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_59); - x_62 = lean_box(0); + x_128 = x_122; } -if (lean_is_scalar(x_62)) { - x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_128, 0, x_120); +lean_ctor_set(x_128, 1, x_127); +x_129 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_129, 0, x_117); +lean_ctor_set(x_129, 1, x_128); +if (lean_is_scalar(x_126)) { + x_130 = lean_alloc_ctor(0, 2, 0); } else { - x_63 = x_62; + x_130 = x_126; } -lean_ctor_set(x_63, 0, x_60); -lean_ctor_set(x_63, 1, x_61); -return x_63; +lean_ctor_set(x_130, 0, x_129); +lean_ctor_set(x_130, 1, x_125); +return x_130; } else { -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); -x_65 = lean_ctor_get(x_59, 1); -lean_inc(x_65); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_66 = x_59; +lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; +lean_dec(x_92); +lean_dec(x_12); +x_131 = lean_ctor_get(x_116, 0); +lean_inc(x_131); +x_132 = lean_ctor_get(x_116, 1); +lean_inc(x_132); +if (lean_is_exclusive(x_116)) { + lean_ctor_release(x_116, 0); + lean_ctor_release(x_116, 1); + x_133 = x_116; } else { - lean_dec_ref(x_59); - x_66 = lean_box(0); + lean_dec_ref(x_116); + x_133 = lean_box(0); } -if (lean_is_scalar(x_66)) { - x_67 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_133)) { + x_134 = 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; + x_134 = x_133; } +lean_ctor_set(x_134, 0, x_131); +lean_ctor_set(x_134, 1, x_132); +return x_134; } } } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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) { _start: { -if (lean_obj_tag(x_8) == 0) +if (lean_obj_tag(x_10) == 0) { lean_object* x_14; lean_object* x_15; x_14 = lean_box(0); -x_15 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__6___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_9, x_10, x_11, x_12, x_13); +x_15 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4___lambda__1(x_6, x_2, x_3, x_1, x_4, x_5, x_7, x_8, x_9, x_14, x_11, x_12, 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; lean_object* x_21; lean_object* x_22; -x_16 = lean_ctor_get(x_8, 0); +lean_object* x_16; uint8_t x_17; +lean_dec(x_11); +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_16 = lean_ctor_get(x_10, 0); lean_inc(x_16); -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = lean_ctor_get(x_17, 1); -lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_st_ref_set(x_10, x_18, x_13); -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_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__6___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_20, x_9, x_10, x_11, x_12, x_21); -lean_dec(x_20); -return x_22; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { -_start: -{ -if (lean_obj_tag(x_1) == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_box(0); -x_16 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__3(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_15, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_16) == 0) -{ -uint8_t x_17; +lean_dec(x_10); 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_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; +x_18 = lean_ctor_get(x_16, 1); +x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); -lean_inc(x_18); -lean_dec(x_16); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_18); -lean_ctor_set(x_20, 1, x_19); -return x_20; -} +x_20 = lean_st_ref_set(x_12, x_19, x_13); +lean_dec(x_12); +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_18, 1); +lean_inc(x_22); +x_23 = lean_uint64_of_nat(x_22); +lean_dec(x_22); +x_24 = lean_io_add_heartbeats(x_23, x_21); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) +{ +lean_object* x_26; +x_26 = lean_ctor_get(x_24, 0); +lean_dec(x_26); +lean_ctor_set(x_24, 0, x_16); +return x_24; } else { -uint8_t x_21; -x_21 = !lean_is_exclusive(x_16); -if (x_21 == 0) -{ -return x_16; +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_dec(x_24); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_16); +lean_ctor_set(x_28, 1, x_27); +return x_28; +} } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -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_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; uint64_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +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_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; +x_31 = lean_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_st_ref_set(x_12, x_31, x_13); +lean_dec(x_12); +x_33 = lean_ctor_get(x_32, 1); +lean_inc(x_33); +lean_dec(x_32); +x_34 = lean_ctor_get(x_30, 1); +lean_inc(x_34); +x_35 = lean_uint64_of_nat(x_34); +lean_dec(x_34); +x_36 = lean_io_add_heartbeats(x_35, x_33); +x_37 = lean_ctor_get(x_36, 1); +lean_inc(x_37); +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + x_38 = x_36; +} else { + lean_dec_ref(x_36); + x_38 = lean_box(0); } +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_29); +lean_ctor_set(x_39, 1, x_30); +if (lean_is_scalar(x_38)) { + x_40 = lean_alloc_ctor(0, 2, 0); +} else { + x_40 = x_38; } +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_37); +return x_40; } -else -{ -uint8_t x_25; -x_25 = !lean_is_exclusive(x_1); -if (x_25 == 0) -{ -lean_object* x_26; uint8_t x_27; -x_26 = lean_ctor_get(x_1, 0); -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_28, 0); -lean_inc(x_29); -lean_dec(x_28); -lean_ctor_set(x_26, 1, x_29); -x_30 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__6(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_1, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_30) == 0) +} +} +} +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_12, lean_object* x_13) { +_start: { -uint8_t x_31; -x_31 = !lean_is_exclusive(x_30); -if (x_31 == 0) +if (lean_obj_tag(x_10) == 0) { -return x_30; +lean_object* x_14; lean_object* x_15; +x_14 = lean_box(0); +x_15 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4___lambda__1(x_6, x_2, x_3, x_1, x_4, x_5, x_7, x_8, x_9, x_14, x_11, x_12, x_13); +return x_15; } 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_inc(x_33); -lean_inc(x_32); -lean_dec(x_30); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -return x_34; -} -} -else +lean_object* x_16; uint8_t x_17; +lean_dec(x_11); +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_16 = lean_ctor_get(x_10, 0); +lean_inc(x_16); +lean_dec(x_10); +x_17 = !lean_is_exclusive(x_16); +if (x_17 == 0) { -uint8_t x_35; -x_35 = !lean_is_exclusive(x_30); -if (x_35 == 0) +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; +x_18 = lean_ctor_get(x_16, 1); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_st_ref_set(x_12, x_19, x_13); +lean_dec(x_12); +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_18, 1); +lean_inc(x_22); +x_23 = lean_uint64_of_nat(x_22); +lean_dec(x_22); +x_24 = lean_io_add_heartbeats(x_23, x_21); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) { -return x_30; +lean_object* x_26; +x_26 = lean_ctor_get(x_24, 0); +lean_dec(x_26); +lean_ctor_set(x_24, 0, x_16); +return x_24; } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; -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_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); -return x_38; -} +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_dec(x_24); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_16); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } else { -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_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_ctor_get(x_40, 0); -lean_inc(x_41); -lean_dec(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); -lean_ctor_set(x_1, 0, x_42); -x_43 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__6(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_1, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_43) == 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; uint64_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +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_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_st_ref_set(x_12, x_31, x_13); +lean_dec(x_12); +x_33 = lean_ctor_get(x_32, 1); +lean_inc(x_33); +lean_dec(x_32); +x_34 = lean_ctor_get(x_30, 1); +lean_inc(x_34); +x_35 = lean_uint64_of_nat(x_34); +lean_dec(x_34); +x_36 = lean_io_add_heartbeats(x_35, x_33); +x_37 = lean_ctor_get(x_36, 1); +lean_inc(x_37); +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + x_38 = x_36; +} else { + lean_dec_ref(x_36); + x_38 = lean_box(0); +} +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_29); +lean_ctor_set(x_39, 1, x_30); +if (lean_is_scalar(x_38)) { + x_40 = lean_alloc_ctor(0, 2, 0); +} else { + x_40 = x_38; +} +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_37); +return x_40; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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) { +_start: { -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); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_46 = x_43; +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_15; lean_object* x_16; +x_15 = lean_box(0); +lean_inc(x_11); +x_16 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_15, x_12, x_13, x_14); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; uint8_t 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); +x_19 = !lean_is_exclusive(x_17); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_17, 1); +x_21 = lean_st_ref_get(x_11, x_18); +lean_dec(x_11); +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); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_20); +lean_ctor_set(x_24, 1, x_23); +lean_ctor_set(x_17, 1, x_24); +lean_ctor_set(x_21, 0, x_17); +return x_21; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = lean_ctor_get(x_21, 0); +x_26 = lean_ctor_get(x_21, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_21); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_20); +lean_ctor_set(x_27, 1, x_25); +lean_ctor_set(x_17, 1, x_27); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_17); +lean_ctor_set(x_28, 1, 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; +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_st_ref_get(x_11, x_18); +lean_dec(x_11); +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +if (lean_is_exclusive(x_31)) { + lean_ctor_release(x_31, 0); + lean_ctor_release(x_31, 1); + x_34 = x_31; } else { - lean_dec_ref(x_43); - x_46 = lean_box(0); + lean_dec_ref(x_31); + x_34 = lean_box(0); } -if (lean_is_scalar(x_46)) { - x_47 = lean_alloc_ctor(0, 2, 0); +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_30); +lean_ctor_set(x_35, 1, x_32); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_29); +lean_ctor_set(x_36, 1, x_35); +if (lean_is_scalar(x_34)) { + x_37 = lean_alloc_ctor(0, 2, 0); } else { - x_47 = x_46; + x_37 = x_34; } -lean_ctor_set(x_47, 0, x_44); -lean_ctor_set(x_47, 1, x_45); -return x_47; +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +return x_37; +} +} +else +{ +uint8_t x_38; +lean_dec(x_11); +x_38 = !lean_is_exclusive(x_16); +if (x_38 == 0) +{ +return x_16; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_48 = lean_ctor_get(x_43, 0); +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_16, 0); +x_40 = lean_ctor_get(x_16, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_16); +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; +x_42 = !lean_is_exclusive(x_1); +if (x_42 == 0) +{ +lean_object* x_43; uint8_t x_44; +x_43 = lean_ctor_get(x_1, 0); +x_44 = !lean_is_exclusive(x_43); +if (x_44 == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_43, 1); +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +lean_dec(x_45); +lean_ctor_set(x_43, 1, x_46); +lean_inc(x_11); +x_47 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__5(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_47, 0); lean_inc(x_48); -x_49 = lean_ctor_get(x_43, 1); +x_49 = lean_ctor_get(x_47, 1); lean_inc(x_49); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_50 = x_43; +lean_dec(x_47); +x_50 = !lean_is_exclusive(x_48); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; uint8_t x_53; +x_51 = lean_ctor_get(x_48, 1); +x_52 = lean_st_ref_get(x_11, x_49); +lean_dec(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); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_51); +lean_ctor_set(x_55, 1, x_54); +lean_ctor_set(x_48, 1, x_55); +lean_ctor_set(x_52, 0, x_48); +return x_52; +} +else +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_56 = lean_ctor_get(x_52, 0); +x_57 = lean_ctor_get(x_52, 1); +lean_inc(x_57); +lean_inc(x_56); +lean_dec(x_52); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_51); +lean_ctor_set(x_58, 1, x_56); +lean_ctor_set(x_48, 1, x_58); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_48); +lean_ctor_set(x_59, 1, x_57); +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; +x_60 = lean_ctor_get(x_48, 0); +x_61 = lean_ctor_get(x_48, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_48); +x_62 = lean_st_ref_get(x_11, x_49); +lean_dec(x_11); +x_63 = lean_ctor_get(x_62, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_62, 1); +lean_inc(x_64); +if (lean_is_exclusive(x_62)) { + lean_ctor_release(x_62, 0); + lean_ctor_release(x_62, 1); + x_65 = x_62; } else { - lean_dec_ref(x_43); - x_50 = lean_box(0); + lean_dec_ref(x_62); + x_65 = lean_box(0); } -if (lean_is_scalar(x_50)) { - x_51 = lean_alloc_ctor(1, 2, 0); +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_61); +lean_ctor_set(x_66, 1, x_63); +x_67 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_67, 0, x_60); +lean_ctor_set(x_67, 1, x_66); +if (lean_is_scalar(x_65)) { + x_68 = lean_alloc_ctor(0, 2, 0); } else { - x_51 = x_50; + x_68 = x_65; } -lean_ctor_set(x_51, 0, x_48); -lean_ctor_set(x_51, 1, x_49); -return x_51; +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_64); +return x_68; } } +else +{ +uint8_t x_69; +lean_dec(x_11); +x_69 = !lean_is_exclusive(x_47); +if (x_69 == 0) +{ +return x_47; } 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; -x_52 = lean_ctor_get(x_1, 0); -lean_inc(x_52); +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_47, 0); +x_71 = lean_ctor_get(x_47, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_47); +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 +{ +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_43, 0); +x_74 = lean_ctor_get(x_43, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_43); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +lean_dec(x_74); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_73); +lean_ctor_set(x_76, 1, x_75); +lean_ctor_set(x_1, 0, x_76); +lean_inc(x_11); +x_77 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__5(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); +if (lean_obj_tag(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; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +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_ctor_get(x_78, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_78, 1); +lean_inc(x_81); +if (lean_is_exclusive(x_78)) { + lean_ctor_release(x_78, 0); + lean_ctor_release(x_78, 1); + x_82 = x_78; +} else { + lean_dec_ref(x_78); + x_82 = lean_box(0); +} +x_83 = lean_st_ref_get(x_11, x_79); +lean_dec(x_11); +x_84 = lean_ctor_get(x_83, 0); +lean_inc(x_84); +x_85 = lean_ctor_get(x_83, 1); +lean_inc(x_85); +if (lean_is_exclusive(x_83)) { + lean_ctor_release(x_83, 0); + lean_ctor_release(x_83, 1); + x_86 = x_83; +} else { + lean_dec_ref(x_83); + x_86 = lean_box(0); +} +x_87 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_87, 0, x_81); +lean_ctor_set(x_87, 1, x_84); +if (lean_is_scalar(x_82)) { + x_88 = lean_alloc_ctor(0, 2, 0); +} else { + x_88 = x_82; +} +lean_ctor_set(x_88, 0, x_80); +lean_ctor_set(x_88, 1, x_87); +if (lean_is_scalar(x_86)) { + x_89 = lean_alloc_ctor(0, 2, 0); +} else { + x_89 = x_86; +} +lean_ctor_set(x_89, 0, x_88); +lean_ctor_set(x_89, 1, x_85); +return x_89; +} +else +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_dec(x_11); +x_90 = lean_ctor_get(x_77, 0); +lean_inc(x_90); +x_91 = lean_ctor_get(x_77, 1); +lean_inc(x_91); +if (lean_is_exclusive(x_77)) { + lean_ctor_release(x_77, 0); + lean_ctor_release(x_77, 1); + x_92 = x_77; +} else { + lean_dec_ref(x_77); + 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; +} +} +} +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 = lean_ctor_get(x_1, 0); +lean_inc(x_94); lean_dec(x_1); -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -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; +x_95 = lean_ctor_get(x_94, 0); +lean_inc(x_95); +x_96 = lean_ctor_get(x_94, 1); +lean_inc(x_96); +if (lean_is_exclusive(x_94)) { + lean_ctor_release(x_94, 0); + lean_ctor_release(x_94, 1); + x_97 = x_94; } else { - lean_dec_ref(x_52); - x_55 = lean_box(0); + lean_dec_ref(x_94); + x_97 = lean_box(0); } -x_56 = lean_ctor_get(x_54, 0); -lean_inc(x_56); -lean_dec(x_54); -if (lean_is_scalar(x_55)) { - x_57 = lean_alloc_ctor(0, 2, 0); +x_98 = lean_ctor_get(x_96, 0); +lean_inc(x_98); +lean_dec(x_96); +if (lean_is_scalar(x_97)) { + x_99 = lean_alloc_ctor(0, 2, 0); } else { - x_57 = x_55; + x_99 = x_97; } -lean_ctor_set(x_57, 0, x_53); -lean_ctor_set(x_57, 1, x_56); -x_58 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_58, 0, x_57); -x_59 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__6(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_58, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_59) == 0) +lean_ctor_set(x_99, 0, x_95); +lean_ctor_set(x_99, 1, x_98); +x_100 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_100, 0, x_99); +lean_inc(x_11); +x_101 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__5(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_100, x_12, x_13, x_14); +if (lean_obj_tag(x_101) == 0) { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_60 = lean_ctor_get(x_59, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_59, 1); -lean_inc(x_61); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_62 = x_59; +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; +x_102 = lean_ctor_get(x_101, 0); +lean_inc(x_102); +x_103 = lean_ctor_get(x_101, 1); +lean_inc(x_103); +lean_dec(x_101); +x_104 = lean_ctor_get(x_102, 0); +lean_inc(x_104); +x_105 = lean_ctor_get(x_102, 1); +lean_inc(x_105); +if (lean_is_exclusive(x_102)) { + lean_ctor_release(x_102, 0); + lean_ctor_release(x_102, 1); + x_106 = x_102; } else { - lean_dec_ref(x_59); - x_62 = lean_box(0); + lean_dec_ref(x_102); + x_106 = lean_box(0); } -if (lean_is_scalar(x_62)) { - x_63 = lean_alloc_ctor(0, 2, 0); +x_107 = lean_st_ref_get(x_11, x_103); +lean_dec(x_11); +x_108 = lean_ctor_get(x_107, 0); +lean_inc(x_108); +x_109 = lean_ctor_get(x_107, 1); +lean_inc(x_109); +if (lean_is_exclusive(x_107)) { + lean_ctor_release(x_107, 0); + lean_ctor_release(x_107, 1); + x_110 = x_107; } else { - x_63 = x_62; + lean_dec_ref(x_107); + x_110 = lean_box(0); } -lean_ctor_set(x_63, 0, x_60); -lean_ctor_set(x_63, 1, x_61); -return x_63; +x_111 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_111, 0, x_105); +lean_ctor_set(x_111, 1, x_108); +if (lean_is_scalar(x_106)) { + x_112 = lean_alloc_ctor(0, 2, 0); +} else { + x_112 = x_106; +} +lean_ctor_set(x_112, 0, x_104); +lean_ctor_set(x_112, 1, x_111); +if (lean_is_scalar(x_110)) { + x_113 = lean_alloc_ctor(0, 2, 0); +} else { + x_113 = x_110; +} +lean_ctor_set(x_113, 0, x_112); +lean_ctor_set(x_113, 1, x_109); +return x_113; } else { -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); -x_65 = lean_ctor_get(x_59, 1); -lean_inc(x_65); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_66 = x_59; +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +lean_dec(x_11); +x_114 = lean_ctor_get(x_101, 0); +lean_inc(x_114); +x_115 = lean_ctor_get(x_101, 1); +lean_inc(x_115); +if (lean_is_exclusive(x_101)) { + lean_ctor_release(x_101, 0); + lean_ctor_release(x_101, 1); + x_116 = x_101; } else { - lean_dec_ref(x_59); - x_66 = lean_box(0); + lean_dec_ref(x_101); + x_116 = lean_box(0); } -if (lean_is_scalar(x_66)) { - x_67 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_116)) { + x_117 = lean_alloc_ctor(1, 2, 0); } else { - x_67 = x_66; + x_117 = x_116; } -lean_ctor_set(x_67, 0, x_64); -lean_ctor_set(x_67, 1, x_65); -return x_67; +lean_ctor_set(x_117, 0, x_114); +lean_ctor_set(x_117, 1, x_115); +return x_117; } } } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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: { -if (lean_obj_tag(x_6) == 0) +if (lean_obj_tag(x_8) == 0) { lean_object* x_14; lean_object* x_15; x_14 = lean_box(0); -x_15 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__2___lambda__1(x_6, 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_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__3___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_9, x_10, x_11, x_12, 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; lean_object* x_21; lean_object* x_22; -x_16 = lean_ctor_get(x_6, 0); +x_16 = lean_ctor_get(x_8, 0); lean_inc(x_16); x_17 = lean_ctor_get(x_16, 1); lean_inc(x_17); @@ -3984,19 +4283,19 @@ lean_dec(x_16); x_18 = lean_ctor_get(x_17, 1); lean_inc(x_18); lean_dec(x_17); -x_19 = lean_st_ref_set(x_8, x_18, x_13); +x_19 = lean_st_ref_set(x_10, x_18, x_13); 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_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__2___lambda__1(x_6, x_1, x_2, x_3, x_4, x_5, x_20, x_7, x_8, x_9, x_10, x_11, x_12, x_21); +x_22 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__3___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_20, x_9, x_10, x_11, x_12, x_21); lean_dec(x_20); return x_22; } } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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: { if (lean_obj_tag(x_10) == 0) @@ -4008,7 +4307,7 @@ return x_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; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; +lean_object* x_16; uint8_t x_17; lean_dec(x_11); lean_dec(x_9); lean_dec(x_8); @@ -4022,11 +4321,11 @@ lean_dec(x_1); x_16 = lean_ctor_get(x_10, 0); lean_inc(x_16); lean_dec(x_10); -x_17 = lean_ctor_get(x_16, 0); -lean_inc(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; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -lean_dec(x_16); x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); x_20 = lean_st_ref_set(x_12, x_19, x_13); @@ -4036,7 +4335,6 @@ lean_inc(x_21); lean_dec(x_20); x_22 = lean_ctor_get(x_18, 1); lean_inc(x_22); -lean_dec(x_18); x_23 = lean_uint64_of_nat(x_22); lean_dec(x_22); x_24 = lean_io_add_heartbeats(x_23, x_21); @@ -4046,7 +4344,7 @@ if (x_25 == 0) lean_object* x_26; x_26 = lean_ctor_get(x_24, 0); lean_dec(x_26); -lean_ctor_set(x_24, 0, x_17); +lean_ctor_set(x_24, 0, x_16); return x_24; } else @@ -4056,14 +4354,57 @@ x_27 = lean_ctor_get(x_24, 1); lean_inc(x_27); lean_dec(x_24); x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_17); +lean_ctor_set(x_28, 0, x_16); 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; uint64_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +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_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_st_ref_set(x_12, x_31, x_13); +lean_dec(x_12); +x_33 = lean_ctor_get(x_32, 1); +lean_inc(x_33); +lean_dec(x_32); +x_34 = lean_ctor_get(x_30, 1); +lean_inc(x_34); +x_35 = lean_uint64_of_nat(x_34); +lean_dec(x_34); +x_36 = lean_io_add_heartbeats(x_35, x_33); +x_37 = lean_ctor_get(x_36, 1); +lean_inc(x_37); +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + x_38 = x_36; +} else { + lean_dec_ref(x_36); + x_38 = lean_box(0); } +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_29); +lean_ctor_set(x_39, 1, x_30); +if (lean_is_scalar(x_38)) { + x_40 = lean_alloc_ctor(0, 2, 0); +} else { + x_40 = x_38; } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_13) { +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_37); +return x_40; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_13) { _start: { if (lean_obj_tag(x_10) == 0) @@ -4075,7 +4416,7 @@ return x_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; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; +lean_object* x_16; uint8_t x_17; lean_dec(x_11); lean_dec(x_9); lean_dec(x_8); @@ -4089,11 +4430,11 @@ lean_dec(x_1); x_16 = lean_ctor_get(x_10, 0); lean_inc(x_16); lean_dec(x_10); -x_17 = lean_ctor_get(x_16, 0); -lean_inc(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; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -lean_dec(x_16); x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); x_20 = lean_st_ref_set(x_12, x_19, x_13); @@ -4103,7 +4444,6 @@ lean_inc(x_21); lean_dec(x_20); x_22 = lean_ctor_get(x_18, 1); lean_inc(x_22); -lean_dec(x_18); x_23 = lean_uint64_of_nat(x_22); lean_dec(x_22); x_24 = lean_io_add_heartbeats(x_23, x_21); @@ -4113,7 +4453,7 @@ if (x_25 == 0) lean_object* x_26; x_26 = lean_ctor_get(x_24, 0); lean_dec(x_26); -lean_ctor_set(x_24, 0, x_17); +lean_ctor_set(x_24, 0, x_16); return x_24; } else @@ -4123,286 +4463,517 @@ x_27 = lean_ctor_get(x_24, 1); lean_inc(x_27); lean_dec(x_24); x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_17); +lean_ctor_set(x_28, 0, x_16); 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; uint64_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +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_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_st_ref_set(x_12, x_31, x_13); +lean_dec(x_12); +x_33 = lean_ctor_get(x_32, 1); +lean_inc(x_33); +lean_dec(x_32); +x_34 = lean_ctor_get(x_30, 1); +lean_inc(x_34); +x_35 = lean_uint64_of_nat(x_34); +lean_dec(x_34); +x_36 = lean_io_add_heartbeats(x_35, x_33); +x_37 = lean_ctor_get(x_36, 1); +lean_inc(x_37); +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + x_38 = x_36; +} else { + lean_dec_ref(x_36); + x_38 = lean_box(0); +} +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_29); +lean_ctor_set(x_39, 1, x_30); +if (lean_is_scalar(x_38)) { + x_40 = lean_alloc_ctor(0, 2, 0); +} else { + x_40 = x_38; +} +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_37); +return x_40; +} +} } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, 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_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_14) { _start: { if (lean_obj_tag(x_1) == 0) { lean_object* x_15; lean_object* x_16; x_15 = lean_box(0); -x_16 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__11(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_15, x_12, x_13, x_14); +lean_inc(x_11); +x_16 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__7(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_15, x_12, x_13, x_14); 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_17; lean_object* x_18; uint8_t 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); +x_19 = !lean_is_exclusive(x_17); +if (x_19 == 0) { -return x_16; +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_17, 1); +x_21 = lean_st_ref_get(x_11, x_18); +lean_dec(x_11); +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); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_20); +lean_ctor_set(x_24, 1, x_23); +lean_ctor_set(x_17, 1, x_24); +lean_ctor_set(x_21, 0, x_17); +return x_21; } 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(0, 2, 0); -lean_ctor_set(x_20, 0, x_18); -lean_ctor_set(x_20, 1, x_19); -return x_20; +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = lean_ctor_get(x_21, 0); +x_26 = lean_ctor_get(x_21, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_21); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_20); +lean_ctor_set(x_27, 1, x_25); +lean_ctor_set(x_17, 1, x_27); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_17); +lean_ctor_set(x_28, 1, x_26); +return x_28; } } else { -uint8_t x_21; -x_21 = !lean_is_exclusive(x_16); -if (x_21 == 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; +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_st_ref_get(x_11, x_18); +lean_dec(x_11); +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +if (lean_is_exclusive(x_31)) { + lean_ctor_release(x_31, 0); + lean_ctor_release(x_31, 1); + x_34 = x_31; +} else { + lean_dec_ref(x_31); + x_34 = lean_box(0); +} +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_30); +lean_ctor_set(x_35, 1, x_32); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_29); +lean_ctor_set(x_36, 1, x_35); +if (lean_is_scalar(x_34)) { + x_37 = lean_alloc_ctor(0, 2, 0); +} else { + x_37 = x_34; +} +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +return x_37; +} +} +else +{ +uint8_t x_38; +lean_dec(x_11); +x_38 = !lean_is_exclusive(x_16); +if (x_38 == 0) +{ return x_16; } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -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_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_16, 0); +x_40 = lean_ctor_get(x_16, 1); +lean_inc(x_40); +lean_inc(x_39); lean_dec(x_16); -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; +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_25; -x_25 = !lean_is_exclusive(x_1); -if (x_25 == 0) +uint8_t x_42; +x_42 = !lean_is_exclusive(x_1); +if (x_42 == 0) { -lean_object* x_26; uint8_t x_27; -x_26 = lean_ctor_get(x_1, 0); -x_27 = !lean_is_exclusive(x_26); -if (x_27 == 0) +lean_object* x_43; uint8_t x_44; +x_43 = lean_ctor_get(x_1, 0); +x_44 = !lean_is_exclusive(x_43); +if (x_44 == 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_28, 0); -lean_inc(x_29); -lean_dec(x_28); -lean_ctor_set(x_26, 1, x_29); -x_30 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__12(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); -if (lean_obj_tag(x_30) == 0) +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_43, 1); +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +lean_dec(x_45); +lean_ctor_set(x_43, 1, x_46); +lean_inc(x_11); +x_47 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__8(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); +if (lean_obj_tag(x_47) == 0) { -uint8_t x_31; -x_31 = !lean_is_exclusive(x_30); -if (x_31 == 0) +lean_object* x_48; lean_object* x_49; uint8_t 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 = !lean_is_exclusive(x_48); +if (x_50 == 0) { -return x_30; +lean_object* x_51; lean_object* x_52; uint8_t x_53; +x_51 = lean_ctor_get(x_48, 1); +x_52 = lean_st_ref_get(x_11, x_49); +lean_dec(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); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_51); +lean_ctor_set(x_55, 1, x_54); +lean_ctor_set(x_48, 1, x_55); +lean_ctor_set(x_52, 0, x_48); +return x_52; } 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_inc(x_33); -lean_inc(x_32); -lean_dec(x_30); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -return x_34; +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_56 = lean_ctor_get(x_52, 0); +x_57 = lean_ctor_get(x_52, 1); +lean_inc(x_57); +lean_inc(x_56); +lean_dec(x_52); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_51); +lean_ctor_set(x_58, 1, x_56); +lean_ctor_set(x_48, 1, x_58); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_48); +lean_ctor_set(x_59, 1, x_57); +return x_59; } } else { -uint8_t x_35; -x_35 = !lean_is_exclusive(x_30); -if (x_35 == 0) +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_60 = lean_ctor_get(x_48, 0); +x_61 = lean_ctor_get(x_48, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_48); +x_62 = lean_st_ref_get(x_11, x_49); +lean_dec(x_11); +x_63 = lean_ctor_get(x_62, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_62, 1); +lean_inc(x_64); +if (lean_is_exclusive(x_62)) { + lean_ctor_release(x_62, 0); + lean_ctor_release(x_62, 1); + x_65 = x_62; +} else { + lean_dec_ref(x_62); + x_65 = lean_box(0); +} +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_61); +lean_ctor_set(x_66, 1, x_63); +x_67 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_67, 0, x_60); +lean_ctor_set(x_67, 1, x_66); +if (lean_is_scalar(x_65)) { + x_68 = lean_alloc_ctor(0, 2, 0); +} else { + x_68 = x_65; +} +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_64); +return x_68; +} +} +else { -return x_30; +uint8_t x_69; +lean_dec(x_11); +x_69 = !lean_is_exclusive(x_47); +if (x_69 == 0) +{ +return x_47; } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; -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_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); -return x_38; +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_47, 0); +x_71 = lean_ctor_get(x_47, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_47); +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 { -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_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_ctor_get(x_40, 0); -lean_inc(x_41); -lean_dec(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); -lean_ctor_set(x_1, 0, x_42); -x_43 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__12(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); -if (lean_obj_tag(x_43) == 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_43, 0); +x_74 = lean_ctor_get(x_43, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_43); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +lean_dec(x_74); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_73); +lean_ctor_set(x_76, 1, x_75); +lean_ctor_set(x_1, 0, x_76); +lean_inc(x_11); +x_77 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__8(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); +if (lean_obj_tag(x_77) == 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); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_46 = x_43; +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; +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_ctor_get(x_78, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_78, 1); +lean_inc(x_81); +if (lean_is_exclusive(x_78)) { + lean_ctor_release(x_78, 0); + lean_ctor_release(x_78, 1); + x_82 = x_78; } else { - lean_dec_ref(x_43); - x_46 = lean_box(0); + lean_dec_ref(x_78); + x_82 = lean_box(0); } -if (lean_is_scalar(x_46)) { - x_47 = lean_alloc_ctor(0, 2, 0); +x_83 = lean_st_ref_get(x_11, x_79); +lean_dec(x_11); +x_84 = lean_ctor_get(x_83, 0); +lean_inc(x_84); +x_85 = lean_ctor_get(x_83, 1); +lean_inc(x_85); +if (lean_is_exclusive(x_83)) { + lean_ctor_release(x_83, 0); + lean_ctor_release(x_83, 1); + x_86 = x_83; } else { - x_47 = x_46; + lean_dec_ref(x_83); + x_86 = lean_box(0); } -lean_ctor_set(x_47, 0, x_44); -lean_ctor_set(x_47, 1, x_45); -return x_47; +x_87 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_87, 0, x_81); +lean_ctor_set(x_87, 1, x_84); +if (lean_is_scalar(x_82)) { + x_88 = lean_alloc_ctor(0, 2, 0); +} else { + x_88 = x_82; +} +lean_ctor_set(x_88, 0, x_80); +lean_ctor_set(x_88, 1, x_87); +if (lean_is_scalar(x_86)) { + x_89 = lean_alloc_ctor(0, 2, 0); +} else { + x_89 = x_86; +} +lean_ctor_set(x_89, 0, x_88); +lean_ctor_set(x_89, 1, x_85); +return x_89; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_48 = lean_ctor_get(x_43, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_43, 1); -lean_inc(x_49); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_50 = x_43; +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_dec(x_11); +x_90 = lean_ctor_get(x_77, 0); +lean_inc(x_90); +x_91 = lean_ctor_get(x_77, 1); +lean_inc(x_91); +if (lean_is_exclusive(x_77)) { + lean_ctor_release(x_77, 0); + lean_ctor_release(x_77, 1); + x_92 = x_77; } else { - lean_dec_ref(x_43); - x_50 = lean_box(0); + lean_dec_ref(x_77); + x_92 = lean_box(0); } -if (lean_is_scalar(x_50)) { - x_51 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_92)) { + x_93 = lean_alloc_ctor(1, 2, 0); } else { - x_51 = x_50; + x_93 = x_92; } -lean_ctor_set(x_51, 0, x_48); -lean_ctor_set(x_51, 1, x_49); -return x_51; +lean_ctor_set(x_93, 0, x_90); +lean_ctor_set(x_93, 1, x_91); +return x_93; } } } 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; -x_52 = lean_ctor_get(x_1, 0); -lean_inc(x_52); +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 = lean_ctor_get(x_1, 0); +lean_inc(x_94); lean_dec(x_1); -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -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; +x_95 = lean_ctor_get(x_94, 0); +lean_inc(x_95); +x_96 = lean_ctor_get(x_94, 1); +lean_inc(x_96); +if (lean_is_exclusive(x_94)) { + lean_ctor_release(x_94, 0); + lean_ctor_release(x_94, 1); + x_97 = x_94; } else { - lean_dec_ref(x_52); - x_55 = lean_box(0); + lean_dec_ref(x_94); + x_97 = lean_box(0); } -x_56 = lean_ctor_get(x_54, 0); -lean_inc(x_56); -lean_dec(x_54); -if (lean_is_scalar(x_55)) { - x_57 = lean_alloc_ctor(0, 2, 0); +x_98 = lean_ctor_get(x_96, 0); +lean_inc(x_98); +lean_dec(x_96); +if (lean_is_scalar(x_97)) { + x_99 = lean_alloc_ctor(0, 2, 0); } else { - x_57 = x_55; + x_99 = x_97; } -lean_ctor_set(x_57, 0, x_53); -lean_ctor_set(x_57, 1, x_56); -x_58 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_58, 0, x_57); -x_59 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__12(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_58, x_12, x_13, x_14); -if (lean_obj_tag(x_59) == 0) +lean_ctor_set(x_99, 0, x_95); +lean_ctor_set(x_99, 1, x_98); +x_100 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_100, 0, x_99); +lean_inc(x_11); +x_101 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__8(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_100, x_12, x_13, x_14); +if (lean_obj_tag(x_101) == 0) { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_60 = lean_ctor_get(x_59, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_59, 1); -lean_inc(x_61); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_62 = x_59; +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; +x_102 = lean_ctor_get(x_101, 0); +lean_inc(x_102); +x_103 = lean_ctor_get(x_101, 1); +lean_inc(x_103); +lean_dec(x_101); +x_104 = lean_ctor_get(x_102, 0); +lean_inc(x_104); +x_105 = lean_ctor_get(x_102, 1); +lean_inc(x_105); +if (lean_is_exclusive(x_102)) { + lean_ctor_release(x_102, 0); + lean_ctor_release(x_102, 1); + x_106 = x_102; } else { - lean_dec_ref(x_59); - x_62 = lean_box(0); + lean_dec_ref(x_102); + x_106 = lean_box(0); } -if (lean_is_scalar(x_62)) { - x_63 = lean_alloc_ctor(0, 2, 0); +x_107 = lean_st_ref_get(x_11, x_103); +lean_dec(x_11); +x_108 = lean_ctor_get(x_107, 0); +lean_inc(x_108); +x_109 = lean_ctor_get(x_107, 1); +lean_inc(x_109); +if (lean_is_exclusive(x_107)) { + lean_ctor_release(x_107, 0); + lean_ctor_release(x_107, 1); + x_110 = x_107; } else { - x_63 = x_62; + lean_dec_ref(x_107); + x_110 = lean_box(0); } -lean_ctor_set(x_63, 0, x_60); -lean_ctor_set(x_63, 1, x_61); -return x_63; +x_111 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_111, 0, x_105); +lean_ctor_set(x_111, 1, x_108); +if (lean_is_scalar(x_106)) { + x_112 = lean_alloc_ctor(0, 2, 0); +} else { + x_112 = x_106; +} +lean_ctor_set(x_112, 0, x_104); +lean_ctor_set(x_112, 1, x_111); +if (lean_is_scalar(x_110)) { + x_113 = lean_alloc_ctor(0, 2, 0); +} else { + x_113 = x_110; +} +lean_ctor_set(x_113, 0, x_112); +lean_ctor_set(x_113, 1, x_109); +return x_113; } else { -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); -x_65 = lean_ctor_get(x_59, 1); -lean_inc(x_65); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_66 = x_59; +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +lean_dec(x_11); +x_114 = lean_ctor_get(x_101, 0); +lean_inc(x_114); +x_115 = lean_ctor_get(x_101, 1); +lean_inc(x_115); +if (lean_is_exclusive(x_101)) { + lean_ctor_release(x_101, 0); + lean_ctor_release(x_101, 1); + x_116 = x_101; } else { - lean_dec_ref(x_59); - x_66 = lean_box(0); + lean_dec_ref(x_101); + x_116 = lean_box(0); } -if (lean_is_scalar(x_66)) { - x_67 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_116)) { + x_117 = lean_alloc_ctor(1, 2, 0); } else { - x_67 = x_66; + x_117 = x_116; } -lean_ctor_set(x_67, 0, x_64); -lean_ctor_set(x_67, 1, x_65); -return x_67; +lean_ctor_set(x_117, 0, x_114); +lean_ctor_set(x_117, 1, x_115); +return x_117; } } } } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, 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_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_13) { _start: { if (lean_obj_tag(x_8) == 0) { lean_object* x_14; lean_object* x_15; x_14 = lean_box(0); -x_15 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__10___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_9, x_10, x_11, x_12, x_13); +x_15 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__6___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_9, x_10, x_11, x_12, x_13); return x_15; } else @@ -4422,425 +4993,479 @@ lean_inc(x_20); x_21 = lean_ctor_get(x_19, 1); lean_inc(x_21); lean_dec(x_19); -x_22 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__10___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_20, x_9, x_10, x_11, x_12, x_21); +x_22 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__6___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_20, x_9, x_10, x_11, x_12, x_21); lean_dec(x_20); return x_22; } } } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, 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_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { -if (lean_obj_tag(x_10) == 0) +if (lean_obj_tag(x_1) == 0) { -lean_object* x_14; lean_object* x_15; -x_14 = lean_box(0); -x_15 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4___lambda__1(x_6, x_2, x_3, x_1, x_4, x_5, x_7, x_8, x_9, x_14, x_11, x_12, x_13); -return x_15; -} -else +lean_object* x_15; lean_object* x_16; +x_15 = lean_box(0); +lean_inc(x_9); +x_16 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__3(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_15, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_16) == 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; uint64_t x_23; lean_object* x_24; uint8_t x_25; -lean_dec(x_11); -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_16 = lean_ctor_get(x_10, 0); -lean_inc(x_16); -lean_dec(x_10); +lean_object* x_17; lean_object* x_18; uint8_t 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); -x_19 = lean_ctor_get(x_18, 0); -lean_inc(x_19); -x_20 = lean_st_ref_set(x_12, x_19, x_13); -lean_dec(x_12); -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = lean_ctor_get(x_18, 1); -lean_inc(x_22); -lean_dec(x_18); -x_23 = lean_uint64_of_nat(x_22); -lean_dec(x_22); -x_24 = lean_io_add_heartbeats(x_23, x_21); -x_25 = !lean_is_exclusive(x_24); -if (x_25 == 0) +x_19 = !lean_is_exclusive(x_17); +if (x_19 == 0) { -lean_object* x_26; -x_26 = lean_ctor_get(x_24, 0); -lean_dec(x_26); -lean_ctor_set(x_24, 0, x_17); -return x_24; +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_17, 1); +x_21 = lean_st_ref_get(x_9, x_18); +lean_dec(x_9); +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); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_20); +lean_ctor_set(x_24, 1, x_23); +lean_ctor_set(x_17, 1, x_24); +lean_ctor_set(x_21, 0, x_17); +return x_21; } else { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_24, 1); -lean_inc(x_27); -lean_dec(x_24); +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = lean_ctor_get(x_21, 0); +x_26 = lean_ctor_get(x_21, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_21); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_20); +lean_ctor_set(x_27, 1, x_25); +lean_ctor_set(x_17, 1, x_27); x_28 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_28, 0, x_17); -lean_ctor_set(x_28, 1, 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; 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_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_st_ref_get(x_9, x_18); +lean_dec(x_9); +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +if (lean_is_exclusive(x_31)) { + lean_ctor_release(x_31, 0); + lean_ctor_release(x_31, 1); + x_34 = x_31; +} else { + lean_dec_ref(x_31); + x_34 = lean_box(0); +} +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_30); +lean_ctor_set(x_35, 1, x_32); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_29); +lean_ctor_set(x_36, 1, x_35); +if (lean_is_scalar(x_34)) { + x_37 = lean_alloc_ctor(0, 2, 0); +} else { + x_37 = x_34; } +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +return x_37; } -LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__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, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_box(0); -x_15 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4___lambda__1(x_6, x_2, x_3, x_1, x_4, x_5, x_7, x_8, x_9, x_14, x_11, x_12, 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; lean_object* x_21; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; -lean_dec(x_11); +uint8_t x_38; 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_16 = lean_ctor_get(x_10, 0); -lean_inc(x_16); -lean_dec(x_10); -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_18, 0); -lean_inc(x_19); -x_20 = lean_st_ref_set(x_12, x_19, x_13); -lean_dec(x_12); -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = lean_ctor_get(x_18, 1); -lean_inc(x_22); -lean_dec(x_18); -x_23 = lean_uint64_of_nat(x_22); -lean_dec(x_22); -x_24 = lean_io_add_heartbeats(x_23, x_21); -x_25 = !lean_is_exclusive(x_24); -if (x_25 == 0) +x_38 = !lean_is_exclusive(x_16); +if (x_38 == 0) { -lean_object* x_26; -x_26 = lean_ctor_get(x_24, 0); -lean_dec(x_26); -lean_ctor_set(x_24, 0, x_17); -return x_24; +return x_16; } else { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_24, 1); -lean_inc(x_27); -lean_dec(x_24); -x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_17); -lean_ctor_set(x_28, 1, x_27); -return x_28; -} +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_16, 0); +x_40 = lean_ctor_get(x_16, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_16); +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_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13___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: -{ -if (lean_obj_tag(x_1) == 0) +else { -lean_object* x_15; lean_object* x_16; -x_15 = lean_box(0); -x_16 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__14(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_15, x_12, x_13, x_14); -if (lean_obj_tag(x_16) == 0) +uint8_t x_42; +x_42 = !lean_is_exclusive(x_1); +if (x_42 == 0) { -uint8_t x_17; -x_17 = !lean_is_exclusive(x_16); -if (x_17 == 0) +lean_object* x_43; uint8_t x_44; +x_43 = lean_ctor_get(x_1, 0); +x_44 = !lean_is_exclusive(x_43); +if (x_44 == 0) { -return x_16; -} -else +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_43, 1); +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +lean_dec(x_45); +lean_ctor_set(x_43, 1, x_46); +lean_inc(x_9); +x_47 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__6(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_1, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_47) == 0) { -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(0, 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_48; lean_object* x_49; uint8_t 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 = !lean_is_exclusive(x_48); +if (x_50 == 0) { -uint8_t x_21; -x_21 = !lean_is_exclusive(x_16); -if (x_21 == 0) +lean_object* x_51; lean_object* x_52; uint8_t x_53; +x_51 = lean_ctor_get(x_48, 1); +x_52 = lean_st_ref_get(x_9, x_49); +lean_dec(x_9); +x_53 = !lean_is_exclusive(x_52); +if (x_53 == 0) { -return x_16; +lean_object* x_54; lean_object* x_55; +x_54 = lean_ctor_get(x_52, 0); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_51); +lean_ctor_set(x_55, 1, x_54); +lean_ctor_set(x_48, 1, x_55); +lean_ctor_set(x_52, 0, x_48); +return x_52; } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -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_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_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_56 = lean_ctor_get(x_52, 0); +x_57 = lean_ctor_get(x_52, 1); +lean_inc(x_57); +lean_inc(x_56); +lean_dec(x_52); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_51); +lean_ctor_set(x_58, 1, x_56); +lean_ctor_set(x_48, 1, x_58); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_48); +lean_ctor_set(x_59, 1, x_57); +return x_59; } } else { -uint8_t x_25; -x_25 = !lean_is_exclusive(x_1); -if (x_25 == 0) -{ -lean_object* x_26; uint8_t x_27; -x_26 = lean_ctor_get(x_1, 0); -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_28, 0); -lean_inc(x_29); -lean_dec(x_28); -lean_ctor_set(x_26, 1, x_29); -x_30 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__15(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); -if (lean_obj_tag(x_30) == 0) -{ -uint8_t x_31; -x_31 = !lean_is_exclusive(x_30); -if (x_31 == 0) -{ -return x_30; +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_60 = lean_ctor_get(x_48, 0); +x_61 = lean_ctor_get(x_48, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_48); +x_62 = lean_st_ref_get(x_9, x_49); +lean_dec(x_9); +x_63 = lean_ctor_get(x_62, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_62, 1); +lean_inc(x_64); +if (lean_is_exclusive(x_62)) { + lean_ctor_release(x_62, 0); + lean_ctor_release(x_62, 1); + x_65 = x_62; +} else { + lean_dec_ref(x_62); + x_65 = lean_box(0); } -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_inc(x_33); -lean_inc(x_32); -lean_dec(x_30); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -return x_34; +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_61); +lean_ctor_set(x_66, 1, x_63); +x_67 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_67, 0, x_60); +lean_ctor_set(x_67, 1, x_66); +if (lean_is_scalar(x_65)) { + x_68 = lean_alloc_ctor(0, 2, 0); +} else { + x_68 = x_65; +} +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_64); +return x_68; } } else { -uint8_t x_35; -x_35 = !lean_is_exclusive(x_30); -if (x_35 == 0) +uint8_t x_69; +lean_dec(x_9); +x_69 = !lean_is_exclusive(x_47); +if (x_69 == 0) { -return x_30; +return x_47; } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; -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_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); -return x_38; +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_47, 0); +x_71 = lean_ctor_get(x_47, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_47); +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 { -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_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_ctor_get(x_40, 0); -lean_inc(x_41); -lean_dec(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); -lean_ctor_set(x_1, 0, x_42); -x_43 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__15(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); -if (lean_obj_tag(x_43) == 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_43, 0); +x_74 = lean_ctor_get(x_43, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_43); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +lean_dec(x_74); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_73); +lean_ctor_set(x_76, 1, x_75); +lean_ctor_set(x_1, 0, x_76); +lean_inc(x_9); +x_77 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__6(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_1, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_77) == 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); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_46 = x_43; +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; +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_ctor_get(x_78, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_78, 1); +lean_inc(x_81); +if (lean_is_exclusive(x_78)) { + lean_ctor_release(x_78, 0); + lean_ctor_release(x_78, 1); + x_82 = x_78; } else { - lean_dec_ref(x_43); - x_46 = lean_box(0); + lean_dec_ref(x_78); + x_82 = lean_box(0); } -if (lean_is_scalar(x_46)) { - x_47 = lean_alloc_ctor(0, 2, 0); +x_83 = lean_st_ref_get(x_9, x_79); +lean_dec(x_9); +x_84 = lean_ctor_get(x_83, 0); +lean_inc(x_84); +x_85 = lean_ctor_get(x_83, 1); +lean_inc(x_85); +if (lean_is_exclusive(x_83)) { + lean_ctor_release(x_83, 0); + lean_ctor_release(x_83, 1); + x_86 = x_83; } else { - x_47 = x_46; + lean_dec_ref(x_83); + x_86 = lean_box(0); } -lean_ctor_set(x_47, 0, x_44); -lean_ctor_set(x_47, 1, x_45); -return x_47; +x_87 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_87, 0, x_81); +lean_ctor_set(x_87, 1, x_84); +if (lean_is_scalar(x_82)) { + x_88 = lean_alloc_ctor(0, 2, 0); +} else { + x_88 = x_82; +} +lean_ctor_set(x_88, 0, x_80); +lean_ctor_set(x_88, 1, x_87); +if (lean_is_scalar(x_86)) { + x_89 = lean_alloc_ctor(0, 2, 0); +} else { + x_89 = x_86; +} +lean_ctor_set(x_89, 0, x_88); +lean_ctor_set(x_89, 1, x_85); +return x_89; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_48 = lean_ctor_get(x_43, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_43, 1); -lean_inc(x_49); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_50 = x_43; +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_dec(x_9); +x_90 = lean_ctor_get(x_77, 0); +lean_inc(x_90); +x_91 = lean_ctor_get(x_77, 1); +lean_inc(x_91); +if (lean_is_exclusive(x_77)) { + lean_ctor_release(x_77, 0); + lean_ctor_release(x_77, 1); + x_92 = x_77; } else { - lean_dec_ref(x_43); - x_50 = lean_box(0); + lean_dec_ref(x_77); + x_92 = lean_box(0); } -if (lean_is_scalar(x_50)) { - x_51 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_92)) { + x_93 = lean_alloc_ctor(1, 2, 0); } else { - x_51 = x_50; + x_93 = x_92; } -lean_ctor_set(x_51, 0, x_48); -lean_ctor_set(x_51, 1, x_49); -return x_51; +lean_ctor_set(x_93, 0, x_90); +lean_ctor_set(x_93, 1, x_91); +return x_93; } } } 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; -x_52 = lean_ctor_get(x_1, 0); -lean_inc(x_52); +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 = lean_ctor_get(x_1, 0); +lean_inc(x_94); lean_dec(x_1); -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -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; +x_95 = lean_ctor_get(x_94, 0); +lean_inc(x_95); +x_96 = lean_ctor_get(x_94, 1); +lean_inc(x_96); +if (lean_is_exclusive(x_94)) { + lean_ctor_release(x_94, 0); + lean_ctor_release(x_94, 1); + x_97 = x_94; } else { - lean_dec_ref(x_52); - x_55 = lean_box(0); + lean_dec_ref(x_94); + x_97 = lean_box(0); } -x_56 = lean_ctor_get(x_54, 0); -lean_inc(x_56); -lean_dec(x_54); -if (lean_is_scalar(x_55)) { - x_57 = lean_alloc_ctor(0, 2, 0); +x_98 = lean_ctor_get(x_96, 0); +lean_inc(x_98); +lean_dec(x_96); +if (lean_is_scalar(x_97)) { + x_99 = lean_alloc_ctor(0, 2, 0); } else { - x_57 = x_55; + x_99 = x_97; } -lean_ctor_set(x_57, 0, x_53); -lean_ctor_set(x_57, 1, x_56); -x_58 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_58, 0, x_57); -x_59 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__15(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_58, x_12, x_13, x_14); -if (lean_obj_tag(x_59) == 0) +lean_ctor_set(x_99, 0, x_95); +lean_ctor_set(x_99, 1, x_98); +x_100 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_100, 0, x_99); +lean_inc(x_9); +x_101 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__6(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_100, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_101) == 0) { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_60 = lean_ctor_get(x_59, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_59, 1); -lean_inc(x_61); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_62 = x_59; +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; +x_102 = lean_ctor_get(x_101, 0); +lean_inc(x_102); +x_103 = lean_ctor_get(x_101, 1); +lean_inc(x_103); +lean_dec(x_101); +x_104 = lean_ctor_get(x_102, 0); +lean_inc(x_104); +x_105 = lean_ctor_get(x_102, 1); +lean_inc(x_105); +if (lean_is_exclusive(x_102)) { + lean_ctor_release(x_102, 0); + lean_ctor_release(x_102, 1); + x_106 = x_102; } else { - lean_dec_ref(x_59); - x_62 = lean_box(0); + lean_dec_ref(x_102); + x_106 = lean_box(0); +} +x_107 = lean_st_ref_get(x_9, x_103); +lean_dec(x_9); +x_108 = lean_ctor_get(x_107, 0); +lean_inc(x_108); +x_109 = lean_ctor_get(x_107, 1); +lean_inc(x_109); +if (lean_is_exclusive(x_107)) { + lean_ctor_release(x_107, 0); + lean_ctor_release(x_107, 1); + x_110 = x_107; +} else { + lean_dec_ref(x_107); + x_110 = lean_box(0); } -if (lean_is_scalar(x_62)) { - x_63 = lean_alloc_ctor(0, 2, 0); +x_111 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_111, 0, x_105); +lean_ctor_set(x_111, 1, x_108); +if (lean_is_scalar(x_106)) { + x_112 = lean_alloc_ctor(0, 2, 0); } else { - x_63 = x_62; + x_112 = x_106; } -lean_ctor_set(x_63, 0, x_60); -lean_ctor_set(x_63, 1, x_61); -return x_63; +lean_ctor_set(x_112, 0, x_104); +lean_ctor_set(x_112, 1, x_111); +if (lean_is_scalar(x_110)) { + x_113 = lean_alloc_ctor(0, 2, 0); +} else { + x_113 = x_110; +} +lean_ctor_set(x_113, 0, x_112); +lean_ctor_set(x_113, 1, x_109); +return x_113; } else { -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); -x_65 = lean_ctor_get(x_59, 1); -lean_inc(x_65); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_66 = x_59; +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +lean_dec(x_9); +x_114 = lean_ctor_get(x_101, 0); +lean_inc(x_114); +x_115 = lean_ctor_get(x_101, 1); +lean_inc(x_115); +if (lean_is_exclusive(x_101)) { + lean_ctor_release(x_101, 0); + lean_ctor_release(x_101, 1); + x_116 = x_101; } else { - lean_dec_ref(x_59); - x_66 = lean_box(0); + lean_dec_ref(x_101); + x_116 = lean_box(0); } -if (lean_is_scalar(x_66)) { - x_67 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_116)) { + x_117 = lean_alloc_ctor(1, 2, 0); } else { - x_67 = x_66; + x_117 = x_116; } -lean_ctor_set(x_67, 0, x_64); -lean_ctor_set(x_67, 1, x_65); -return x_67; +lean_ctor_set(x_117, 0, x_114); +lean_ctor_set(x_117, 1, x_115); +return x_117; } } } } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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_object* x_7, lean_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_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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) { _start: { -if (lean_obj_tag(x_8) == 0) +if (lean_obj_tag(x_6) == 0) { lean_object* x_14; lean_object* x_15; x_14 = lean_box(0); -x_15 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_9, x_10, x_11, x_12, x_13); +x_15 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__2___lambda__1(x_6, 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; } 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; lean_object* x_22; -x_16 = lean_ctor_get(x_8, 0); +x_16 = lean_ctor_get(x_6, 0); lean_inc(x_16); x_17 = lean_ctor_get(x_16, 1); lean_inc(x_17); @@ -4848,595 +5473,703 @@ lean_dec(x_16); x_18 = lean_ctor_get(x_17, 1); lean_inc(x_18); lean_dec(x_17); -x_19 = lean_st_ref_set(x_10, x_18, x_13); +x_19 = lean_st_ref_set(x_8, x_18, x_13); 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_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_20, x_9, x_10, x_11, x_12, x_21); +x_22 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__2___lambda__1(x_6, x_1, x_2, x_3, x_4, x_5, x_20, x_7, x_8, x_9, x_10, x_11, x_12, x_21); lean_dec(x_20); return x_22; } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_12, lean_object* x_13) { _start: { -if (lean_obj_tag(x_1) == 0) +if (lean_obj_tag(x_10) == 0) { -lean_object* x_15; lean_object* x_16; -x_15 = lean_box(0); -x_16 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__10(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_15, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_16) == 0) +lean_object* x_14; lean_object* x_15; +x_14 = lean_box(0); +x_15 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4___lambda__1(x_6, x_2, x_3, x_1, x_4, x_5, x_7, x_8, x_9, x_14, x_11, x_12, x_13); +return x_15; +} +else { -uint8_t x_17; +lean_object* x_16; uint8_t x_17; +lean_dec(x_11); +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_16 = lean_ctor_get(x_10, 0); +lean_inc(x_16); +lean_dec(x_10); 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_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; +x_18 = lean_ctor_get(x_16, 1); +x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); -lean_inc(x_18); -lean_dec(x_16); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_18); -lean_ctor_set(x_20, 1, x_19); -return x_20; -} +x_20 = lean_st_ref_set(x_12, x_19, x_13); +lean_dec(x_12); +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_18, 1); +lean_inc(x_22); +x_23 = lean_uint64_of_nat(x_22); +lean_dec(x_22); +x_24 = lean_io_add_heartbeats(x_23, x_21); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) +{ +lean_object* x_26; +x_26 = lean_ctor_get(x_24, 0); +lean_dec(x_26); +lean_ctor_set(x_24, 0, x_16); +return x_24; } else { -uint8_t x_21; -x_21 = !lean_is_exclusive(x_16); -if (x_21 == 0) -{ -return x_16; +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_dec(x_24); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_16); +lean_ctor_set(x_28, 1, x_27); +return x_28; +} } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -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_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; uint64_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +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_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; +x_31 = lean_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_st_ref_set(x_12, x_31, x_13); +lean_dec(x_12); +x_33 = lean_ctor_get(x_32, 1); +lean_inc(x_33); +lean_dec(x_32); +x_34 = lean_ctor_get(x_30, 1); +lean_inc(x_34); +x_35 = lean_uint64_of_nat(x_34); +lean_dec(x_34); +x_36 = lean_io_add_heartbeats(x_35, x_33); +x_37 = lean_ctor_get(x_36, 1); +lean_inc(x_37); +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + x_38 = x_36; +} else { + lean_dec_ref(x_36); + x_38 = lean_box(0); } +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_29); +lean_ctor_set(x_39, 1, x_30); +if (lean_is_scalar(x_38)) { + x_40 = lean_alloc_ctor(0, 2, 0); +} else { + x_40 = x_38; } +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_37); +return x_40; } -else -{ -uint8_t x_25; -x_25 = !lean_is_exclusive(x_1); -if (x_25 == 0) -{ -lean_object* x_26; uint8_t x_27; -x_26 = lean_ctor_get(x_1, 0); -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_28, 0); -lean_inc(x_29); -lean_dec(x_28); -lean_ctor_set(x_26, 1, x_29); -x_30 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_1, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_30) == 0) +} +} +} +LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_13) { +_start: { -uint8_t x_31; -x_31 = !lean_is_exclusive(x_30); -if (x_31 == 0) +if (lean_obj_tag(x_10) == 0) { -return x_30; +lean_object* x_14; lean_object* x_15; +x_14 = lean_box(0); +x_15 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4___lambda__1(x_6, x_2, x_3, x_1, x_4, x_5, x_7, x_8, x_9, x_14, x_11, x_12, x_13); +return x_15; } 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_inc(x_33); -lean_inc(x_32); -lean_dec(x_30); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -return x_34; -} -} -else +lean_object* x_16; uint8_t x_17; +lean_dec(x_11); +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_16 = lean_ctor_get(x_10, 0); +lean_inc(x_16); +lean_dec(x_10); +x_17 = !lean_is_exclusive(x_16); +if (x_17 == 0) { -uint8_t x_35; -x_35 = !lean_is_exclusive(x_30); -if (x_35 == 0) +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; +x_18 = lean_ctor_get(x_16, 1); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_st_ref_set(x_12, x_19, x_13); +lean_dec(x_12); +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_ctor_get(x_18, 1); +lean_inc(x_22); +x_23 = lean_uint64_of_nat(x_22); +lean_dec(x_22); +x_24 = lean_io_add_heartbeats(x_23, x_21); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) { -return x_30; +lean_object* x_26; +x_26 = lean_ctor_get(x_24, 0); +lean_dec(x_26); +lean_ctor_set(x_24, 0, x_16); +return x_24; } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; -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_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); -return x_38; -} +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_dec(x_24); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_16); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } else { -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_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_ctor_get(x_40, 0); -lean_inc(x_41); -lean_dec(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); -lean_ctor_set(x_1, 0, x_42); -x_43 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_1, x_10, x_11, x_12, x_13, x_14); -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); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_46 = x_43; -} else { - lean_dec_ref(x_43); - x_46 = lean_box(0); -} -if (lean_is_scalar(x_46)) { - x_47 = lean_alloc_ctor(0, 2, 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; uint64_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +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_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_st_ref_set(x_12, x_31, x_13); +lean_dec(x_12); +x_33 = lean_ctor_get(x_32, 1); +lean_inc(x_33); +lean_dec(x_32); +x_34 = lean_ctor_get(x_30, 1); +lean_inc(x_34); +x_35 = lean_uint64_of_nat(x_34); +lean_dec(x_34); +x_36 = lean_io_add_heartbeats(x_35, x_33); +x_37 = lean_ctor_get(x_36, 1); +lean_inc(x_37); +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + x_38 = x_36; } else { - x_47 = x_46; -} -lean_ctor_set(x_47, 0, x_44); -lean_ctor_set(x_47, 1, x_45); -return x_47; + lean_dec_ref(x_36); + x_38 = lean_box(0); } -else -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_48 = lean_ctor_get(x_43, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_43, 1); -lean_inc(x_49); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_50 = x_43; +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_29); +lean_ctor_set(x_39, 1, x_30); +if (lean_is_scalar(x_38)) { + x_40 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_43); - x_50 = lean_box(0); + x_40 = x_38; } -if (lean_is_scalar(x_50)) { - x_51 = lean_alloc_ctor(1, 2, 0); -} else { - x_51 = x_50; +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_37); +return x_40; } -lean_ctor_set(x_51, 0, x_48); -lean_ctor_set(x_51, 1, x_49); -return x_51; } } } -else +LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: { -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_52 = lean_ctor_get(x_1, 0); -lean_inc(x_52); -lean_dec(x_1); -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -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_54, 0); -lean_inc(x_56); -lean_dec(x_54); -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_53); -lean_ctor_set(x_57, 1, x_56); -x_58 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_58, 0, x_57); -x_59 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_58, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_59) == 0) +if (lean_obj_tag(x_1) == 0) { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_60 = lean_ctor_get(x_59, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_59, 1); -lean_inc(x_61); -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_59); - x_62 = lean_box(0); +lean_object* x_15; lean_object* x_16; +x_15 = lean_box(0); +lean_inc(x_11); +x_16 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__11(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_15, x_12, x_13, x_14); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; uint8_t 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); +x_19 = !lean_is_exclusive(x_17); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_17, 1); +x_21 = lean_st_ref_get(x_11, x_18); +lean_dec(x_11); +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); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_20); +lean_ctor_set(x_24, 1, x_23); +lean_ctor_set(x_17, 1, x_24); +lean_ctor_set(x_21, 0, x_17); +return x_21; } -if (lean_is_scalar(x_62)) { - x_63 = lean_alloc_ctor(0, 2, 0); -} else { - x_63 = x_62; +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = lean_ctor_get(x_21, 0); +x_26 = lean_ctor_get(x_21, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_21); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_20); +lean_ctor_set(x_27, 1, x_25); +lean_ctor_set(x_17, 1, x_27); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_17); +lean_ctor_set(x_28, 1, x_26); +return x_28; } -lean_ctor_set(x_63, 0, x_60); -lean_ctor_set(x_63, 1, x_61); -return x_63; } else { -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); -x_65 = lean_ctor_get(x_59, 1); -lean_inc(x_65); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_66 = x_59; +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_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_st_ref_get(x_11, x_18); +lean_dec(x_11); +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +if (lean_is_exclusive(x_31)) { + lean_ctor_release(x_31, 0); + lean_ctor_release(x_31, 1); + x_34 = x_31; } else { - lean_dec_ref(x_59); - x_66 = lean_box(0); + lean_dec_ref(x_31); + x_34 = lean_box(0); } -if (lean_is_scalar(x_66)) { - x_67 = lean_alloc_ctor(1, 2, 0); +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_30); +lean_ctor_set(x_35, 1, x_32); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_29); +lean_ctor_set(x_36, 1, x_35); +if (lean_is_scalar(x_34)) { + x_37 = lean_alloc_ctor(0, 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; -} -} + x_37 = x_34; } +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +return x_37; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_13) { -_start: +else { -if (lean_obj_tag(x_6) == 0) +uint8_t x_38; +lean_dec(x_11); +x_38 = !lean_is_exclusive(x_16); +if (x_38 == 0) { -lean_object* x_14; lean_object* x_15; -x_14 = lean_box(0); -x_15 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9___lambda__1(x_6, 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; +return x_16; } 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; lean_object* x_22; -x_16 = lean_ctor_get(x_6, 0); -lean_inc(x_16); -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_16, 0); +x_40 = lean_ctor_get(x_16, 1); +lean_inc(x_40); +lean_inc(x_39); lean_dec(x_16); -x_18 = lean_ctor_get(x_17, 1); -lean_inc(x_18); -lean_dec(x_17); -x_19 = lean_st_ref_set(x_8, x_18, x_13); -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_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9___lambda__1(x_6, x_1, x_2, x_3, x_4, x_5, x_20, x_7, x_8, x_9, x_10, x_11, x_12, x_21); -lean_dec(x_20); -return x_22; +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_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_14) { -_start: -{ -if (lean_obj_tag(x_1) == 0) +else { -lean_object* x_15; lean_object* x_16; -x_15 = lean_box(0); -x_16 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__2(x_2, x_3, x_4, x_6, x_7, x_15, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_16) == 0) +uint8_t x_42; +x_42 = !lean_is_exclusive(x_1); +if (x_42 == 0) { -uint8_t x_17; -x_17 = !lean_is_exclusive(x_16); -if (x_17 == 0) +lean_object* x_43; uint8_t x_44; +x_43 = lean_ctor_get(x_1, 0); +x_44 = !lean_is_exclusive(x_43); +if (x_44 == 0) { -return x_16; -} -else +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_43, 1); +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +lean_dec(x_45); +lean_ctor_set(x_43, 1, x_46); +lean_inc(x_11); +x_47 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__12(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); +if (lean_obj_tag(x_47) == 0) { -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(0, 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_48; lean_object* x_49; uint8_t 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 = !lean_is_exclusive(x_48); +if (x_50 == 0) { -uint8_t x_21; -x_21 = !lean_is_exclusive(x_16); -if (x_21 == 0) +lean_object* x_51; lean_object* x_52; uint8_t x_53; +x_51 = lean_ctor_get(x_48, 1); +x_52 = lean_st_ref_get(x_11, x_49); +lean_dec(x_11); +x_53 = !lean_is_exclusive(x_52); +if (x_53 == 0) { -return x_16; +lean_object* x_54; lean_object* x_55; +x_54 = lean_ctor_get(x_52, 0); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_51); +lean_ctor_set(x_55, 1, x_54); +lean_ctor_set(x_48, 1, x_55); +lean_ctor_set(x_52, 0, x_48); +return x_52; } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -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_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_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_56 = lean_ctor_get(x_52, 0); +x_57 = lean_ctor_get(x_52, 1); +lean_inc(x_57); +lean_inc(x_56); +lean_dec(x_52); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_51); +lean_ctor_set(x_58, 1, x_56); +lean_ctor_set(x_48, 1, x_58); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_48); +lean_ctor_set(x_59, 1, x_57); +return x_59; } } else { -uint8_t x_25; -x_25 = !lean_is_exclusive(x_1); -if (x_25 == 0) -{ -lean_object* x_26; uint8_t x_27; -x_26 = lean_ctor_get(x_1, 0); -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_28, 0); -lean_inc(x_29); -lean_dec(x_28); -lean_ctor_set(x_26, 1, x_29); -x_30 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9(x_2, x_3, x_4, x_6, x_7, x_1, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_30) == 0) -{ -uint8_t x_31; -x_31 = !lean_is_exclusive(x_30); -if (x_31 == 0) -{ -return x_30; +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_60 = lean_ctor_get(x_48, 0); +x_61 = lean_ctor_get(x_48, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_48); +x_62 = lean_st_ref_get(x_11, x_49); +lean_dec(x_11); +x_63 = lean_ctor_get(x_62, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_62, 1); +lean_inc(x_64); +if (lean_is_exclusive(x_62)) { + lean_ctor_release(x_62, 0); + lean_ctor_release(x_62, 1); + x_65 = x_62; +} else { + lean_dec_ref(x_62); + x_65 = lean_box(0); } -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_inc(x_33); -lean_inc(x_32); -lean_dec(x_30); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -return x_34; +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_61); +lean_ctor_set(x_66, 1, x_63); +x_67 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_67, 0, x_60); +lean_ctor_set(x_67, 1, x_66); +if (lean_is_scalar(x_65)) { + x_68 = lean_alloc_ctor(0, 2, 0); +} else { + x_68 = x_65; +} +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_64); +return x_68; } } else { -uint8_t x_35; -x_35 = !lean_is_exclusive(x_30); -if (x_35 == 0) +uint8_t x_69; +lean_dec(x_11); +x_69 = !lean_is_exclusive(x_47); +if (x_69 == 0) { -return x_30; +return x_47; } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; -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_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); -return x_38; +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_47, 0); +x_71 = lean_ctor_get(x_47, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_47); +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 { -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_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_ctor_get(x_40, 0); -lean_inc(x_41); -lean_dec(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); -lean_ctor_set(x_1, 0, x_42); -x_43 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9(x_2, x_3, x_4, x_6, x_7, x_1, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_43) == 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_43, 0); +x_74 = lean_ctor_get(x_43, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_43); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +lean_dec(x_74); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_73); +lean_ctor_set(x_76, 1, x_75); +lean_ctor_set(x_1, 0, x_76); +lean_inc(x_11); +x_77 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__12(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); +if (lean_obj_tag(x_77) == 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); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_46 = x_43; +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; +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_ctor_get(x_78, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_78, 1); +lean_inc(x_81); +if (lean_is_exclusive(x_78)) { + lean_ctor_release(x_78, 0); + lean_ctor_release(x_78, 1); + x_82 = x_78; } else { - lean_dec_ref(x_43); - x_46 = lean_box(0); + lean_dec_ref(x_78); + x_82 = lean_box(0); } -if (lean_is_scalar(x_46)) { - x_47 = lean_alloc_ctor(0, 2, 0); +x_83 = lean_st_ref_get(x_11, x_79); +lean_dec(x_11); +x_84 = lean_ctor_get(x_83, 0); +lean_inc(x_84); +x_85 = lean_ctor_get(x_83, 1); +lean_inc(x_85); +if (lean_is_exclusive(x_83)) { + lean_ctor_release(x_83, 0); + lean_ctor_release(x_83, 1); + x_86 = x_83; } else { - x_47 = x_46; + lean_dec_ref(x_83); + x_86 = lean_box(0); } -lean_ctor_set(x_47, 0, x_44); -lean_ctor_set(x_47, 1, x_45); -return x_47; +x_87 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_87, 0, x_81); +lean_ctor_set(x_87, 1, x_84); +if (lean_is_scalar(x_82)) { + x_88 = lean_alloc_ctor(0, 2, 0); +} else { + x_88 = x_82; +} +lean_ctor_set(x_88, 0, x_80); +lean_ctor_set(x_88, 1, x_87); +if (lean_is_scalar(x_86)) { + x_89 = lean_alloc_ctor(0, 2, 0); +} else { + x_89 = x_86; +} +lean_ctor_set(x_89, 0, x_88); +lean_ctor_set(x_89, 1, x_85); +return x_89; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_48 = lean_ctor_get(x_43, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_43, 1); -lean_inc(x_49); -if (lean_is_exclusive(x_43)) { - lean_ctor_release(x_43, 0); - lean_ctor_release(x_43, 1); - x_50 = x_43; +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_dec(x_11); +x_90 = lean_ctor_get(x_77, 0); +lean_inc(x_90); +x_91 = lean_ctor_get(x_77, 1); +lean_inc(x_91); +if (lean_is_exclusive(x_77)) { + lean_ctor_release(x_77, 0); + lean_ctor_release(x_77, 1); + x_92 = x_77; } else { - lean_dec_ref(x_43); - x_50 = lean_box(0); + lean_dec_ref(x_77); + x_92 = lean_box(0); } -if (lean_is_scalar(x_50)) { - x_51 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_92)) { + x_93 = lean_alloc_ctor(1, 2, 0); } else { - x_51 = x_50; + x_93 = x_92; } -lean_ctor_set(x_51, 0, x_48); -lean_ctor_set(x_51, 1, x_49); -return x_51; +lean_ctor_set(x_93, 0, x_90); +lean_ctor_set(x_93, 1, x_91); +return x_93; } } } 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; -x_52 = lean_ctor_get(x_1, 0); -lean_inc(x_52); +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 = lean_ctor_get(x_1, 0); +lean_inc(x_94); lean_dec(x_1); -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -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; +x_95 = lean_ctor_get(x_94, 0); +lean_inc(x_95); +x_96 = lean_ctor_get(x_94, 1); +lean_inc(x_96); +if (lean_is_exclusive(x_94)) { + lean_ctor_release(x_94, 0); + lean_ctor_release(x_94, 1); + x_97 = x_94; } else { - lean_dec_ref(x_52); - x_55 = lean_box(0); + lean_dec_ref(x_94); + x_97 = lean_box(0); } -x_56 = lean_ctor_get(x_54, 0); -lean_inc(x_56); -lean_dec(x_54); -if (lean_is_scalar(x_55)) { - x_57 = lean_alloc_ctor(0, 2, 0); +x_98 = lean_ctor_get(x_96, 0); +lean_inc(x_98); +lean_dec(x_96); +if (lean_is_scalar(x_97)) { + x_99 = lean_alloc_ctor(0, 2, 0); } else { - x_57 = x_55; + x_99 = x_97; } -lean_ctor_set(x_57, 0, x_53); -lean_ctor_set(x_57, 1, x_56); -x_58 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_58, 0, x_57); -x_59 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9(x_2, x_3, x_4, x_6, x_7, x_58, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_59) == 0) +lean_ctor_set(x_99, 0, x_95); +lean_ctor_set(x_99, 1, x_98); +x_100 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_100, 0, x_99); +lean_inc(x_11); +x_101 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__12(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_100, x_12, x_13, x_14); +if (lean_obj_tag(x_101) == 0) { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_60 = lean_ctor_get(x_59, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_59, 1); -lean_inc(x_61); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_62 = x_59; +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; +x_102 = lean_ctor_get(x_101, 0); +lean_inc(x_102); +x_103 = lean_ctor_get(x_101, 1); +lean_inc(x_103); +lean_dec(x_101); +x_104 = lean_ctor_get(x_102, 0); +lean_inc(x_104); +x_105 = lean_ctor_get(x_102, 1); +lean_inc(x_105); +if (lean_is_exclusive(x_102)) { + lean_ctor_release(x_102, 0); + lean_ctor_release(x_102, 1); + x_106 = x_102; } else { - lean_dec_ref(x_59); - x_62 = lean_box(0); + lean_dec_ref(x_102); + x_106 = lean_box(0); } -if (lean_is_scalar(x_62)) { - x_63 = lean_alloc_ctor(0, 2, 0); +x_107 = lean_st_ref_get(x_11, x_103); +lean_dec(x_11); +x_108 = lean_ctor_get(x_107, 0); +lean_inc(x_108); +x_109 = lean_ctor_get(x_107, 1); +lean_inc(x_109); +if (lean_is_exclusive(x_107)) { + lean_ctor_release(x_107, 0); + lean_ctor_release(x_107, 1); + x_110 = x_107; } else { - x_63 = x_62; + lean_dec_ref(x_107); + x_110 = lean_box(0); } -lean_ctor_set(x_63, 0, x_60); -lean_ctor_set(x_63, 1, x_61); -return x_63; +x_111 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_111, 0, x_105); +lean_ctor_set(x_111, 1, x_108); +if (lean_is_scalar(x_106)) { + x_112 = lean_alloc_ctor(0, 2, 0); +} else { + x_112 = x_106; +} +lean_ctor_set(x_112, 0, x_104); +lean_ctor_set(x_112, 1, x_111); +if (lean_is_scalar(x_110)) { + x_113 = lean_alloc_ctor(0, 2, 0); +} else { + x_113 = x_110; +} +lean_ctor_set(x_113, 0, x_112); +lean_ctor_set(x_113, 1, x_109); +return x_113; } else { -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); -x_65 = lean_ctor_get(x_59, 1); -lean_inc(x_65); -if (lean_is_exclusive(x_59)) { - lean_ctor_release(x_59, 0); - lean_ctor_release(x_59, 1); - x_66 = x_59; +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +lean_dec(x_11); +x_114 = lean_ctor_get(x_101, 0); +lean_inc(x_114); +x_115 = lean_ctor_get(x_101, 1); +lean_inc(x_115); +if (lean_is_exclusive(x_101)) { + lean_ctor_release(x_101, 0); + lean_ctor_release(x_101, 1); + x_116 = x_101; } else { - lean_dec_ref(x_59); - x_66 = lean_box(0); + lean_dec_ref(x_101); + x_116 = lean_box(0); } -if (lean_is_scalar(x_66)) { - x_67 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_116)) { + x_117 = lean_alloc_ctor(1, 2, 0); } else { - x_67 = x_66; + x_117 = x_116; } -lean_ctor_set(x_67, 0, x_64); -lean_ctor_set(x_67, 1, x_65); -return x_67; +lean_ctor_set(x_117, 0, x_114); +lean_ctor_set(x_117, 1, x_115); +return x_117; } } } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, 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_4) == 0) +if (lean_obj_tag(x_8) == 0) { lean_object* x_14; lean_object* x_15; x_14 = lean_box(0); -x_15 = l_Lean_Elab_Tactic_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__1___lambda__1(x_4, 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); +x_15 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__10___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_9, x_10, x_11, x_12, 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; lean_object* x_21; lean_object* x_22; -x_16 = lean_ctor_get(x_4, 0); +x_16 = lean_ctor_get(x_8, 0); lean_inc(x_16); x_17 = lean_ctor_get(x_16, 1); lean_inc(x_17); @@ -5444,1279 +6177,1846 @@ lean_dec(x_16); x_18 = lean_ctor_get(x_17, 1); lean_inc(x_18); lean_dec(x_17); -x_19 = lean_st_ref_set(x_6, x_18, x_13); +x_19 = lean_st_ref_set(x_10, x_18, x_13); 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_Elab_Tactic_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__1___lambda__1(x_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_22 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__10___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_20, x_9, x_10, x_11, x_12, x_21); lean_dec(x_20); return x_22; } } } -LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalSepTactics_goEven___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_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_io_promise_new(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); -lean_inc(x_13); -x_15 = lean_apply_10(x_2, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_14); -if (lean_obj_tag(x_15) == 0) +if (lean_obj_tag(x_10) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_16 = lean_ctor_get(x_15, 0); +lean_object* x_14; lean_object* x_15; +x_14 = lean_box(0); +x_15 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4___lambda__1(x_6, x_2, x_3, x_1, x_4, x_5, x_7, x_8, x_9, x_14, x_11, x_12, x_13); +return x_15; +} +else +{ +lean_object* x_16; uint8_t x_17; +lean_dec(x_11); +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_16 = lean_ctor_get(x_10, 0); lean_inc(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); -lean_dec(x_15); -x_18 = lean_io_promise_resolve(x_1, x_13, x_17); -lean_dec(x_13); -x_19 = !lean_is_exclusive(x_18); -if (x_19 == 0) +lean_dec(x_10); +x_17 = !lean_is_exclusive(x_16); +if (x_17 == 0) { -lean_object* x_20; -x_20 = lean_ctor_get(x_18, 0); +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; +x_18 = lean_ctor_get(x_16, 1); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_st_ref_set(x_12, x_19, x_13); +lean_dec(x_12); +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); lean_dec(x_20); -lean_ctor_set(x_18, 0, x_16); -return x_18; +x_22 = lean_ctor_get(x_18, 1); +lean_inc(x_22); +x_23 = lean_uint64_of_nat(x_22); +lean_dec(x_22); +x_24 = lean_io_add_heartbeats(x_23, x_21); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) +{ +lean_object* x_26; +x_26 = lean_ctor_get(x_24, 0); +lean_dec(x_26); +lean_ctor_set(x_24, 0, x_16); +return x_24; } else { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -lean_dec(x_18); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_16); -lean_ctor_set(x_22, 1, x_21); -return x_22; +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_dec(x_24); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_16); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_23 = lean_ctor_get(x_15, 0); -lean_inc(x_23); -x_24 = lean_ctor_get(x_15, 1); -lean_inc(x_24); -lean_dec(x_15); -x_25 = lean_io_promise_resolve(x_1, x_13, x_24); -lean_dec(x_13); -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_tag(x_25, 1); -lean_ctor_set(x_25, 0, x_23); -return x_25; +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; uint64_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +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_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_st_ref_set(x_12, x_31, x_13); +lean_dec(x_12); +x_33 = lean_ctor_get(x_32, 1); +lean_inc(x_33); +lean_dec(x_32); +x_34 = lean_ctor_get(x_30, 1); +lean_inc(x_34); +x_35 = lean_uint64_of_nat(x_34); +lean_dec(x_34); +x_36 = lean_io_add_heartbeats(x_35, x_33); +x_37 = lean_ctor_get(x_36, 1); +lean_inc(x_37); +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + x_38 = x_36; +} else { + lean_dec_ref(x_36); + x_38 = lean_box(0); } -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(1, 2, 0); -lean_ctor_set(x_29, 0, x_23); -lean_ctor_set(x_29, 1, x_28); -return x_29; +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_29); +lean_ctor_set(x_39, 1, x_30); +if (lean_is_scalar(x_38)) { + x_40 = lean_alloc_ctor(0, 2, 0); +} else { + x_40 = x_38; +} +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_37); +return x_40; } } } } -LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalSepTactics_goEven___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_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__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, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_io_promise_new(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); -lean_inc(x_13); -x_15 = lean_apply_10(x_2, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_14); -if (lean_obj_tag(x_15) == 0) +if (lean_obj_tag(x_10) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_16 = lean_ctor_get(x_15, 0); +lean_object* x_14; lean_object* x_15; +x_14 = lean_box(0); +x_15 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__4___lambda__1(x_6, x_2, x_3, x_1, x_4, x_5, x_7, x_8, x_9, x_14, x_11, x_12, x_13); +return x_15; +} +else +{ +lean_object* x_16; uint8_t x_17; +lean_dec(x_11); +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_16 = lean_ctor_get(x_10, 0); lean_inc(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); -lean_dec(x_15); -x_18 = lean_io_promise_resolve(x_1, x_13, x_17); -lean_dec(x_13); -x_19 = !lean_is_exclusive(x_18); -if (x_19 == 0) +lean_dec(x_10); +x_17 = !lean_is_exclusive(x_16); +if (x_17 == 0) { -lean_object* x_20; -x_20 = lean_ctor_get(x_18, 0); +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint64_t x_23; lean_object* x_24; uint8_t x_25; +x_18 = lean_ctor_get(x_16, 1); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_st_ref_set(x_12, x_19, x_13); +lean_dec(x_12); +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); lean_dec(x_20); -lean_ctor_set(x_18, 0, x_16); -return x_18; +x_22 = lean_ctor_get(x_18, 1); +lean_inc(x_22); +x_23 = lean_uint64_of_nat(x_22); +lean_dec(x_22); +x_24 = lean_io_add_heartbeats(x_23, x_21); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) +{ +lean_object* x_26; +x_26 = lean_ctor_get(x_24, 0); +lean_dec(x_26); +lean_ctor_set(x_24, 0, x_16); +return x_24; } else { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -lean_dec(x_18); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_16); -lean_ctor_set(x_22, 1, x_21); -return x_22; +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_dec(x_24); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_16); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_23 = lean_ctor_get(x_15, 0); -lean_inc(x_23); -x_24 = lean_ctor_get(x_15, 1); -lean_inc(x_24); -lean_dec(x_15); -x_25 = lean_io_promise_resolve(x_1, x_13, x_24); -lean_dec(x_13); -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_tag(x_25, 1); -lean_ctor_set(x_25, 0, x_23); -return x_25; +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; uint64_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +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_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_st_ref_set(x_12, x_31, x_13); +lean_dec(x_12); +x_33 = lean_ctor_get(x_32, 1); +lean_inc(x_33); +lean_dec(x_32); +x_34 = lean_ctor_get(x_30, 1); +lean_inc(x_34); +x_35 = lean_uint64_of_nat(x_34); +lean_dec(x_34); +x_36 = lean_io_add_heartbeats(x_35, x_33); +x_37 = lean_ctor_get(x_36, 1); +lean_inc(x_37); +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + x_38 = x_36; +} else { + lean_dec_ref(x_36); + x_38 = lean_box(0); } -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(1, 2, 0); -lean_ctor_set(x_29, 0, x_23); -lean_ctor_set(x_29, 1, x_28); -return x_29; +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_29); +lean_ctor_set(x_39, 1, x_30); +if (lean_is_scalar(x_38)) { + x_40 = lean_alloc_ctor(0, 2, 0); +} else { + x_40 = x_38; +} +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_37); +return x_40; } } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedTacticReuse___at_Lean_Elab_Tactic_evalSepTactics_goEven___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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13___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_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -lean_inc(x_1); -x_13 = lean_apply_1(x_1, x_3); -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_is_exclusive(x_10); -if (x_16 == 0) +if (lean_obj_tag(x_1) == 0) { -uint8_t x_17; -x_17 = !lean_is_exclusive(x_6); -if (x_17 == 0) +lean_object* x_15; lean_object* x_16; +x_15 = lean_box(0); +lean_inc(x_11); +x_16 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__14(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_15, x_12, x_13, x_14); +if (lean_obj_tag(x_16) == 0) { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_10, 2); -x_19 = lean_ctor_get(x_10, 5); -x_20 = lean_ctor_get(x_6, 8); -x_21 = l_Lean_replaceRef(x_15, x_19); -lean_dec(x_19); +lean_object* x_17; lean_object* x_18; uint8_t 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_ctor_set(x_10, 5, x_21); -if (lean_obj_tag(x_20) == 0) +lean_dec(x_16); +x_19 = !lean_is_exclusive(x_17); +if (x_19 == 0) { -lean_object* x_22; lean_object* x_23; -lean_dec(x_18); -lean_dec(x_14); -lean_dec(x_1); -x_22 = lean_box(0); -lean_ctor_set(x_6, 8, x_22); -x_23 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_23; +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_17, 1); +x_21 = lean_st_ref_get(x_11, x_18); +lean_dec(x_11); +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); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_20); +lean_ctor_set(x_24, 1, x_23); +lean_ctor_set(x_17, 1, x_24); +lean_ctor_set(x_21, 0, x_17); +return x_21; } else { -uint8_t x_24; -x_24 = !lean_is_exclusive(x_20); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_20, 0); -x_26 = lean_ctor_get(x_25, 0); +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = lean_ctor_get(x_21, 0); +x_26 = lean_ctor_get(x_21, 1); lean_inc(x_26); -if (lean_obj_tag(x_26) == 0) +lean_inc(x_25); +lean_dec(x_21); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_20); +lean_ctor_set(x_27, 1, x_25); +lean_ctor_set(x_17, 1, x_27); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_17); +lean_ctor_set(x_28, 1, x_26); +return x_28; +} +} +else { -uint8_t x_27; -lean_dec(x_18); -lean_dec(x_14); -lean_dec(x_1); -x_27 = !lean_is_exclusive(x_25); -if (x_27 == 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; +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_st_ref_get(x_11, x_18); +lean_dec(x_11); +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +if (lean_is_exclusive(x_31)) { + lean_ctor_release(x_31, 0); + lean_ctor_release(x_31, 1); + x_34 = x_31; +} else { + lean_dec_ref(x_31); + x_34 = lean_box(0); +} +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_30); +lean_ctor_set(x_35, 1, x_32); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_29); +lean_ctor_set(x_36, 1, x_35); +if (lean_is_scalar(x_34)) { + x_37 = lean_alloc_ctor(0, 2, 0); +} else { + x_37 = x_34; +} +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +return x_37; +} +} +else { -lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_25, 0); -lean_dec(x_28); -x_29 = lean_box(0); -lean_ctor_set(x_25, 0, x_29); -x_30 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_30; +uint8_t x_38; +lean_dec(x_11); +x_38 = !lean_is_exclusive(x_16); +if (x_38 == 0) +{ +return x_16; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -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); -lean_ctor_set(x_20, 0, x_33); -x_34 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_34; +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_16, 0); +x_40 = lean_ctor_get(x_16, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_16); +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_35; -x_35 = !lean_is_exclusive(x_26); -if (x_35 == 0) -{ -uint8_t x_36; -x_36 = !lean_is_exclusive(x_25); -if (x_36 == 0) +uint8_t x_42; +x_42 = !lean_is_exclusive(x_1); +if (x_42 == 0) { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_26, 0); -x_38 = lean_ctor_get(x_25, 0); -lean_dec(x_38); -x_39 = !lean_is_exclusive(x_37); -if (x_39 == 0) +lean_object* x_43; uint8_t x_44; +x_43 = lean_ctor_get(x_1, 0); +x_44 = !lean_is_exclusive(x_43); +if (x_44 == 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; -x_40 = lean_ctor_get(x_37, 0); -x_41 = lean_ctor_get(x_37, 1); -x_42 = lean_apply_1(x_1, x_40); -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_Syntax_structRangeEqWithTraceReuse(x_18, x_14, x_43); -lean_dec(x_18); -x_46 = lean_unbox(x_45); +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_43, 1); +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); lean_dec(x_45); -if (x_46 == 0) +lean_ctor_set(x_43, 1, x_46); +lean_inc(x_11); +x_47 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__15(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); +if (lean_obj_tag(x_47) == 0) { -lean_object* x_47; lean_object* x_48; -lean_dec(x_44); -lean_free_object(x_37); -lean_dec(x_41); -lean_free_object(x_20); -x_47 = lean_box(0); -lean_ctor_set(x_25, 0, x_47); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_6, 8, x_26); -x_48 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_48; +lean_object* x_48; lean_object* x_49; uint8_t 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 = !lean_is_exclusive(x_48); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; uint8_t x_53; +x_51 = lean_ctor_get(x_48, 1); +x_52 = lean_st_ref_get(x_11, x_49); +lean_dec(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); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_51); +lean_ctor_set(x_55, 1, x_54); +lean_ctor_set(x_48, 1, x_55); +lean_ctor_set(x_52, 0, x_48); +return x_52; } else { -lean_object* x_49; -lean_ctor_set(x_37, 0, x_44); -x_49 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_49; +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_56 = lean_ctor_get(x_52, 0); +x_57 = lean_ctor_get(x_52, 1); +lean_inc(x_57); +lean_inc(x_56); +lean_dec(x_52); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_51); +lean_ctor_set(x_58, 1, x_56); +lean_ctor_set(x_48, 1, x_58); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_48); +lean_ctor_set(x_59, 1, x_57); +return x_59; } } 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_37, 0); -x_51 = lean_ctor_get(x_37, 1); -lean_inc(x_51); -lean_inc(x_50); -lean_dec(x_37); -x_52 = lean_apply_1(x_1, x_50); -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 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_18, x_14, x_53); -lean_dec(x_18); -x_56 = lean_unbox(x_55); -lean_dec(x_55); -if (x_56 == 0) -{ -lean_object* x_57; lean_object* x_58; -lean_dec(x_54); -lean_dec(x_51); -lean_free_object(x_20); -x_57 = lean_box(0); -lean_ctor_set(x_25, 0, x_57); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_6, 8, x_26); -x_58 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_58; +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_60 = lean_ctor_get(x_48, 0); +x_61 = lean_ctor_get(x_48, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_48); +x_62 = lean_st_ref_get(x_11, x_49); +lean_dec(x_11); +x_63 = lean_ctor_get(x_62, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_62, 1); +lean_inc(x_64); +if (lean_is_exclusive(x_62)) { + lean_ctor_release(x_62, 0); + lean_ctor_release(x_62, 1); + x_65 = x_62; +} else { + lean_dec_ref(x_62); + x_65 = lean_box(0); } -else -{ -lean_object* x_59; lean_object* x_60; -x_59 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_59, 0, x_54); -lean_ctor_set(x_59, 1, x_51); -lean_ctor_set(x_26, 0, x_59); -x_60 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_60; +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_61); +lean_ctor_set(x_66, 1, x_63); +x_67 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_67, 0, x_60); +lean_ctor_set(x_67, 1, x_66); +if (lean_is_scalar(x_65)) { + x_68 = lean_alloc_ctor(0, 2, 0); +} else { + x_68 = x_65; } +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_64); +return x_68; } } 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; uint8_t x_70; -x_61 = lean_ctor_get(x_26, 0); -x_62 = lean_ctor_get(x_25, 1); -lean_inc(x_62); -lean_dec(x_25); -x_63 = lean_ctor_get(x_61, 0); -lean_inc(x_63); -x_64 = lean_ctor_get(x_61, 1); -lean_inc(x_64); -if (lean_is_exclusive(x_61)) { - lean_ctor_release(x_61, 0); - lean_ctor_release(x_61, 1); - x_65 = x_61; -} else { - lean_dec_ref(x_61); - x_65 = lean_box(0); -} -x_66 = lean_apply_1(x_1, x_63); -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_Syntax_structRangeEqWithTraceReuse(x_18, x_14, x_67); -lean_dec(x_18); -x_70 = lean_unbox(x_69); -lean_dec(x_69); -if (x_70 == 0) +uint8_t x_69; +lean_dec(x_11); +x_69 = !lean_is_exclusive(x_47); +if (x_69 == 0) { -lean_object* x_71; lean_object* x_72; lean_object* x_73; -lean_dec(x_68); -lean_dec(x_65); -lean_dec(x_64); -lean_free_object(x_20); -x_71 = lean_box(0); -x_72 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_72, 0, x_71); -lean_ctor_set(x_72, 1, x_62); -lean_ctor_set(x_26, 0, x_72); -lean_ctor_set(x_6, 8, x_26); -x_73 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_73; +return x_47; } else { -lean_object* x_74; lean_object* x_75; lean_object* x_76; -if (lean_is_scalar(x_65)) { - x_74 = lean_alloc_ctor(0, 2, 0); -} else { - x_74 = x_65; -} -lean_ctor_set(x_74, 0, x_68); -lean_ctor_set(x_74, 1, x_64); -lean_ctor_set(x_26, 0, x_74); -x_75 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_75, 0, x_26); -lean_ctor_set(x_75, 1, x_62); -lean_ctor_set(x_20, 0, x_75); -x_76 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_76; +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_47, 0); +x_71 = lean_ctor_get(x_47, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_47); +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 { -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_ctor_get(x_26, 0); -lean_inc(x_77); -lean_dec(x_26); -x_78 = lean_ctor_get(x_25, 1); +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_43, 0); +x_74 = lean_ctor_get(x_43, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_43); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +lean_dec(x_74); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_73); +lean_ctor_set(x_76, 1, x_75); +lean_ctor_set(x_1, 0, x_76); +lean_inc(x_11); +x_77 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__15(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_1, x_12, x_13, x_14); +if (lean_obj_tag(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; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +x_78 = lean_ctor_get(x_77, 0); lean_inc(x_78); -if (lean_is_exclusive(x_25)) { - lean_ctor_release(x_25, 0); - lean_ctor_release(x_25, 1); - x_79 = x_25; -} else { - lean_dec_ref(x_25); - x_79 = lean_box(0); -} -x_80 = lean_ctor_get(x_77, 0); +x_79 = lean_ctor_get(x_77, 1); +lean_inc(x_79); +lean_dec(x_77); +x_80 = lean_ctor_get(x_78, 0); lean_inc(x_80); -x_81 = lean_ctor_get(x_77, 1); +x_81 = lean_ctor_get(x_78, 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; +if (lean_is_exclusive(x_78)) { + lean_ctor_release(x_78, 0); + lean_ctor_release(x_78, 1); + x_82 = x_78; } else { - lean_dec_ref(x_77); + lean_dec_ref(x_78); x_82 = lean_box(0); } -x_83 = lean_apply_1(x_1, x_80); +x_83 = lean_st_ref_get(x_11, x_79); +lean_dec(x_11); 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_Syntax_structRangeEqWithTraceReuse(x_18, x_14, x_84); -lean_dec(x_18); -x_87 = lean_unbox(x_86); -lean_dec(x_86); -if (x_87 == 0) -{ -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; -lean_dec(x_85); -lean_dec(x_82); -lean_dec(x_81); -lean_free_object(x_20); -x_88 = lean_box(0); -if (lean_is_scalar(x_79)) { +if (lean_is_exclusive(x_83)) { + lean_ctor_release(x_83, 0); + lean_ctor_release(x_83, 1); + x_86 = x_83; +} else { + lean_dec_ref(x_83); + x_86 = lean_box(0); +} +x_87 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_87, 0, x_81); +lean_ctor_set(x_87, 1, x_84); +if (lean_is_scalar(x_82)) { + x_88 = lean_alloc_ctor(0, 2, 0); +} else { + x_88 = x_82; +} +lean_ctor_set(x_88, 0, x_80); +lean_ctor_set(x_88, 1, x_87); +if (lean_is_scalar(x_86)) { x_89 = lean_alloc_ctor(0, 2, 0); } else { - x_89 = x_79; + x_89 = x_86; } lean_ctor_set(x_89, 0, x_88); -lean_ctor_set(x_89, 1, x_78); -x_90 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_90, 0, x_89); -lean_ctor_set(x_6, 8, x_90); -x_91 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_91; +lean_ctor_set(x_89, 1, x_85); +return x_89; } else { -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; -if (lean_is_scalar(x_82)) { - x_92 = lean_alloc_ctor(0, 2, 0); +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_dec(x_11); +x_90 = lean_ctor_get(x_77, 0); +lean_inc(x_90); +x_91 = lean_ctor_get(x_77, 1); +lean_inc(x_91); +if (lean_is_exclusive(x_77)) { + lean_ctor_release(x_77, 0); + lean_ctor_release(x_77, 1); + x_92 = x_77; } else { - x_92 = x_82; + lean_dec_ref(x_77); + x_92 = lean_box(0); } -lean_ctor_set(x_92, 0, x_85); -lean_ctor_set(x_92, 1, x_81); -x_93 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_93, 0, x_92); -if (lean_is_scalar(x_79)) { - x_94 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_92)) { + x_93 = lean_alloc_ctor(1, 2, 0); } else { - x_94 = x_79; -} -lean_ctor_set(x_94, 0, x_93); -lean_ctor_set(x_94, 1, x_78); -lean_ctor_set(x_20, 0, x_94); -x_95 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_95; + x_93 = x_92; } +lean_ctor_set(x_93, 0, x_90); +lean_ctor_set(x_93, 1, x_91); +return x_93; } } } else { -lean_object* x_96; lean_object* x_97; -x_96 = lean_ctor_get(x_20, 0); -lean_inc(x_96); -lean_dec(x_20); -x_97 = lean_ctor_get(x_96, 0); -lean_inc(x_97); -if (lean_obj_tag(x_97) == 0) -{ -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_18); -lean_dec(x_14); +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 = lean_ctor_get(x_1, 0); +lean_inc(x_94); lean_dec(x_1); -x_98 = lean_ctor_get(x_96, 1); -lean_inc(x_98); -if (lean_is_exclusive(x_96)) { - lean_ctor_release(x_96, 0); - lean_ctor_release(x_96, 1); - x_99 = x_96; +x_95 = lean_ctor_get(x_94, 0); +lean_inc(x_95); +x_96 = lean_ctor_get(x_94, 1); +lean_inc(x_96); +if (lean_is_exclusive(x_94)) { + lean_ctor_release(x_94, 0); + lean_ctor_release(x_94, 1); + x_97 = x_94; } else { - lean_dec_ref(x_96); - x_99 = lean_box(0); + lean_dec_ref(x_94); + x_97 = lean_box(0); } -x_100 = lean_box(0); -if (lean_is_scalar(x_99)) { - x_101 = lean_alloc_ctor(0, 2, 0); +x_98 = lean_ctor_get(x_96, 0); +lean_inc(x_98); +lean_dec(x_96); +if (lean_is_scalar(x_97)) { + x_99 = 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); -x_102 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_102, 0, x_101); -lean_ctor_set(x_6, 8, x_102); -x_103 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_103; + x_99 = x_97; } -else +lean_ctor_set(x_99, 0, x_95); +lean_ctor_set(x_99, 1, x_98); +x_100 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_100, 0, x_99); +lean_inc(x_11); +x_101 = l_Lean_Core_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__15(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10, x_11, x_100, x_12, x_13, x_14); +if (lean_obj_tag(x_101) == 0) { -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; uint8_t x_115; -x_104 = lean_ctor_get(x_97, 0); +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; +x_102 = lean_ctor_get(x_101, 0); +lean_inc(x_102); +x_103 = lean_ctor_get(x_101, 1); +lean_inc(x_103); +lean_dec(x_101); +x_104 = lean_ctor_get(x_102, 0); lean_inc(x_104); -if (lean_is_exclusive(x_97)) { - lean_ctor_release(x_97, 0); - x_105 = x_97; -} else { - lean_dec_ref(x_97); - x_105 = lean_box(0); -} -x_106 = lean_ctor_get(x_96, 1); -lean_inc(x_106); -if (lean_is_exclusive(x_96)) { - lean_ctor_release(x_96, 0); - lean_ctor_release(x_96, 1); - x_107 = x_96; +x_105 = lean_ctor_get(x_102, 1); +lean_inc(x_105); +if (lean_is_exclusive(x_102)) { + lean_ctor_release(x_102, 0); + lean_ctor_release(x_102, 1); + x_106 = x_102; } else { - lean_dec_ref(x_96); - x_107 = lean_box(0); + lean_dec_ref(x_102); + x_106 = lean_box(0); } -x_108 = lean_ctor_get(x_104, 0); +x_107 = lean_st_ref_get(x_11, x_103); +lean_dec(x_11); +x_108 = lean_ctor_get(x_107, 0); lean_inc(x_108); -x_109 = lean_ctor_get(x_104, 1); +x_109 = lean_ctor_get(x_107, 1); lean_inc(x_109); -if (lean_is_exclusive(x_104)) { - lean_ctor_release(x_104, 0); - lean_ctor_release(x_104, 1); - x_110 = x_104; +if (lean_is_exclusive(x_107)) { + lean_ctor_release(x_107, 0); + lean_ctor_release(x_107, 1); + x_110 = x_107; } else { - lean_dec_ref(x_104); + lean_dec_ref(x_107); x_110 = lean_box(0); } -x_111 = lean_apply_1(x_1, x_108); -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_Syntax_structRangeEqWithTraceReuse(x_18, x_14, x_112); -lean_dec(x_18); -x_115 = lean_unbox(x_114); -lean_dec(x_114); -if (x_115 == 0) -{ -lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; -lean_dec(x_113); -lean_dec(x_110); -lean_dec(x_109); -x_116 = lean_box(0); -if (lean_is_scalar(x_107)) { - x_117 = lean_alloc_ctor(0, 2, 0); +x_111 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_111, 0, x_105); +lean_ctor_set(x_111, 1, x_108); +if (lean_is_scalar(x_106)) { + x_112 = lean_alloc_ctor(0, 2, 0); } else { - x_117 = x_107; + x_112 = x_106; } -lean_ctor_set(x_117, 0, x_116); -lean_ctor_set(x_117, 1, x_106); -if (lean_is_scalar(x_105)) { - x_118 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_112, 0, x_104); +lean_ctor_set(x_112, 1, x_111); +if (lean_is_scalar(x_110)) { + x_113 = lean_alloc_ctor(0, 2, 0); } else { - x_118 = x_105; + x_113 = x_110; } -lean_ctor_set(x_118, 0, x_117); -lean_ctor_set(x_6, 8, x_118); -x_119 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_119; +lean_ctor_set(x_113, 0, x_112); +lean_ctor_set(x_113, 1, x_109); +return x_113; } else { -lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; -if (lean_is_scalar(x_110)) { - x_120 = lean_alloc_ctor(0, 2, 0); -} else { - x_120 = x_110; -} -lean_ctor_set(x_120, 0, x_113); -lean_ctor_set(x_120, 1, x_109); -if (lean_is_scalar(x_105)) { - x_121 = lean_alloc_ctor(1, 1, 0); +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +lean_dec(x_11); +x_114 = lean_ctor_get(x_101, 0); +lean_inc(x_114); +x_115 = lean_ctor_get(x_101, 1); +lean_inc(x_115); +if (lean_is_exclusive(x_101)) { + lean_ctor_release(x_101, 0); + lean_ctor_release(x_101, 1); + x_116 = x_101; } else { - x_121 = x_105; + lean_dec_ref(x_101); + x_116 = lean_box(0); } -lean_ctor_set(x_121, 0, x_120); -if (lean_is_scalar(x_107)) { - x_122 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_116)) { + x_117 = lean_alloc_ctor(1, 2, 0); } else { - x_122 = x_107; + x_117 = x_116; } -lean_ctor_set(x_122, 0, x_121); -lean_ctor_set(x_122, 1, x_106); -x_123 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_123, 0, x_122); -lean_ctor_set(x_6, 8, x_123); -x_124 = lean_apply_10(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_124; +lean_ctor_set(x_117, 0, x_114); +lean_ctor_set(x_117, 1, x_115); +return x_117; } } } } } -else +LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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_object* x_7, 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_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; uint8_t x_130; uint8_t x_131; uint8_t x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; uint8_t x_137; uint8_t x_138; uint8_t x_139; uint8_t x_140; uint8_t x_141; lean_object* x_142; lean_object* x_143; uint8_t x_144; uint8_t x_145; lean_object* x_146; -x_125 = lean_ctor_get(x_10, 2); -x_126 = lean_ctor_get(x_10, 5); -x_127 = lean_ctor_get(x_6, 0); -x_128 = lean_ctor_get(x_6, 1); -x_129 = lean_ctor_get(x_6, 2); -x_130 = lean_ctor_get_uint8(x_6, sizeof(void*)*9); -x_131 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 1); -x_132 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 2); -x_133 = lean_ctor_get(x_6, 3); -x_134 = lean_ctor_get(x_6, 4); -x_135 = lean_ctor_get(x_6, 5); -x_136 = lean_ctor_get(x_6, 6); -x_137 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 3); -x_138 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 4); -x_139 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 5); -x_140 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 6); -x_141 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 7); -x_142 = lean_ctor_get(x_6, 7); -x_143 = lean_ctor_get(x_6, 8); -x_144 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 8); -x_145 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 9); -lean_inc(x_143); -lean_inc(x_142); -lean_inc(x_136); -lean_inc(x_135); -lean_inc(x_134); -lean_inc(x_133); -lean_inc(x_129); -lean_inc(x_128); -lean_inc(x_127); -lean_dec(x_6); -x_146 = l_Lean_replaceRef(x_15, x_126); -lean_dec(x_126); -lean_inc(x_125); -lean_ctor_set(x_10, 5, x_146); -if (lean_obj_tag(x_143) == 0) +if (lean_obj_tag(x_8) == 0) { -lean_object* x_147; lean_object* x_148; lean_object* x_149; -lean_dec(x_125); -lean_dec(x_14); -lean_dec(x_1); -x_147 = lean_box(0); -x_148 = lean_alloc_ctor(0, 9, 10); -lean_ctor_set(x_148, 0, x_127); -lean_ctor_set(x_148, 1, x_128); -lean_ctor_set(x_148, 2, x_129); -lean_ctor_set(x_148, 3, x_133); -lean_ctor_set(x_148, 4, x_134); -lean_ctor_set(x_148, 5, x_135); -lean_ctor_set(x_148, 6, x_136); -lean_ctor_set(x_148, 7, x_142); -lean_ctor_set(x_148, 8, x_147); -lean_ctor_set_uint8(x_148, sizeof(void*)*9, x_130); -lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 1, x_131); -lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 2, x_132); -lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 3, x_137); -lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 4, x_138); -lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 5, x_139); -lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 6, x_140); -lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 7, x_141); -lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 8, x_144); -lean_ctor_set_uint8(x_148, sizeof(void*)*9 + 9, x_145); -x_149 = lean_apply_10(x_2, x_15, x_4, x_5, x_148, x_7, x_8, x_9, x_10, x_11, x_12); -return x_149; +lean_object* x_14; lean_object* x_15; +x_14 = lean_box(0); +x_15 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_9, x_10, x_11, x_12, x_13); +return x_15; } else { -lean_object* x_150; lean_object* x_151; lean_object* x_152; -x_150 = lean_ctor_get(x_143, 0); -lean_inc(x_150); -if (lean_is_exclusive(x_143)) { - lean_ctor_release(x_143, 0); - x_151 = x_143; -} else { - lean_dec_ref(x_143); - x_151 = lean_box(0); -} -x_152 = lean_ctor_get(x_150, 0); -lean_inc(x_152); -if (lean_obj_tag(x_152) == 0) -{ -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_dec(x_125); -lean_dec(x_14); -lean_dec(x_1); -x_153 = lean_ctor_get(x_150, 1); -lean_inc(x_153); -if (lean_is_exclusive(x_150)) { - lean_ctor_release(x_150, 0); - lean_ctor_release(x_150, 1); - x_154 = x_150; -} else { - lean_dec_ref(x_150); - x_154 = lean_box(0); -} -x_155 = lean_box(0); -if (lean_is_scalar(x_154)) { - x_156 = lean_alloc_ctor(0, 2, 0); -} else { - x_156 = x_154; +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_16 = lean_ctor_get(x_8, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_16, 1); +lean_inc(x_17); +lean_dec(x_16); +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = lean_st_ref_set(x_10, x_18, x_13); +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_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13___lambda__1(x_8, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_20, x_9, x_10, x_11, x_12, x_21); +lean_dec(x_20); +return x_22; } -lean_ctor_set(x_156, 0, x_155); -lean_ctor_set(x_156, 1, x_153); -if (lean_is_scalar(x_151)) { - x_157 = lean_alloc_ctor(1, 1, 0); -} else { - x_157 = x_151; } -lean_ctor_set(x_157, 0, x_156); -x_158 = lean_alloc_ctor(0, 9, 10); -lean_ctor_set(x_158, 0, x_127); -lean_ctor_set(x_158, 1, x_128); -lean_ctor_set(x_158, 2, x_129); -lean_ctor_set(x_158, 3, x_133); -lean_ctor_set(x_158, 4, x_134); -lean_ctor_set(x_158, 5, x_135); -lean_ctor_set(x_158, 6, x_136); -lean_ctor_set(x_158, 7, x_142); -lean_ctor_set(x_158, 8, x_157); -lean_ctor_set_uint8(x_158, sizeof(void*)*9, x_130); -lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 1, x_131); -lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 2, x_132); -lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 3, x_137); -lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 4, x_138); -lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 5, x_139); -lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 6, x_140); -lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 7, x_141); -lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 8, x_144); -lean_ctor_set_uint8(x_158, sizeof(void*)*9 + 9, x_145); -x_159 = lean_apply_10(x_2, x_15, x_4, x_5, x_158, x_7, x_8, x_9, x_10, x_11, x_12); -return x_159; } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_14) { +_start: { -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; uint8_t x_171; -x_160 = lean_ctor_get(x_152, 0); -lean_inc(x_160); -if (lean_is_exclusive(x_152)) { - lean_ctor_release(x_152, 0); - x_161 = x_152; -} else { - lean_dec_ref(x_152); - x_161 = lean_box(0); +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_15; lean_object* x_16; +x_15 = lean_box(0); +lean_inc(x_9); +x_16 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__10(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_15, 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; uint8_t 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); +x_19 = !lean_is_exclusive(x_17); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_17, 1); +x_21 = lean_st_ref_get(x_9, x_18); +lean_dec(x_9); +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); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_20); +lean_ctor_set(x_24, 1, x_23); +lean_ctor_set(x_17, 1, x_24); +lean_ctor_set(x_21, 0, x_17); +return x_21; } -x_162 = lean_ctor_get(x_150, 1); -lean_inc(x_162); -if (lean_is_exclusive(x_150)) { - lean_ctor_release(x_150, 0); - lean_ctor_release(x_150, 1); - x_163 = x_150; +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = lean_ctor_get(x_21, 0); +x_26 = lean_ctor_get(x_21, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_21); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_20); +lean_ctor_set(x_27, 1, x_25); +lean_ctor_set(x_17, 1, x_27); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_17); +lean_ctor_set(x_28, 1, 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; +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_st_ref_get(x_9, x_18); +lean_dec(x_9); +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +if (lean_is_exclusive(x_31)) { + lean_ctor_release(x_31, 0); + lean_ctor_release(x_31, 1); + x_34 = x_31; } else { - lean_dec_ref(x_150); - x_163 = lean_box(0); + lean_dec_ref(x_31); + x_34 = lean_box(0); } -x_164 = lean_ctor_get(x_160, 0); -lean_inc(x_164); -x_165 = lean_ctor_get(x_160, 1); -lean_inc(x_165); -if (lean_is_exclusive(x_160)) { - lean_ctor_release(x_160, 0); - lean_ctor_release(x_160, 1); - x_166 = x_160; +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_30); +lean_ctor_set(x_35, 1, x_32); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_29); +lean_ctor_set(x_36, 1, x_35); +if (lean_is_scalar(x_34)) { + x_37 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_160); - x_166 = lean_box(0); + x_37 = x_34; } -x_167 = lean_apply_1(x_1, x_164); -x_168 = lean_ctor_get(x_167, 0); -lean_inc(x_168); -x_169 = lean_ctor_get(x_167, 1); -lean_inc(x_169); -lean_dec(x_167); -x_170 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_125, x_14, x_168); -lean_dec(x_125); -x_171 = lean_unbox(x_170); -lean_dec(x_170); -if (x_171 == 0) +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +return x_37; +} +} +else { -lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; -lean_dec(x_169); -lean_dec(x_166); -lean_dec(x_165); -lean_dec(x_151); -x_172 = lean_box(0); -if (lean_is_scalar(x_163)) { - x_173 = lean_alloc_ctor(0, 2, 0); +uint8_t x_38; +lean_dec(x_9); +x_38 = !lean_is_exclusive(x_16); +if (x_38 == 0) +{ +return x_16; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_16, 0); +x_40 = lean_ctor_get(x_16, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_16); +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; +x_42 = !lean_is_exclusive(x_1); +if (x_42 == 0) +{ +lean_object* x_43; uint8_t x_44; +x_43 = lean_ctor_get(x_1, 0); +x_44 = !lean_is_exclusive(x_43); +if (x_44 == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_43, 1); +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +lean_dec(x_45); +lean_ctor_set(x_43, 1, x_46); +lean_inc(x_9); +x_47 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_1, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; uint8_t 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 = !lean_is_exclusive(x_48); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; uint8_t x_53; +x_51 = lean_ctor_get(x_48, 1); +x_52 = lean_st_ref_get(x_9, x_49); +lean_dec(x_9); +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); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_51); +lean_ctor_set(x_55, 1, x_54); +lean_ctor_set(x_48, 1, x_55); +lean_ctor_set(x_52, 0, x_48); +return x_52; +} +else +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_56 = lean_ctor_get(x_52, 0); +x_57 = lean_ctor_get(x_52, 1); +lean_inc(x_57); +lean_inc(x_56); +lean_dec(x_52); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_51); +lean_ctor_set(x_58, 1, x_56); +lean_ctor_set(x_48, 1, x_58); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_48); +lean_ctor_set(x_59, 1, x_57); +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; +x_60 = lean_ctor_get(x_48, 0); +x_61 = lean_ctor_get(x_48, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_48); +x_62 = lean_st_ref_get(x_9, x_49); +lean_dec(x_9); +x_63 = lean_ctor_get(x_62, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_62, 1); +lean_inc(x_64); +if (lean_is_exclusive(x_62)) { + lean_ctor_release(x_62, 0); + lean_ctor_release(x_62, 1); + x_65 = x_62; } else { - x_173 = x_163; + lean_dec_ref(x_62); + x_65 = lean_box(0); } -lean_ctor_set(x_173, 0, x_172); -lean_ctor_set(x_173, 1, x_162); -if (lean_is_scalar(x_161)) { - x_174 = lean_alloc_ctor(1, 1, 0); +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_61); +lean_ctor_set(x_66, 1, x_63); +x_67 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_67, 0, x_60); +lean_ctor_set(x_67, 1, x_66); +if (lean_is_scalar(x_65)) { + x_68 = lean_alloc_ctor(0, 2, 0); } else { - x_174 = x_161; + x_68 = x_65; +} +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_64); +return x_68; } -lean_ctor_set(x_174, 0, x_173); -x_175 = lean_alloc_ctor(0, 9, 10); -lean_ctor_set(x_175, 0, x_127); -lean_ctor_set(x_175, 1, x_128); -lean_ctor_set(x_175, 2, x_129); -lean_ctor_set(x_175, 3, x_133); -lean_ctor_set(x_175, 4, x_134); -lean_ctor_set(x_175, 5, x_135); -lean_ctor_set(x_175, 6, x_136); -lean_ctor_set(x_175, 7, x_142); -lean_ctor_set(x_175, 8, x_174); -lean_ctor_set_uint8(x_175, sizeof(void*)*9, x_130); -lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 1, x_131); -lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 2, x_132); -lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 3, x_137); -lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 4, x_138); -lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 5, x_139); -lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 6, x_140); -lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 7, x_141); -lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 8, x_144); -lean_ctor_set_uint8(x_175, sizeof(void*)*9 + 9, x_145); -x_176 = lean_apply_10(x_2, x_15, x_4, x_5, x_175, x_7, x_8, x_9, x_10, x_11, x_12); -return x_176; } else { -lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; -if (lean_is_scalar(x_166)) { - x_177 = lean_alloc_ctor(0, 2, 0); +uint8_t x_69; +lean_dec(x_9); +x_69 = !lean_is_exclusive(x_47); +if (x_69 == 0) +{ +return x_47; +} +else +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_47, 0); +x_71 = lean_ctor_get(x_47, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_47); +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 +{ +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_43, 0); +x_74 = lean_ctor_get(x_43, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_43); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +lean_dec(x_74); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_73); +lean_ctor_set(x_76, 1, x_75); +lean_ctor_set(x_1, 0, x_76); +lean_inc(x_9); +x_77 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_1, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(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; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +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_ctor_get(x_78, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_78, 1); +lean_inc(x_81); +if (lean_is_exclusive(x_78)) { + lean_ctor_release(x_78, 0); + lean_ctor_release(x_78, 1); + x_82 = x_78; } else { - x_177 = x_166; + lean_dec_ref(x_78); + x_82 = lean_box(0); } -lean_ctor_set(x_177, 0, x_169); -lean_ctor_set(x_177, 1, x_165); -if (lean_is_scalar(x_161)) { - x_178 = lean_alloc_ctor(1, 1, 0); +x_83 = lean_st_ref_get(x_9, x_79); +lean_dec(x_9); +x_84 = lean_ctor_get(x_83, 0); +lean_inc(x_84); +x_85 = lean_ctor_get(x_83, 1); +lean_inc(x_85); +if (lean_is_exclusive(x_83)) { + lean_ctor_release(x_83, 0); + lean_ctor_release(x_83, 1); + x_86 = x_83; } else { - x_178 = x_161; + lean_dec_ref(x_83); + x_86 = lean_box(0); } -lean_ctor_set(x_178, 0, x_177); -if (lean_is_scalar(x_163)) { - x_179 = lean_alloc_ctor(0, 2, 0); +x_87 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_87, 0, x_81); +lean_ctor_set(x_87, 1, x_84); +if (lean_is_scalar(x_82)) { + x_88 = lean_alloc_ctor(0, 2, 0); } else { - x_179 = x_163; + x_88 = x_82; } -lean_ctor_set(x_179, 0, x_178); -lean_ctor_set(x_179, 1, x_162); -if (lean_is_scalar(x_151)) { - x_180 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_88, 0, x_80); +lean_ctor_set(x_88, 1, x_87); +if (lean_is_scalar(x_86)) { + x_89 = lean_alloc_ctor(0, 2, 0); } else { - x_180 = x_151; + x_89 = x_86; } -lean_ctor_set(x_180, 0, x_179); -x_181 = lean_alloc_ctor(0, 9, 10); -lean_ctor_set(x_181, 0, x_127); -lean_ctor_set(x_181, 1, x_128); -lean_ctor_set(x_181, 2, x_129); -lean_ctor_set(x_181, 3, x_133); -lean_ctor_set(x_181, 4, x_134); -lean_ctor_set(x_181, 5, x_135); -lean_ctor_set(x_181, 6, x_136); -lean_ctor_set(x_181, 7, x_142); -lean_ctor_set(x_181, 8, x_180); -lean_ctor_set_uint8(x_181, sizeof(void*)*9, x_130); -lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 1, x_131); -lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 2, x_132); -lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 3, x_137); -lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 4, x_138); -lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 5, x_139); -lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 6, x_140); -lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 7, x_141); -lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 8, x_144); -lean_ctor_set_uint8(x_181, sizeof(void*)*9 + 9, x_145); -x_182 = lean_apply_10(x_2, x_15, x_4, x_5, x_181, x_7, x_8, x_9, x_10, x_11, x_12); -return x_182; +lean_ctor_set(x_89, 0, x_88); +lean_ctor_set(x_89, 1, x_85); +return x_89; +} +else +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_dec(x_9); +x_90 = lean_ctor_get(x_77, 0); +lean_inc(x_90); +x_91 = lean_ctor_get(x_77, 1); +lean_inc(x_91); +if (lean_is_exclusive(x_77)) { + lean_ctor_release(x_77, 0); + lean_ctor_release(x_77, 1); + x_92 = x_77; +} else { + lean_dec_ref(x_77); + 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; } } } 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; lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; uint8_t x_194; lean_object* x_195; uint8_t x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; uint8_t x_200; uint8_t x_201; uint8_t x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* 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; lean_object* x_213; uint8_t x_214; uint8_t x_215; lean_object* x_216; lean_object* x_217; lean_object* x_218; -x_183 = lean_ctor_get(x_10, 0); -x_184 = lean_ctor_get(x_10, 1); -x_185 = lean_ctor_get(x_10, 2); -x_186 = lean_ctor_get(x_10, 3); -x_187 = lean_ctor_get(x_10, 4); -x_188 = lean_ctor_get(x_10, 5); -x_189 = lean_ctor_get(x_10, 6); -x_190 = lean_ctor_get(x_10, 7); -x_191 = lean_ctor_get(x_10, 8); -x_192 = lean_ctor_get(x_10, 9); -x_193 = lean_ctor_get(x_10, 10); -x_194 = lean_ctor_get_uint8(x_10, sizeof(void*)*12); -x_195 = lean_ctor_get(x_10, 11); -x_196 = lean_ctor_get_uint8(x_10, sizeof(void*)*12 + 1); -lean_inc(x_195); -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_187); -lean_inc(x_186); -lean_inc(x_185); -lean_inc(x_184); -lean_inc(x_183); -lean_dec(x_10); -x_197 = lean_ctor_get(x_6, 0); -lean_inc(x_197); -x_198 = lean_ctor_get(x_6, 1); -lean_inc(x_198); -x_199 = lean_ctor_get(x_6, 2); -lean_inc(x_199); -x_200 = lean_ctor_get_uint8(x_6, sizeof(void*)*9); -x_201 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 1); -x_202 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 2); -x_203 = lean_ctor_get(x_6, 3); -lean_inc(x_203); -x_204 = lean_ctor_get(x_6, 4); -lean_inc(x_204); -x_205 = lean_ctor_get(x_6, 5); -lean_inc(x_205); -x_206 = lean_ctor_get(x_6, 6); -lean_inc(x_206); -x_207 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 3); -x_208 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 4); -x_209 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 5); -x_210 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 6); -x_211 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 7); -x_212 = lean_ctor_get(x_6, 7); -lean_inc(x_212); -x_213 = lean_ctor_get(x_6, 8); -lean_inc(x_213); -x_214 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 8); -x_215 = lean_ctor_get_uint8(x_6, sizeof(void*)*9 + 9); -if (lean_is_exclusive(x_6)) { - lean_ctor_release(x_6, 0); - lean_ctor_release(x_6, 1); - lean_ctor_release(x_6, 2); - lean_ctor_release(x_6, 3); - lean_ctor_release(x_6, 4); - lean_ctor_release(x_6, 5); - lean_ctor_release(x_6, 6); - lean_ctor_release(x_6, 7); - lean_ctor_release(x_6, 8); - x_216 = x_6; +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 = lean_ctor_get(x_1, 0); +lean_inc(x_94); +lean_dec(x_1); +x_95 = lean_ctor_get(x_94, 0); +lean_inc(x_95); +x_96 = lean_ctor_get(x_94, 1); +lean_inc(x_96); +if (lean_is_exclusive(x_94)) { + lean_ctor_release(x_94, 0); + lean_ctor_release(x_94, 1); + x_97 = x_94; } else { - lean_dec_ref(x_6); - x_216 = lean_box(0); + lean_dec_ref(x_94); + x_97 = lean_box(0); } -x_217 = l_Lean_replaceRef(x_15, x_188); -lean_dec(x_188); -lean_inc(x_185); -x_218 = lean_alloc_ctor(0, 12, 2); -lean_ctor_set(x_218, 0, x_183); -lean_ctor_set(x_218, 1, x_184); -lean_ctor_set(x_218, 2, x_185); -lean_ctor_set(x_218, 3, x_186); -lean_ctor_set(x_218, 4, x_187); -lean_ctor_set(x_218, 5, x_217); -lean_ctor_set(x_218, 6, x_189); -lean_ctor_set(x_218, 7, x_190); -lean_ctor_set(x_218, 8, x_191); -lean_ctor_set(x_218, 9, x_192); -lean_ctor_set(x_218, 10, x_193); -lean_ctor_set(x_218, 11, x_195); -lean_ctor_set_uint8(x_218, sizeof(void*)*12, x_194); -lean_ctor_set_uint8(x_218, sizeof(void*)*12 + 1, x_196); -if (lean_obj_tag(x_213) == 0) +x_98 = lean_ctor_get(x_96, 0); +lean_inc(x_98); +lean_dec(x_96); +if (lean_is_scalar(x_97)) { + x_99 = lean_alloc_ctor(0, 2, 0); +} else { + x_99 = x_97; +} +lean_ctor_set(x_99, 0, x_95); +lean_ctor_set(x_99, 1, x_98); +x_100 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_100, 0, x_99); +lean_inc(x_9); +x_101 = l_Lean_Meta_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__13(x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_100, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_101) == 0) { -lean_object* x_219; lean_object* x_220; lean_object* x_221; -lean_dec(x_185); -lean_dec(x_14); -lean_dec(x_1); -x_219 = lean_box(0); -if (lean_is_scalar(x_216)) { - x_220 = lean_alloc_ctor(0, 9, 10); +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; +x_102 = lean_ctor_get(x_101, 0); +lean_inc(x_102); +x_103 = lean_ctor_get(x_101, 1); +lean_inc(x_103); +lean_dec(x_101); +x_104 = lean_ctor_get(x_102, 0); +lean_inc(x_104); +x_105 = lean_ctor_get(x_102, 1); +lean_inc(x_105); +if (lean_is_exclusive(x_102)) { + lean_ctor_release(x_102, 0); + lean_ctor_release(x_102, 1); + x_106 = x_102; +} else { + lean_dec_ref(x_102); + x_106 = lean_box(0); +} +x_107 = lean_st_ref_get(x_9, x_103); +lean_dec(x_9); +x_108 = lean_ctor_get(x_107, 0); +lean_inc(x_108); +x_109 = lean_ctor_get(x_107, 1); +lean_inc(x_109); +if (lean_is_exclusive(x_107)) { + lean_ctor_release(x_107, 0); + lean_ctor_release(x_107, 1); + x_110 = x_107; +} else { + lean_dec_ref(x_107); + x_110 = lean_box(0); +} +x_111 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_111, 0, x_105); +lean_ctor_set(x_111, 1, x_108); +if (lean_is_scalar(x_106)) { + x_112 = lean_alloc_ctor(0, 2, 0); +} else { + x_112 = x_106; +} +lean_ctor_set(x_112, 0, x_104); +lean_ctor_set(x_112, 1, x_111); +if (lean_is_scalar(x_110)) { + x_113 = lean_alloc_ctor(0, 2, 0); +} else { + x_113 = x_110; +} +lean_ctor_set(x_113, 0, x_112); +lean_ctor_set(x_113, 1, x_109); +return x_113; +} +else +{ +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +lean_dec(x_9); +x_114 = lean_ctor_get(x_101, 0); +lean_inc(x_114); +x_115 = lean_ctor_get(x_101, 1); +lean_inc(x_115); +if (lean_is_exclusive(x_101)) { + lean_ctor_release(x_101, 0); + lean_ctor_release(x_101, 1); + x_116 = x_101; +} else { + lean_dec_ref(x_101); + x_116 = lean_box(0); +} +if (lean_is_scalar(x_116)) { + x_117 = lean_alloc_ctor(1, 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; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_13) { +_start: +{ +if (lean_obj_tag(x_6) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_box(0); +x_15 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9___lambda__1(x_6, 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; +} +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; lean_object* x_22; +x_16 = lean_ctor_get(x_6, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_16, 1); +lean_inc(x_17); +lean_dec(x_16); +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = lean_st_ref_set(x_8, x_18, x_13); +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_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9___lambda__1(x_6, x_1, x_2, x_3, x_4, x_5, x_20, x_7, x_8, x_9, x_10, x_11, x_12, x_21); +lean_dec(x_20); +return x_22; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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, lean_object* x_14) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_15; lean_object* x_16; +x_15 = lean_box(0); +lean_inc(x_7); +x_16 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__2(x_2, x_3, x_4, x_6, x_7, x_15, 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; uint8_t 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); +x_19 = !lean_is_exclusive(x_17); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_17, 1); +x_21 = lean_st_ref_get(x_7, x_18); +lean_dec(x_7); +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); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_20); +lean_ctor_set(x_24, 1, x_23); +lean_ctor_set(x_17, 1, x_24); +lean_ctor_set(x_21, 0, x_17); +return x_21; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = lean_ctor_get(x_21, 0); +x_26 = lean_ctor_get(x_21, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_21); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_20); +lean_ctor_set(x_27, 1, x_25); +lean_ctor_set(x_17, 1, x_27); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_17); +lean_ctor_set(x_28, 1, 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; +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_st_ref_get(x_7, x_18); +lean_dec(x_7); +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +if (lean_is_exclusive(x_31)) { + lean_ctor_release(x_31, 0); + lean_ctor_release(x_31, 1); + x_34 = x_31; +} else { + lean_dec_ref(x_31); + x_34 = lean_box(0); +} +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_30); +lean_ctor_set(x_35, 1, x_32); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_29); +lean_ctor_set(x_36, 1, x_35); +if (lean_is_scalar(x_34)) { + x_37 = lean_alloc_ctor(0, 2, 0); +} else { + x_37 = x_34; +} +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +return x_37; +} +} +else +{ +uint8_t x_38; +lean_dec(x_7); +x_38 = !lean_is_exclusive(x_16); +if (x_38 == 0) +{ +return x_16; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_16, 0); +x_40 = lean_ctor_get(x_16, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_16); +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; +x_42 = !lean_is_exclusive(x_1); +if (x_42 == 0) +{ +lean_object* x_43; uint8_t x_44; +x_43 = lean_ctor_get(x_1, 0); +x_44 = !lean_is_exclusive(x_43); +if (x_44 == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_43, 1); +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +lean_dec(x_45); +lean_ctor_set(x_43, 1, x_46); +lean_inc(x_7); +x_47 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9(x_2, x_3, x_4, x_6, x_7, x_1, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; uint8_t 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 = !lean_is_exclusive(x_48); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; uint8_t x_53; +x_51 = lean_ctor_get(x_48, 1); +x_52 = lean_st_ref_get(x_7, x_49); +lean_dec(x_7); +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); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_51); +lean_ctor_set(x_55, 1, x_54); +lean_ctor_set(x_48, 1, x_55); +lean_ctor_set(x_52, 0, x_48); +return x_52; +} +else +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_56 = lean_ctor_get(x_52, 0); +x_57 = lean_ctor_get(x_52, 1); +lean_inc(x_57); +lean_inc(x_56); +lean_dec(x_52); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_51); +lean_ctor_set(x_58, 1, x_56); +lean_ctor_set(x_48, 1, x_58); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_48); +lean_ctor_set(x_59, 1, x_57); +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; +x_60 = lean_ctor_get(x_48, 0); +x_61 = lean_ctor_get(x_48, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_48); +x_62 = lean_st_ref_get(x_7, x_49); +lean_dec(x_7); +x_63 = lean_ctor_get(x_62, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_62, 1); +lean_inc(x_64); +if (lean_is_exclusive(x_62)) { + lean_ctor_release(x_62, 0); + lean_ctor_release(x_62, 1); + x_65 = x_62; } else { - x_220 = x_216; + lean_dec_ref(x_62); + x_65 = lean_box(0); +} +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_61); +lean_ctor_set(x_66, 1, x_63); +x_67 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_67, 0, x_60); +lean_ctor_set(x_67, 1, x_66); +if (lean_is_scalar(x_65)) { + x_68 = lean_alloc_ctor(0, 2, 0); +} else { + x_68 = x_65; +} +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_64); +return x_68; } -lean_ctor_set(x_220, 0, x_197); -lean_ctor_set(x_220, 1, x_198); -lean_ctor_set(x_220, 2, x_199); -lean_ctor_set(x_220, 3, x_203); -lean_ctor_set(x_220, 4, x_204); -lean_ctor_set(x_220, 5, x_205); -lean_ctor_set(x_220, 6, x_206); -lean_ctor_set(x_220, 7, x_212); -lean_ctor_set(x_220, 8, x_219); -lean_ctor_set_uint8(x_220, sizeof(void*)*9, x_200); -lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 1, x_201); -lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 2, x_202); -lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 3, x_207); -lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 4, x_208); -lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 5, x_209); -lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 6, x_210); -lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 7, x_211); -lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 8, x_214); -lean_ctor_set_uint8(x_220, sizeof(void*)*9 + 9, x_215); -x_221 = lean_apply_10(x_2, x_15, x_4, x_5, x_220, x_7, x_8, x_9, x_218, x_11, x_12); -return x_221; } else { -lean_object* x_222; lean_object* x_223; lean_object* x_224; -x_222 = lean_ctor_get(x_213, 0); -lean_inc(x_222); -if (lean_is_exclusive(x_213)) { - lean_ctor_release(x_213, 0); - x_223 = x_213; -} else { - lean_dec_ref(x_213); - x_223 = lean_box(0); +uint8_t x_69; +lean_dec(x_7); +x_69 = !lean_is_exclusive(x_47); +if (x_69 == 0) +{ +return x_47; } -x_224 = lean_ctor_get(x_222, 0); -lean_inc(x_224); -if (lean_obj_tag(x_224) == 0) +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_dec(x_185); -lean_dec(x_14); -lean_dec(x_1); -x_225 = lean_ctor_get(x_222, 1); -lean_inc(x_225); -if (lean_is_exclusive(x_222)) { - lean_ctor_release(x_222, 0); - lean_ctor_release(x_222, 1); - x_226 = x_222; +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_47, 0); +x_71 = lean_ctor_get(x_47, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_47); +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 +{ +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_43, 0); +x_74 = lean_ctor_get(x_43, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_43); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +lean_dec(x_74); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_73); +lean_ctor_set(x_76, 1, x_75); +lean_ctor_set(x_1, 0, x_76); +lean_inc(x_7); +x_77 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9(x_2, x_3, x_4, x_6, x_7, x_1, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(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; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +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_ctor_get(x_78, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_78, 1); +lean_inc(x_81); +if (lean_is_exclusive(x_78)) { + lean_ctor_release(x_78, 0); + lean_ctor_release(x_78, 1); + x_82 = x_78; } else { - lean_dec_ref(x_222); - x_226 = lean_box(0); + lean_dec_ref(x_78); + x_82 = lean_box(0); } -x_227 = lean_box(0); -if (lean_is_scalar(x_226)) { - x_228 = lean_alloc_ctor(0, 2, 0); +x_83 = lean_st_ref_get(x_7, x_79); +lean_dec(x_7); +x_84 = lean_ctor_get(x_83, 0); +lean_inc(x_84); +x_85 = lean_ctor_get(x_83, 1); +lean_inc(x_85); +if (lean_is_exclusive(x_83)) { + lean_ctor_release(x_83, 0); + lean_ctor_release(x_83, 1); + x_86 = x_83; } else { - x_228 = x_226; + lean_dec_ref(x_83); + x_86 = lean_box(0); } -lean_ctor_set(x_228, 0, x_227); -lean_ctor_set(x_228, 1, x_225); -if (lean_is_scalar(x_223)) { - x_229 = lean_alloc_ctor(1, 1, 0); +x_87 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_87, 0, x_81); +lean_ctor_set(x_87, 1, x_84); +if (lean_is_scalar(x_82)) { + x_88 = lean_alloc_ctor(0, 2, 0); } else { - x_229 = x_223; + x_88 = x_82; } -lean_ctor_set(x_229, 0, x_228); -if (lean_is_scalar(x_216)) { - x_230 = lean_alloc_ctor(0, 9, 10); +lean_ctor_set(x_88, 0, x_80); +lean_ctor_set(x_88, 1, x_87); +if (lean_is_scalar(x_86)) { + x_89 = lean_alloc_ctor(0, 2, 0); } else { - x_230 = x_216; + x_89 = x_86; } -lean_ctor_set(x_230, 0, x_197); -lean_ctor_set(x_230, 1, x_198); -lean_ctor_set(x_230, 2, x_199); -lean_ctor_set(x_230, 3, x_203); -lean_ctor_set(x_230, 4, x_204); -lean_ctor_set(x_230, 5, x_205); -lean_ctor_set(x_230, 6, x_206); -lean_ctor_set(x_230, 7, x_212); -lean_ctor_set(x_230, 8, x_229); -lean_ctor_set_uint8(x_230, sizeof(void*)*9, x_200); -lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 1, x_201); -lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 2, x_202); -lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 3, x_207); -lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 4, x_208); -lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 5, x_209); -lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 6, x_210); -lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 7, x_211); -lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 8, x_214); -lean_ctor_set_uint8(x_230, sizeof(void*)*9 + 9, x_215); -x_231 = lean_apply_10(x_2, x_15, x_4, x_5, x_230, x_7, x_8, x_9, x_218, x_11, x_12); -return x_231; +lean_ctor_set(x_89, 0, x_88); +lean_ctor_set(x_89, 1, x_85); +return x_89; } 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; lean_object* x_241; lean_object* x_242; uint8_t x_243; -x_232 = lean_ctor_get(x_224, 0); -lean_inc(x_232); -if (lean_is_exclusive(x_224)) { - lean_ctor_release(x_224, 0); - x_233 = x_224; +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_dec(x_7); +x_90 = lean_ctor_get(x_77, 0); +lean_inc(x_90); +x_91 = lean_ctor_get(x_77, 1); +lean_inc(x_91); +if (lean_is_exclusive(x_77)) { + lean_ctor_release(x_77, 0); + lean_ctor_release(x_77, 1); + x_92 = x_77; } else { - lean_dec_ref(x_224); - x_233 = lean_box(0); + lean_dec_ref(x_77); + x_92 = lean_box(0); } -x_234 = lean_ctor_get(x_222, 1); -lean_inc(x_234); -if (lean_is_exclusive(x_222)) { - lean_ctor_release(x_222, 0); - lean_ctor_release(x_222, 1); - x_235 = x_222; +if (lean_is_scalar(x_92)) { + x_93 = lean_alloc_ctor(1, 2, 0); } else { - lean_dec_ref(x_222); - x_235 = lean_box(0); + x_93 = x_92; } -x_236 = lean_ctor_get(x_232, 0); -lean_inc(x_236); -x_237 = lean_ctor_get(x_232, 1); -lean_inc(x_237); -if (lean_is_exclusive(x_232)) { - lean_ctor_release(x_232, 0); - lean_ctor_release(x_232, 1); - x_238 = x_232; +lean_ctor_set(x_93, 0, x_90); +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; lean_object* x_99; lean_object* x_100; lean_object* x_101; +x_94 = lean_ctor_get(x_1, 0); +lean_inc(x_94); +lean_dec(x_1); +x_95 = lean_ctor_get(x_94, 0); +lean_inc(x_95); +x_96 = lean_ctor_get(x_94, 1); +lean_inc(x_96); +if (lean_is_exclusive(x_94)) { + lean_ctor_release(x_94, 0); + lean_ctor_release(x_94, 1); + x_97 = x_94; } else { - lean_dec_ref(x_232); - x_238 = lean_box(0); + lean_dec_ref(x_94); + x_97 = lean_box(0); } -x_239 = lean_apply_1(x_1, x_236); -x_240 = lean_ctor_get(x_239, 0); -lean_inc(x_240); -x_241 = lean_ctor_get(x_239, 1); -lean_inc(x_241); -lean_dec(x_239); -x_242 = l_Lean_Syntax_structRangeEqWithTraceReuse(x_185, x_14, x_240); -lean_dec(x_185); -x_243 = lean_unbox(x_242); -lean_dec(x_242); -if (x_243 == 0) +x_98 = lean_ctor_get(x_96, 0); +lean_inc(x_98); +lean_dec(x_96); +if (lean_is_scalar(x_97)) { + x_99 = lean_alloc_ctor(0, 2, 0); +} else { + x_99 = x_97; +} +lean_ctor_set(x_99, 0, x_95); +lean_ctor_set(x_99, 1, x_98); +x_100 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_100, 0, x_99); +lean_inc(x_7); +x_101 = l_Lean_Elab_Term_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9(x_2, x_3, x_4, x_6, x_7, x_100, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_101) == 0) { -lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; -lean_dec(x_241); -lean_dec(x_238); -lean_dec(x_237); -lean_dec(x_223); -x_244 = lean_box(0); -if (lean_is_scalar(x_235)) { - x_245 = lean_alloc_ctor(0, 2, 0); +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; +x_102 = lean_ctor_get(x_101, 0); +lean_inc(x_102); +x_103 = lean_ctor_get(x_101, 1); +lean_inc(x_103); +lean_dec(x_101); +x_104 = lean_ctor_get(x_102, 0); +lean_inc(x_104); +x_105 = lean_ctor_get(x_102, 1); +lean_inc(x_105); +if (lean_is_exclusive(x_102)) { + lean_ctor_release(x_102, 0); + lean_ctor_release(x_102, 1); + x_106 = x_102; } else { - x_245 = x_235; + lean_dec_ref(x_102); + x_106 = lean_box(0); } -lean_ctor_set(x_245, 0, x_244); -lean_ctor_set(x_245, 1, x_234); -if (lean_is_scalar(x_233)) { - x_246 = lean_alloc_ctor(1, 1, 0); +x_107 = lean_st_ref_get(x_7, x_103); +lean_dec(x_7); +x_108 = lean_ctor_get(x_107, 0); +lean_inc(x_108); +x_109 = lean_ctor_get(x_107, 1); +lean_inc(x_109); +if (lean_is_exclusive(x_107)) { + lean_ctor_release(x_107, 0); + lean_ctor_release(x_107, 1); + x_110 = x_107; } else { - x_246 = x_233; + lean_dec_ref(x_107); + x_110 = lean_box(0); } -lean_ctor_set(x_246, 0, x_245); -if (lean_is_scalar(x_216)) { - x_247 = lean_alloc_ctor(0, 9, 10); +x_111 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_111, 0, x_105); +lean_ctor_set(x_111, 1, x_108); +if (lean_is_scalar(x_106)) { + x_112 = lean_alloc_ctor(0, 2, 0); } else { - x_247 = x_216; + x_112 = x_106; } -lean_ctor_set(x_247, 0, x_197); -lean_ctor_set(x_247, 1, x_198); -lean_ctor_set(x_247, 2, x_199); -lean_ctor_set(x_247, 3, x_203); -lean_ctor_set(x_247, 4, x_204); -lean_ctor_set(x_247, 5, x_205); -lean_ctor_set(x_247, 6, x_206); -lean_ctor_set(x_247, 7, x_212); -lean_ctor_set(x_247, 8, x_246); -lean_ctor_set_uint8(x_247, sizeof(void*)*9, x_200); -lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 1, x_201); -lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 2, x_202); -lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 3, x_207); -lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 4, x_208); -lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 5, x_209); -lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 6, x_210); -lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 7, x_211); -lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 8, x_214); -lean_ctor_set_uint8(x_247, sizeof(void*)*9 + 9, x_215); -x_248 = lean_apply_10(x_2, x_15, x_4, x_5, x_247, x_7, x_8, x_9, x_218, x_11, x_12); -return x_248; +lean_ctor_set(x_112, 0, x_104); +lean_ctor_set(x_112, 1, x_111); +if (lean_is_scalar(x_110)) { + x_113 = lean_alloc_ctor(0, 2, 0); +} else { + x_113 = x_110; +} +lean_ctor_set(x_113, 0, x_112); +lean_ctor_set(x_113, 1, x_109); +return x_113; } else { -lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; lean_object* x_253; lean_object* x_254; -if (lean_is_scalar(x_238)) { - x_249 = lean_alloc_ctor(0, 2, 0); +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +lean_dec(x_7); +x_114 = lean_ctor_get(x_101, 0); +lean_inc(x_114); +x_115 = lean_ctor_get(x_101, 1); +lean_inc(x_115); +if (lean_is_exclusive(x_101)) { + lean_ctor_release(x_101, 0); + lean_ctor_release(x_101, 1); + x_116 = x_101; } else { - x_249 = x_238; + lean_dec_ref(x_101); + x_116 = lean_box(0); } -lean_ctor_set(x_249, 0, x_241); -lean_ctor_set(x_249, 1, x_237); -if (lean_is_scalar(x_233)) { - x_250 = lean_alloc_ctor(1, 1, 0); +if (lean_is_scalar(x_116)) { + x_117 = lean_alloc_ctor(1, 2, 0); } else { - x_250 = x_233; + x_117 = x_116; } -lean_ctor_set(x_250, 0, x_249); -if (lean_is_scalar(x_235)) { - x_251 = lean_alloc_ctor(0, 2, 0); -} else { - x_251 = x_235; +lean_ctor_set(x_117, 0, x_114); +lean_ctor_set(x_117, 1, x_115); +return x_117; } -lean_ctor_set(x_251, 0, x_250); -lean_ctor_set(x_251, 1, x_234); -if (lean_is_scalar(x_223)) { - x_252 = lean_alloc_ctor(1, 1, 0); -} else { - x_252 = x_223; } -lean_ctor_set(x_252, 0, x_251); -if (lean_is_scalar(x_216)) { - x_253 = lean_alloc_ctor(0, 9, 10); -} else { - x_253 = x_216; } -lean_ctor_set(x_253, 0, x_197); -lean_ctor_set(x_253, 1, x_198); -lean_ctor_set(x_253, 2, x_199); -lean_ctor_set(x_253, 3, x_203); -lean_ctor_set(x_253, 4, x_204); -lean_ctor_set(x_253, 5, x_205); -lean_ctor_set(x_253, 6, x_206); -lean_ctor_set(x_253, 7, x_212); -lean_ctor_set(x_253, 8, x_252); -lean_ctor_set_uint8(x_253, sizeof(void*)*9, x_200); -lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 1, x_201); -lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 2, x_202); -lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 3, x_207); -lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 4, x_208); -lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 5, x_209); -lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 6, x_210); -lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 7, x_211); -lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 8, x_214); -lean_ctor_set_uint8(x_253, sizeof(void*)*9 + 9, x_215); -x_254 = lean_apply_10(x_2, x_15, x_4, x_5, x_253, x_7, x_8, x_9, x_218, x_11, x_12); -return x_254; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___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) { +_start: +{ +if (lean_obj_tag(x_4) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_box(0); +x_15 = l_Lean_Elab_Tactic_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__1___lambda__1(x_4, 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; } +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; lean_object* x_22; +x_16 = lean_ctor_get(x_4, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_16, 1); +lean_inc(x_17); +lean_dec(x_16); +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = lean_st_ref_set(x_6, x_18, x_13); +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_Elab_Tactic_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__1___lambda__1(x_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); +lean_dec(x_20); +return x_22; } } } -static lean_object* _init_l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__1() { +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalSepTactics_goEven___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) { _start: { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("null", 4); -return x_1; +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_io_promise_new(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); +lean_inc(x_13); +x_15 = lean_apply_10(x_2, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_14); +if (lean_obj_tag(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_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_io_promise_resolve(x_1, x_13, x_17); +lean_dec(x_13); +x_19 = !lean_is_exclusive(x_18); +if (x_19 == 0) +{ +lean_object* x_20; +x_20 = lean_ctor_get(x_18, 0); +lean_dec(x_20); +lean_ctor_set(x_18, 0, x_16); +return x_18; +} +else +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_ctor_get(x_18, 1); +lean_inc(x_21); +lean_dec(x_18); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_16); +lean_ctor_set(x_22, 1, x_21); +return x_22; +} +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_23 = lean_ctor_get(x_15, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_15, 1); +lean_inc(x_24); +lean_dec(x_15); +x_25 = lean_io_promise_resolve(x_1, x_13, x_24); +lean_dec(x_13); +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_tag(x_25, 1); +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(1, 2, 0); +lean_ctor_set(x_29, 0, x_23); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} } } -static lean_object* _init_l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2() { +} +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalSepTactics_goEven___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) { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_io_promise_new(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); +lean_inc(x_13); +x_15 = lean_apply_10(x_2, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_14); +if (lean_obj_tag(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_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_io_promise_resolve(x_1, x_13, x_17); +lean_dec(x_13); +x_19 = !lean_is_exclusive(x_18); +if (x_19 == 0) +{ +lean_object* x_20; +x_20 = lean_ctor_get(x_18, 0); +lean_dec(x_20); +lean_ctor_set(x_18, 0, x_16); +return x_18; +} +else +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_ctor_get(x_18, 1); +lean_inc(x_21); +lean_dec(x_18); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_16); +lean_ctor_set(x_22, 1, x_21); +return x_22; +} +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_23 = lean_ctor_get(x_15, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_15, 1); +lean_inc(x_24); +lean_dec(x_15); +x_25 = lean_io_promise_resolve(x_1, x_13, x_24); +lean_dec(x_13); +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_tag(x_25, 1); +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(1, 2, 0); +lean_ctor_set(x_29, 0, x_23); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} } } LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1(lean_object* x_1) { @@ -6731,7 +8031,7 @@ x_6 = lean_unsigned_to_nat(1u); x_7 = l_Array_toSubarray___rarg(x_4, x_6, x_5); x_8 = l_Array_ofSubarray___rarg(x_7); x_9 = lean_box(2); -x_10 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_10 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; x_11 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_11, 0, x_9); lean_ctor_set(x_11, 1, x_10); @@ -6805,280 +8105,289 @@ lean_dec(x_40); x_42 = l_Lean_Elab_Tactic_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__1(x_3, x_7, x_9, x_8, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, 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; uint8_t x_47; +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; 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_alloc_ctor(1, 1, 0); -lean_ctor_set(x_45, 0, x_43); -x_46 = lean_io_promise_resolve(x_45, x_2, x_44); +x_45 = lean_ctor_get(x_43, 1); +lean_inc(x_45); +lean_dec(x_43); +x_46 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_46, 0, x_45); +x_47 = lean_io_promise_resolve(x_46, x_2, x_44); lean_dec(x_2); -x_47 = !lean_is_exclusive(x_46); -if (x_47 == 0) +x_48 = !lean_is_exclusive(x_47); +if (x_48 == 0) { -return x_46; +return x_47; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_48 = lean_ctor_get(x_46, 0); -x_49 = lean_ctor_get(x_46, 1); +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_47, 0); +x_50 = lean_ctor_get(x_47, 1); +lean_inc(x_50); lean_inc(x_49); -lean_inc(x_48); -lean_dec(x_46); -x_50 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_50, 0, x_48); -lean_ctor_set(x_50, 1, x_49); -return x_50; +lean_dec(x_47); +x_51 = lean_alloc_ctor(0, 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_51; +uint8_t x_52; lean_dec(x_2); -x_51 = !lean_is_exclusive(x_42); -if (x_51 == 0) +x_52 = !lean_is_exclusive(x_42); +if (x_52 == 0) { return x_42; } else { -lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_52 = lean_ctor_get(x_42, 0); -x_53 = lean_ctor_get(x_42, 1); +lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_53 = lean_ctor_get(x_42, 0); +x_54 = lean_ctor_get(x_42, 1); +lean_inc(x_54); lean_inc(x_53); -lean_inc(x_52); lean_dec(x_42); -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; +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_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; 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_55 = lean_ctor_get(x_23, 0); -x_56 = lean_ctor_get(x_23, 1); +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; 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_56 = lean_ctor_get(x_23, 0); +x_57 = lean_ctor_get(x_23, 1); +lean_inc(x_57); lean_inc(x_56); -lean_inc(x_55); lean_dec(x_23); -x_57 = 0; -x_58 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_58, 0, x_55); -lean_ctor_set(x_58, 1, x_1); -lean_ctor_set_uint8(x_58, sizeof(void*)*2, x_57); +x_58 = 0; +x_59 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_59, 0, x_56); +lean_ctor_set(x_59, 1, x_1); +lean_ctor_set_uint8(x_59, sizeof(void*)*2, x_58); lean_inc(x_2); -x_59 = lean_io_promise_result(x_2); +x_60 = lean_io_promise_result(x_2); lean_inc(x_3); -x_60 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_60, 0, x_58); -lean_ctor_set(x_60, 1, x_3); -lean_ctor_set(x_60, 2, x_59); +x_61 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_61, 0, x_59); +lean_ctor_set(x_61, 1, x_3); +lean_ctor_set(x_61, 2, x_60); lean_inc(x_3); -x_61 = l_Lean_Syntax_getRange_x3f(x_3, x_57); +x_62 = l_Lean_Syntax_getRange_x3f(x_3, x_58); lean_inc(x_9); -x_62 = lean_io_promise_result(x_9); -x_63 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_63, 0, x_61); -lean_ctor_set(x_63, 1, x_62); -x_64 = l_Lean_Syntax_getRange_x3f(x_4, x_57); -x_65 = lean_io_promise_result(x_5); -lean_ctor_set(x_19, 1, x_65); -lean_ctor_set(x_19, 0, x_64); -x_66 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__2___closed__1; -x_67 = lean_array_push(x_66, x_63); -x_68 = lean_array_push(x_67, x_19); -x_69 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_69, 0, x_60); -lean_ctor_set(x_69, 1, x_68); -x_70 = lean_ctor_get(x_6, 1); -x_71 = lean_io_promise_resolve(x_69, x_70, x_56); -x_72 = lean_ctor_get(x_71, 1); -lean_inc(x_72); -lean_dec(x_71); -x_73 = l_Lean_Elab_Tactic_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__1(x_3, x_7, x_9, x_8, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_72); -if (lean_obj_tag(x_73) == 0) +x_63 = lean_io_promise_result(x_9); +x_64 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_64, 0, x_62); +lean_ctor_set(x_64, 1, x_63); +x_65 = l_Lean_Syntax_getRange_x3f(x_4, x_58); +x_66 = lean_io_promise_result(x_5); +lean_ctor_set(x_19, 1, x_66); +lean_ctor_set(x_19, 0, x_65); +x_67 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__2___closed__1; +x_68 = lean_array_push(x_67, x_64); +x_69 = lean_array_push(x_68, x_19); +x_70 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_70, 0, x_61); +lean_ctor_set(x_70, 1, x_69); +x_71 = lean_ctor_get(x_6, 1); +x_72 = lean_io_promise_resolve(x_70, x_71, x_57); +x_73 = lean_ctor_get(x_72, 1); +lean_inc(x_73); +lean_dec(x_72); +x_74 = l_Lean_Elab_Tactic_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__1(x_3, x_7, x_9, x_8, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_73); +if (lean_obj_tag(x_74) == 0) { -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_74 = lean_ctor_get(x_73, 0); -lean_inc(x_74); -x_75 = lean_ctor_get(x_73, 1); +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; +x_75 = lean_ctor_get(x_74, 0); lean_inc(x_75); -lean_dec(x_73); -x_76 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_76, 0, x_74); -x_77 = lean_io_promise_resolve(x_76, x_2, x_75); +x_76 = lean_ctor_get(x_74, 1); +lean_inc(x_76); +lean_dec(x_74); +x_77 = lean_ctor_get(x_75, 1); +lean_inc(x_77); +lean_dec(x_75); +x_78 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_78, 0, x_77); +x_79 = lean_io_promise_resolve(x_78, x_2, x_76); lean_dec(x_2); -x_78 = lean_ctor_get(x_77, 0); -lean_inc(x_78); -x_79 = lean_ctor_get(x_77, 1); -lean_inc(x_79); -if (lean_is_exclusive(x_77)) { - lean_ctor_release(x_77, 0); - lean_ctor_release(x_77, 1); - x_80 = x_77; +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_77); - x_80 = lean_box(0); + lean_dec_ref(x_79); + x_82 = lean_box(0); } -if (lean_is_scalar(x_80)) { - x_81 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_82)) { + x_83 = lean_alloc_ctor(0, 2, 0); } else { - x_81 = x_80; + x_83 = x_82; } -lean_ctor_set(x_81, 0, x_78); -lean_ctor_set(x_81, 1, x_79); -return x_81; +lean_ctor_set(x_83, 0, x_80); +lean_ctor_set(x_83, 1, x_81); +return x_83; } else { -lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_dec(x_2); -x_82 = lean_ctor_get(x_73, 0); -lean_inc(x_82); -x_83 = lean_ctor_get(x_73, 1); -lean_inc(x_83); -if (lean_is_exclusive(x_73)) { - lean_ctor_release(x_73, 0); - lean_ctor_release(x_73, 1); - x_84 = x_73; +x_84 = lean_ctor_get(x_74, 0); +lean_inc(x_84); +x_85 = lean_ctor_get(x_74, 1); +lean_inc(x_85); +if (lean_is_exclusive(x_74)) { + lean_ctor_release(x_74, 0); + lean_ctor_release(x_74, 1); + x_86 = x_74; } else { - lean_dec_ref(x_73); - x_84 = lean_box(0); + lean_dec_ref(x_74); + x_86 = lean_box(0); } -if (lean_is_scalar(x_84)) { - x_85 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_86)) { + x_87 = lean_alloc_ctor(1, 2, 0); } else { - x_85 = x_84; + x_87 = x_86; } -lean_ctor_set(x_85, 0, x_82); -lean_ctor_set(x_85, 1, x_83); -return x_85; +lean_ctor_set(x_87, 0, x_84); +lean_ctor_set(x_87, 1, x_85); +return x_87; } } } else { -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; uint8_t 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; -x_86 = lean_ctor_get(x_19, 0); -x_87 = lean_ctor_get(x_19, 1); -lean_inc(x_87); -lean_inc(x_86); -lean_dec(x_19); -x_88 = l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(x_86, x_87); -x_89 = lean_ctor_get(x_88, 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; uint8_t 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; +x_88 = lean_ctor_get(x_19, 0); +x_89 = lean_ctor_get(x_19, 1); 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 = 0; -x_93 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_93, 0, x_89); -lean_ctor_set(x_93, 1, x_1); -lean_ctor_set_uint8(x_93, sizeof(void*)*2, x_92); +lean_inc(x_88); +lean_dec(x_19); +x_90 = l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(x_88, x_89); +x_91 = lean_ctor_get(x_90, 0); +lean_inc(x_91); +x_92 = lean_ctor_get(x_90, 1); +lean_inc(x_92); +if (lean_is_exclusive(x_90)) { + lean_ctor_release(x_90, 0); + lean_ctor_release(x_90, 1); + x_93 = x_90; +} else { + lean_dec_ref(x_90); + x_93 = lean_box(0); +} +x_94 = 0; +x_95 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_95, 0, x_91); +lean_ctor_set(x_95, 1, x_1); +lean_ctor_set_uint8(x_95, sizeof(void*)*2, x_94); lean_inc(x_2); -x_94 = lean_io_promise_result(x_2); +x_96 = lean_io_promise_result(x_2); lean_inc(x_3); -x_95 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_95, 0, x_93); -lean_ctor_set(x_95, 1, x_3); -lean_ctor_set(x_95, 2, x_94); +x_97 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_97, 0, x_95); +lean_ctor_set(x_97, 1, x_3); +lean_ctor_set(x_97, 2, x_96); lean_inc(x_3); -x_96 = l_Lean_Syntax_getRange_x3f(x_3, x_92); +x_98 = l_Lean_Syntax_getRange_x3f(x_3, x_94); lean_inc(x_9); -x_97 = lean_io_promise_result(x_9); -if (lean_is_scalar(x_91)) { - x_98 = lean_alloc_ctor(0, 2, 0); +x_99 = lean_io_promise_result(x_9); +if (lean_is_scalar(x_93)) { + x_100 = lean_alloc_ctor(0, 2, 0); } else { - x_98 = x_91; + x_100 = x_93; } -lean_ctor_set(x_98, 0, x_96); -lean_ctor_set(x_98, 1, x_97); -x_99 = l_Lean_Syntax_getRange_x3f(x_4, x_92); -x_100 = lean_io_promise_result(x_5); -x_101 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_101, 0, x_99); -lean_ctor_set(x_101, 1, x_100); -x_102 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__2___closed__1; -x_103 = lean_array_push(x_102, x_98); -x_104 = lean_array_push(x_103, x_101); -x_105 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_105, 0, x_95); -lean_ctor_set(x_105, 1, x_104); -x_106 = lean_ctor_get(x_6, 1); -x_107 = lean_io_promise_resolve(x_105, x_106, x_90); -x_108 = lean_ctor_get(x_107, 1); -lean_inc(x_108); -lean_dec(x_107); -x_109 = l_Lean_Elab_Tactic_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__1(x_3, x_7, x_9, x_8, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_108); -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; -x_110 = lean_ctor_get(x_109, 0); +lean_ctor_set(x_100, 0, x_98); +lean_ctor_set(x_100, 1, x_99); +x_101 = l_Lean_Syntax_getRange_x3f(x_4, x_94); +x_102 = lean_io_promise_result(x_5); +x_103 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_103, 0, x_101); +lean_ctor_set(x_103, 1, x_102); +x_104 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__2___closed__1; +x_105 = lean_array_push(x_104, x_100); +x_106 = lean_array_push(x_105, x_103); +x_107 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_107, 0, x_97); +lean_ctor_set(x_107, 1, x_106); +x_108 = lean_ctor_get(x_6, 1); +x_109 = lean_io_promise_resolve(x_107, x_108, x_92); +x_110 = lean_ctor_get(x_109, 1); lean_inc(x_110); -x_111 = lean_ctor_get(x_109, 1); -lean_inc(x_111); lean_dec(x_109); -x_112 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_112, 0, x_110); -x_113 = lean_io_promise_resolve(x_112, x_2, x_111); -lean_dec(x_2); -x_114 = lean_ctor_get(x_113, 0); +x_111 = l_Lean_Elab_Tactic_withRestoreOrSaveFull___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__1(x_3, x_7, x_9, x_8, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_110); +if (lean_obj_tag(x_111) == 0) +{ +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_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_ctor_get(x_112, 1); 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; +lean_dec(x_112); +x_115 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_115, 0, x_114); +x_116 = lean_io_promise_resolve(x_115, x_2, x_113); +lean_dec(x_2); +x_117 = lean_ctor_get(x_116, 0); +lean_inc(x_117); +x_118 = lean_ctor_get(x_116, 1); +lean_inc(x_118); +if (lean_is_exclusive(x_116)) { + lean_ctor_release(x_116, 0); + lean_ctor_release(x_116, 1); + x_119 = x_116; } else { - lean_dec_ref(x_113); - x_116 = lean_box(0); + lean_dec_ref(x_116); + x_119 = lean_box(0); } -if (lean_is_scalar(x_116)) { - x_117 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_119)) { + x_120 = lean_alloc_ctor(0, 2, 0); } else { - x_117 = x_116; + x_120 = x_119; } -lean_ctor_set(x_117, 0, x_114); -lean_ctor_set(x_117, 1, x_115); -return x_117; +lean_ctor_set(x_120, 0, x_117); +lean_ctor_set(x_120, 1, x_118); +return x_120; } else { -lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; +lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_dec(x_2); -x_118 = lean_ctor_get(x_109, 0); -lean_inc(x_118); -x_119 = lean_ctor_get(x_109, 1); -lean_inc(x_119); -if (lean_is_exclusive(x_109)) { - lean_ctor_release(x_109, 0); - lean_ctor_release(x_109, 1); - x_120 = x_109; +x_121 = lean_ctor_get(x_111, 0); +lean_inc(x_121); +x_122 = lean_ctor_get(x_111, 1); +lean_inc(x_122); +if (lean_is_exclusive(x_111)) { + lean_ctor_release(x_111, 0); + lean_ctor_release(x_111, 1); + x_123 = x_111; } else { - lean_dec_ref(x_109); - x_120 = lean_box(0); + lean_dec_ref(x_111); + x_123 = lean_box(0); } -if (lean_is_scalar(x_120)) { - x_121 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_123)) { + x_124 = lean_alloc_ctor(1, 2, 0); } else { - x_121 = x_120; + x_124 = x_123; } -lean_ctor_set(x_121, 0, x_118); -lean_ctor_set(x_121, 1, x_119); -return x_121; +lean_ctor_set(x_124, 0, x_121); +lean_ctor_set(x_124, 1, x_122); +return x_124; } } } @@ -7097,7 +8406,7 @@ lean_closure_set(x_18, 5, x_5); lean_closure_set(x_18, 6, x_6); lean_closure_set(x_18, 7, x_7); x_19 = l_Lean_Elab_Tactic_instInhabitedTacticParsedSnapshot; -x_20 = l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__16(x_19, x_18, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); +x_20 = l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalTactic_expandEval___spec__7(x_19, x_18, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); return x_20; } } @@ -7124,7 +8433,7 @@ lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); -x_20 = l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__17(x_19, x_18, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); +x_20 = l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__16(x_19, x_18, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); if (lean_obj_tag(x_20) == 0) { lean_object* x_21; uint8_t x_22; @@ -7254,7 +8563,7 @@ lean_closure_set(x_18, 4, x_5); lean_closure_set(x_18, 5, x_7); lean_closure_set(x_18, 6, x_6); x_19 = l_Lean_Elab_Tactic_instInhabitedTacticParsedSnapshot; -x_20 = l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__16(x_19, x_18, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); +x_20 = l_Lean_Language_withAlwaysResolvedPromise___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__17(x_19, x_18, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); return x_20; } } @@ -7376,286 +8685,277 @@ uint8_t x_38; x_38 = !lean_is_exclusive(x_35); if (x_38 == 0) { -lean_object* x_39; lean_object* x_40; lean_object* x_41; +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; x_39 = lean_ctor_get(x_35, 0); -lean_inc(x_39); +x_40 = lean_box(0); lean_ctor_set(x_30, 1, x_39); -lean_ctor_set(x_30, 0, x_39); +lean_ctor_set(x_30, 0, x_40); lean_ctor_set(x_35, 0, x_30); -x_40 = lean_unsigned_to_nat(1u); -x_41 = l_Array_get_x3f___rarg(x_33, x_40); +x_41 = lean_unsigned_to_nat(1u); +x_42 = l_Array_get_x3f___rarg(x_33, x_41); lean_dec(x_33); -if (lean_obj_tag(x_41) == 0) +if (lean_obj_tag(x_42) == 0) { -lean_object* x_42; lean_object* x_43; +lean_object* x_43; lean_free_object(x_26); lean_dec(x_28); -x_42 = lean_box(0); lean_inc(x_2); -x_43 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_2, x_35, x_42, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_43 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_2, x_35, x_40, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); return x_43; } else { uint8_t x_44; -x_44 = !lean_is_exclusive(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; -x_45 = lean_ctor_get(x_41, 0); +lean_object* x_45; lean_object* x_46; +x_45 = lean_ctor_get(x_42, 0); lean_ctor_set(x_26, 1, x_45); -lean_ctor_set(x_41, 0, x_26); -x_46 = lean_box(0); -x_47 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_41, x_35, x_46, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_47; +lean_ctor_set(x_42, 0, x_26); +x_46 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_42, x_35, x_40, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_46; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_48 = lean_ctor_get(x_41, 0); -lean_inc(x_48); -lean_dec(x_41); -lean_ctor_set(x_26, 1, x_48); -x_49 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_49, 0, x_26); -x_50 = lean_box(0); -x_51 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_49, x_35, x_50, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_51; +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_42, 0); +lean_inc(x_47); +lean_dec(x_42); +lean_ctor_set(x_26, 1, x_47); +x_48 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_48, 0, x_26); +x_49 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_48, x_35, x_40, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_49; } } } else { -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_52 = lean_ctor_get(x_35, 0); -lean_inc(x_52); +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_35, 0); +lean_inc(x_50); lean_dec(x_35); -lean_inc(x_52); -lean_ctor_set(x_30, 1, x_52); -lean_ctor_set(x_30, 0, x_52); -x_53 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_53, 0, x_30); -x_54 = lean_unsigned_to_nat(1u); -x_55 = l_Array_get_x3f___rarg(x_33, x_54); +x_51 = lean_box(0); +lean_ctor_set(x_30, 1, x_50); +lean_ctor_set(x_30, 0, x_51); +x_52 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_52, 0, x_30); +x_53 = lean_unsigned_to_nat(1u); +x_54 = l_Array_get_x3f___rarg(x_33, x_53); lean_dec(x_33); -if (lean_obj_tag(x_55) == 0) +if (lean_obj_tag(x_54) == 0) { -lean_object* x_56; lean_object* x_57; +lean_object* x_55; lean_free_object(x_26); lean_dec(x_28); -x_56 = lean_box(0); lean_inc(x_2); -x_57 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_2, x_53, x_56, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_57; +x_55 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_2, x_52, x_51, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_55; } else { -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_55, 0); -lean_inc(x_58); -if (lean_is_exclusive(x_55)) { - lean_ctor_release(x_55, 0); - x_59 = x_55; +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_56 = lean_ctor_get(x_54, 0); +lean_inc(x_56); +if (lean_is_exclusive(x_54)) { + lean_ctor_release(x_54, 0); + x_57 = x_54; } else { - lean_dec_ref(x_55); - x_59 = lean_box(0); + lean_dec_ref(x_54); + x_57 = lean_box(0); } -lean_ctor_set(x_26, 1, x_58); -if (lean_is_scalar(x_59)) { - x_60 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_26, 1, x_56); +if (lean_is_scalar(x_57)) { + x_58 = lean_alloc_ctor(1, 1, 0); } else { - x_60 = x_59; + x_58 = x_57; } -lean_ctor_set(x_60, 0, x_26); -x_61 = lean_box(0); -x_62 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_60, x_53, x_61, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_62; +lean_ctor_set(x_58, 0, x_26); +x_59 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_58, x_52, x_51, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_59; } } } } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -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_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_60 = lean_ctor_get(x_30, 0); +x_61 = lean_ctor_get(x_30, 1); +lean_inc(x_61); +lean_inc(x_60); lean_dec(x_30); -x_65 = lean_ctor_get(x_63, 2); -lean_inc(x_65); -lean_dec(x_63); -x_66 = lean_task_get_own(x_65); -if (lean_obj_tag(x_66) == 0) +x_62 = lean_ctor_get(x_60, 2); +lean_inc(x_62); +lean_dec(x_60); +x_63 = lean_task_get_own(x_62); +if (lean_obj_tag(x_63) == 0) { -lean_object* x_67; lean_object* x_68; -lean_dec(x_64); +lean_object* x_64; lean_object* x_65; +lean_dec(x_61); lean_free_object(x_26); lean_dec(x_28); -x_67 = lean_box(0); +x_64 = lean_box(0); lean_inc_n(x_2, 2); -x_68 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_2, x_2, x_67, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_68; +x_65 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_2, x_2, x_64, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_65; } 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; -x_69 = lean_ctor_get(x_66, 0); -lean_inc(x_69); -if (lean_is_exclusive(x_66)) { - lean_ctor_release(x_66, 0); - x_70 = x_66; +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_66 = lean_ctor_get(x_63, 0); +lean_inc(x_66); +if (lean_is_exclusive(x_63)) { + lean_ctor_release(x_63, 0); + x_67 = x_63; } else { - lean_dec_ref(x_66); - x_70 = lean_box(0); + lean_dec_ref(x_63); + x_67 = lean_box(0); } -lean_inc(x_69); -x_71 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_71, 0, x_69); -lean_ctor_set(x_71, 1, x_69); -if (lean_is_scalar(x_70)) { - x_72 = lean_alloc_ctor(1, 1, 0); +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_66); +if (lean_is_scalar(x_67)) { + x_70 = lean_alloc_ctor(1, 1, 0); } else { - x_72 = x_70; + x_70 = x_67; } -lean_ctor_set(x_72, 0, x_71); -x_73 = lean_unsigned_to_nat(1u); -x_74 = l_Array_get_x3f___rarg(x_64, x_73); -lean_dec(x_64); -if (lean_obj_tag(x_74) == 0) +lean_ctor_set(x_70, 0, x_69); +x_71 = lean_unsigned_to_nat(1u); +x_72 = l_Array_get_x3f___rarg(x_61, x_71); +lean_dec(x_61); +if (lean_obj_tag(x_72) == 0) { -lean_object* x_75; lean_object* x_76; +lean_object* x_73; lean_free_object(x_26); lean_dec(x_28); -x_75 = lean_box(0); lean_inc(x_2); -x_76 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_2, x_72, x_75, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_76; +x_73 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_2, x_70, x_68, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_73; } else { -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; -x_77 = lean_ctor_get(x_74, 0); -lean_inc(x_77); -if (lean_is_exclusive(x_74)) { - lean_ctor_release(x_74, 0); - x_78 = x_74; +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_74 = lean_ctor_get(x_72, 0); +lean_inc(x_74); +if (lean_is_exclusive(x_72)) { + lean_ctor_release(x_72, 0); + x_75 = x_72; } else { - lean_dec_ref(x_74); - x_78 = lean_box(0); + lean_dec_ref(x_72); + x_75 = lean_box(0); } -lean_ctor_set(x_26, 1, x_77); -if (lean_is_scalar(x_78)) { - x_79 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_26, 1, x_74); +if (lean_is_scalar(x_75)) { + x_76 = lean_alloc_ctor(1, 1, 0); } else { - x_79 = x_78; + x_76 = x_75; } -lean_ctor_set(x_79, 0, x_26); -x_80 = lean_box(0); -x_81 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_79, x_72, x_80, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_81; +lean_ctor_set(x_76, 0, x_26); +x_77 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_76, x_70, x_68, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_77; } } } } else { -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_82 = lean_ctor_get(x_26, 0); -x_83 = lean_ctor_get(x_26, 1); -lean_inc(x_83); -lean_inc(x_82); +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; +x_78 = lean_ctor_get(x_26, 0); +x_79 = lean_ctor_get(x_26, 1); +lean_inc(x_79); +lean_inc(x_78); lean_dec(x_26); -x_84 = l_Lean_Language_SnapshotTask_get___rarg(x_83); -x_85 = lean_ctor_get(x_84, 0); -lean_inc(x_85); -x_86 = lean_ctor_get(x_84, 1); -lean_inc(x_86); -if (lean_is_exclusive(x_84)) { - lean_ctor_release(x_84, 0); - lean_ctor_release(x_84, 1); - x_87 = x_84; +x_80 = l_Lean_Language_SnapshotTask_get___rarg(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_84); - x_87 = lean_box(0); + lean_dec_ref(x_80); + x_83 = lean_box(0); } -x_88 = lean_ctor_get(x_85, 2); -lean_inc(x_88); -lean_dec(x_85); -x_89 = lean_task_get_own(x_88); -if (lean_obj_tag(x_89) == 0) +x_84 = lean_ctor_get(x_81, 2); +lean_inc(x_84); +lean_dec(x_81); +x_85 = lean_task_get_own(x_84); +if (lean_obj_tag(x_85) == 0) { -lean_object* x_90; lean_object* x_91; -lean_dec(x_87); -lean_dec(x_86); +lean_object* x_86; lean_object* x_87; +lean_dec(x_83); lean_dec(x_82); -x_90 = lean_box(0); +lean_dec(x_78); +x_86 = lean_box(0); lean_inc_n(x_2, 2); -x_91 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_2, x_2, x_90, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_91; +x_87 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_2, x_2, x_86, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_87; } 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; -x_92 = lean_ctor_get(x_89, 0); -lean_inc(x_92); -if (lean_is_exclusive(x_89)) { - lean_ctor_release(x_89, 0); - x_93 = x_89; +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_88 = lean_ctor_get(x_85, 0); +lean_inc(x_88); +if (lean_is_exclusive(x_85)) { + lean_ctor_release(x_85, 0); + x_89 = x_85; } else { - lean_dec_ref(x_89); - x_93 = lean_box(0); + lean_dec_ref(x_85); + x_89 = lean_box(0); } -lean_inc(x_92); -if (lean_is_scalar(x_87)) { - x_94 = lean_alloc_ctor(0, 2, 0); +x_90 = lean_box(0); +if (lean_is_scalar(x_83)) { + x_91 = lean_alloc_ctor(0, 2, 0); } else { - x_94 = x_87; + x_91 = x_83; } -lean_ctor_set(x_94, 0, x_92); -lean_ctor_set(x_94, 1, x_92); -if (lean_is_scalar(x_93)) { - x_95 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_91, 0, x_90); +lean_ctor_set(x_91, 1, x_88); +if (lean_is_scalar(x_89)) { + x_92 = lean_alloc_ctor(1, 1, 0); } else { - x_95 = x_93; + x_92 = x_89; } -lean_ctor_set(x_95, 0, x_94); -x_96 = lean_unsigned_to_nat(1u); -x_97 = l_Array_get_x3f___rarg(x_86, x_96); -lean_dec(x_86); -if (lean_obj_tag(x_97) == 0) -{ -lean_object* x_98; lean_object* x_99; +lean_ctor_set(x_92, 0, x_91); +x_93 = lean_unsigned_to_nat(1u); +x_94 = l_Array_get_x3f___rarg(x_82, x_93); lean_dec(x_82); -x_98 = lean_box(0); +if (lean_obj_tag(x_94) == 0) +{ +lean_object* x_95; +lean_dec(x_78); lean_inc(x_2); -x_99 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_2, x_95, x_98, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_99; +x_95 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_2, x_92, x_90, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_95; } else { -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_100 = lean_ctor_get(x_97, 0); -lean_inc(x_100); -if (lean_is_exclusive(x_97)) { - lean_ctor_release(x_97, 0); - x_101 = x_97; +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_94, 0); +lean_inc(x_96); +if (lean_is_exclusive(x_94)) { + lean_ctor_release(x_94, 0); + x_97 = x_94; } else { - lean_dec_ref(x_97); - x_101 = lean_box(0); + lean_dec_ref(x_94); + x_97 = lean_box(0); } -x_102 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_102, 0, x_82); -lean_ctor_set(x_102, 1, x_100); -if (lean_is_scalar(x_101)) { - x_103 = lean_alloc_ctor(1, 1, 0); +x_98 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_98, 0, x_78); +lean_ctor_set(x_98, 1, x_96); +if (lean_is_scalar(x_97)) { + x_99 = lean_alloc_ctor(1, 1, 0); } else { - x_103 = x_101; + x_99 = x_97; } -lean_ctor_set(x_103, 0, x_102); -x_104 = lean_box(0); -x_105 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_103, x_95, x_104, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_105; +lean_ctor_set(x_99, 0, x_98); +x_100 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_2, x_1, x_4, x_22, x_3, x_99, x_92, x_90, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_100; } } } @@ -7675,13 +8975,12 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__7(le _start: { lean_object* x_15; lean_object* x_16; lean_object* x_17; -lean_dec(x_5); x_15 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__6), 13, 3); lean_closure_set(x_15, 0, x_1); lean_closure_set(x_15, 1, x_2); lean_closure_set(x_15, 2, x_4); x_16 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__7___closed__1; -x_17 = l_Lean_Elab_Term_withNarrowedTacticReuse___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__18(x_16, x_15, x_3, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +x_17 = l_Lean_Elab_Term_withNarrowedTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__2(x_16, x_15, x_3, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); return x_17; } } @@ -7880,7 +9179,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSepTactics_goOdd___lambda__1(lea _start: { lean_object* x_12; lean_object* x_13; lean_object* x_14; -lean_dec(x_2); x_12 = lean_unsigned_to_nat(0u); x_13 = l_Lean_Syntax_getArg(x_1, x_12); lean_inc(x_10); @@ -7900,7 +9198,7 @@ lean_inc(x_15); lean_dec(x_14); x_16 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__7___closed__1; x_17 = l_Lean_Elab_Tactic_evalSepTactics_goOdd___lambda__1___closed__1; -x_18 = l_Lean_Elab_Term_withNarrowedTacticReuse___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__18(x_16, x_17, x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); +x_18 = l_Lean_Elab_Term_withNarrowedTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__2(x_16, x_17, x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); return x_18; } else @@ -8154,6 +9452,24 @@ x_18 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__5(x_1, x_2, x_3, x_4, return x_18; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSepTactics_goEven___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) { +_start: +{ +lean_object* x_15; +x_15 = l_Lean_Elab_Tactic_evalSepTactics_goEven___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, x_14); +lean_dec(x_5); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSepTactics_goOdd___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_Tactic_evalSepTactics_goOdd___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_Lean_Elab_Tactic_evalSepTactics(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, 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: { @@ -8193,9 +9509,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSeq1__1___closed__ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSeq1__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -8213,9 +9529,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSeq1__1___closed__ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSeq1__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -8233,7 +9549,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSeq1__1(lean_object _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalSeq1__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSeq1__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalSeq1__1___closed__5; @@ -8245,7 +9561,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSeq1_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(114u); +x_1 = lean_unsigned_to_nat(113u); x_2 = lean_unsigned_to_nat(23u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -8257,7 +9573,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSeq1_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(115u); +x_1 = lean_unsigned_to_nat(114u); x_2 = lean_unsigned_to_nat(23u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -8284,7 +9600,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSeq1_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(114u); +x_1 = lean_unsigned_to_nat(113u); x_2 = lean_unsigned_to_nat(27u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -8296,7 +9612,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSeq1_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(114u); +x_1 = lean_unsigned_to_nat(113u); x_2 = lean_unsigned_to_nat(35u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -8347,20 +9663,11 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalParen(lean_object* x_1, lean_obj { lean_object* x_11; lean_object* x_12; lean_object* x_13; x_11 = lean_unsigned_to_nat(1u); -x_12 = l_Lean_Syntax_getArg(x_1, x_11); -x_13 = l_Lean_Elab_Tactic_evalTactic(x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_12 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; +x_13 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1(x_11, x_12, x_1, 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_Lean_Elab_Tactic_evalParen___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, 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_evalParen(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_1); -return x_11; -} -} static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalParen__1___closed__1() { _start: { @@ -8373,9 +9680,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalParen__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalParen__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -8393,9 +9700,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalParen__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalParen__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -8405,7 +9712,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalParen__1___closed_ _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalParen___boxed), 10, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalParen), 10, 0); return x_1; } } @@ -8413,7 +9720,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalParen__1(lean_objec _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalParen__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalParen__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalParen__1___closed__5; @@ -8425,8 +9732,8 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(117u); -x_2 = lean_unsigned_to_nat(24u); +x_1 = lean_unsigned_to_nat(116u); +x_2 = lean_unsigned_to_nat(45u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -8437,8 +9744,8 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(118u); -x_2 = lean_unsigned_to_nat(19u); +x_1 = lean_unsigned_to_nat(117u); +x_2 = lean_unsigned_to_nat(46u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -8450,9 +9757,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1 { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1___closed__1; -x_2 = lean_unsigned_to_nat(24u); +x_2 = lean_unsigned_to_nat(45u); x_3 = l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1___closed__2; -x_4 = lean_unsigned_to_nat(19u); +x_4 = lean_unsigned_to_nat(46u); x_5 = lean_alloc_ctor(0, 4, 0); lean_ctor_set(x_5, 0, x_1); lean_ctor_set(x_5, 1, x_2); @@ -8465,8 +9772,8 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(117u); -x_2 = lean_unsigned_to_nat(28u); +x_1 = lean_unsigned_to_nat(116u); +x_2 = lean_unsigned_to_nat(49u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -8477,8 +9784,8 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(117u); -x_2 = lean_unsigned_to_nat(37u); +x_1 = lean_unsigned_to_nat(116u); +x_2 = lean_unsigned_to_nat(58u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -8490,9 +9797,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1 { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1___closed__4; -x_2 = lean_unsigned_to_nat(28u); +x_2 = lean_unsigned_to_nat(49u); x_3 = l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1___closed__5; -x_4 = lean_unsigned_to_nat(37u); +x_4 = lean_unsigned_to_nat(58u); x_5 = lean_alloc_ctor(0, 4, 0); lean_ctor_set(x_5, 0, x_1); lean_ctor_set(x_5, 1, x_2); @@ -8523,6 +9830,15 @@ x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); return x_4; } } +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalParen__2(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalParen__1___closed__4; +x_3 = l_Lean_Elab_addBuiltinIncrementalElab(x_2, x_1); +return x_3; +} +} static lean_object* _init_l_Lean_Elab_Tactic_isCheckpointableTactic___closed__1() { _start: { @@ -8535,9 +9851,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_isCheckpointableTactic___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_isCheckpointableTactic___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -8586,9 +9902,9 @@ static lean_object* _init_l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_addCheckp _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_addCheckpoints___spec__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -8606,9 +9922,9 @@ static lean_object* _init_l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_addCheckp _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_addCheckpoints___spec__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -8626,9 +9942,9 @@ static lean_object* _init_l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_addCheckp _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_addCheckpoints___spec__1___closed__5; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -8772,7 +10088,7 @@ x_44 = l_Lean_mkAtomFrom(x_29, x_42, x_43); x_45 = l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_addCheckpoints___spec__1___closed__7; x_46 = lean_array_push(x_45, x_29); x_47 = lean_box(2); -x_48 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_48 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; x_49 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_49, 0, x_47); lean_ctor_set(x_49, 1, x_48); @@ -9208,39 +10524,6 @@ lean_dec(x_3); return x_12; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1___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; -x_3 = l_Lean_Syntax_getArgs(x_2); -x_4 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -x_5 = l_Array_toSubarray___rarg(x_3, x_4, x_1); -x_6 = l_Array_ofSubarray___rarg(x_5); -x_7 = lean_box(2); -x_8 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; -x_9 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_9, 0, x_7); -lean_ctor_set(x_9, 1, x_8); -lean_ctor_set(x_9, 2, x_6); -x_10 = l_Lean_Syntax_getArg(x_2, x_1); -lean_dec(x_1); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_9); -lean_ctor_set(x_11, 1, x_10); -return x_11; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___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) { -_start: -{ -lean_object* x_13; lean_object* x_14; -x_13 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1___lambda__1___boxed), 2, 1); -lean_closure_set(x_13, 0, x_1); -x_14 = l_Lean_Elab_Term_withNarrowedTacticReuse___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__18(x_13, x_2, x_3, 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_Elab_Tactic_evalTacticSeq1Indented___closed__1() { _start: { @@ -9255,19 +10538,10 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTacticSeq1Indented(lean_object* lean_object* x_11; lean_object* x_12; lean_object* x_13; x_11 = lean_unsigned_to_nat(0u); x_12 = l_Lean_Elab_Tactic_evalTacticSeq1Indented___closed__1; -x_13 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1(x_11, x_12, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_13 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1(x_11, x_12, x_1, 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_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1___lambda__1(x_1, x_2); -lean_dec(x_2); -return x_3; -} -} static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq1Indented__1___closed__1() { _start: { @@ -9280,9 +10554,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq1Indented _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq1Indented__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -9300,7 +10574,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq1Indented_ _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_addCheckpoints___spec__1___closed__6; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq1Indented__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq1Indented__1___closed__3; @@ -9312,7 +10586,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq1Indented _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(185u); +x_1 = lean_unsigned_to_nat(184u); x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9324,7 +10598,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq1Indented _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(186u); +x_1 = lean_unsigned_to_nat(185u); x_2 = lean_unsigned_to_nat(62u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9352,7 +10626,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq1Indented _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(185u); +x_1 = lean_unsigned_to_nat(184u); x_2 = lean_unsigned_to_nat(4u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9364,7 +10638,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq1Indented _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(185u); +x_1 = lean_unsigned_to_nat(184u); x_2 = lean_unsigned_to_nat(26u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9440,7 +10714,7 @@ lean_inc(x_14); lean_dec(x_13); x_15 = lean_unsigned_to_nat(1u); x_16 = l_Lean_Elab_Tactic_evalTacticSeq1Indented___closed__1; -x_17 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1(x_15, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_14); +x_17 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1(x_15, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_14); return x_17; } else @@ -9584,9 +10858,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -9604,9 +10878,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -9624,7 +10898,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed_ _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed__1___closed__5; @@ -9636,7 +10910,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(189u); +x_1 = lean_unsigned_to_nat(188u); x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9648,7 +10922,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(194u); +x_1 = lean_unsigned_to_nat(193u); x_2 = lean_unsigned_to_nat(68u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9676,7 +10950,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(189u); +x_1 = lean_unsigned_to_nat(188u); x_2 = lean_unsigned_to_nat(4u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9688,7 +10962,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(189u); +x_1 = lean_unsigned_to_nat(188u); x_2 = lean_unsigned_to_nat(26u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -9743,14 +11017,6 @@ x_3 = l_Lean_Elab_addBuiltinIncrementalElab(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_evalTacticCDot___lambda__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalTactic), 10, 0); -return x_1; -} -} LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTacticCDot___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: { @@ -9771,319 +11037,8 @@ x_14 = lean_ctor_get(x_13, 1); lean_inc(x_14); lean_dec(x_13); x_15 = lean_unsigned_to_nat(1u); -x_16 = l_Lean_Elab_Tactic_evalTacticCDot___lambda__1___closed__1; -x_17 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1(x_15, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_14); -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_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -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_Elab_Tactic_evalTacticCDot(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, 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; -x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Lean_Syntax_getArg(x_1, x_11); -lean_inc(x_12); -x_13 = l_Lean_Elab_Tactic_mkInitialTacticInfo(x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, 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_dec(x_13); -x_16 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalWithAnnotateState___lambda__1), 11, 1); -lean_closure_set(x_16, 0, x_14); -x_17 = l_Lean_Elab_Tactic_evalTacticSeqBracketed___closed__1; -x_18 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalTacticCDot___lambda__1), 12, 3); -lean_closure_set(x_18, 0, x_17); -lean_closure_set(x_18, 1, x_16); -lean_closure_set(x_18, 2, x_1); -x_19 = !lean_is_exclusive(x_8); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = lean_ctor_get(x_8, 5); -x_21 = l_Lean_replaceRef(x_12, x_20); -lean_dec(x_20); -lean_dec(x_12); -lean_ctor_set(x_8, 5, x_21); -x_22 = l_Lean_Elab_Tactic_closeUsingOrAdmit(x_18, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_15); -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; uint8_t x_34; lean_object* x_35; uint8_t x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_23 = lean_ctor_get(x_8, 0); -x_24 = lean_ctor_get(x_8, 1); -x_25 = lean_ctor_get(x_8, 2); -x_26 = lean_ctor_get(x_8, 3); -x_27 = lean_ctor_get(x_8, 4); -x_28 = lean_ctor_get(x_8, 5); -x_29 = lean_ctor_get(x_8, 6); -x_30 = lean_ctor_get(x_8, 7); -x_31 = lean_ctor_get(x_8, 8); -x_32 = lean_ctor_get(x_8, 9); -x_33 = lean_ctor_get(x_8, 10); -x_34 = lean_ctor_get_uint8(x_8, sizeof(void*)*12); -x_35 = lean_ctor_get(x_8, 11); -x_36 = lean_ctor_get_uint8(x_8, sizeof(void*)*12 + 1); -lean_inc(x_35); -lean_inc(x_33); -lean_inc(x_32); -lean_inc(x_31); -lean_inc(x_30); -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_8); -x_37 = l_Lean_replaceRef(x_12, x_28); -lean_dec(x_28); -lean_dec(x_12); -x_38 = lean_alloc_ctor(0, 12, 2); -lean_ctor_set(x_38, 0, x_23); -lean_ctor_set(x_38, 1, x_24); -lean_ctor_set(x_38, 2, x_25); -lean_ctor_set(x_38, 3, x_26); -lean_ctor_set(x_38, 4, x_27); -lean_ctor_set(x_38, 5, x_37); -lean_ctor_set(x_38, 6, x_29); -lean_ctor_set(x_38, 7, x_30); -lean_ctor_set(x_38, 8, x_31); -lean_ctor_set(x_38, 9, x_32); -lean_ctor_set(x_38, 10, x_33); -lean_ctor_set(x_38, 11, x_35); -lean_ctor_set_uint8(x_38, sizeof(void*)*12, x_34); -lean_ctor_set_uint8(x_38, sizeof(void*)*12 + 1, x_36); -x_39 = l_Lean_Elab_Tactic_closeUsingOrAdmit(x_18, x_2, x_3, x_4, x_5, x_6, x_7, x_38, x_9, x_15); -return x_39; -} -} -} -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("cdot", 4); -return x_1; -} -} -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__1; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("evalTacticCDot", 14); -return x_1; -} -} -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; -x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__3; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} -} -static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__5() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalTacticCDot), 10, 0); -return x_1; -} -} -LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__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_Elab_Tactic_evalWithAnnotateState__1___closed__4; -x_3 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__2; -x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__4; -x_5 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__5; -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___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(197u); -x_2 = lean_unsigned_to_nat(0u); -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_Elab_Tactic_evalTacticCDot_declRange__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(206u); -x_2 = lean_unsigned_to_nat(64u); -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_Elab_Tactic_evalTacticCDot_declRange__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___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__1; -x_2 = lean_unsigned_to_nat(0u); -x_3 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__2; -x_4 = lean_unsigned_to_nat(64u); -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___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(197u); -x_2 = lean_unsigned_to_nat(4u); -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_Elab_Tactic_evalTacticCDot_declRange__1___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(197u); -x_2 = lean_unsigned_to_nat(18u); -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_Elab_Tactic_evalTacticCDot_declRange__1___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___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__4; -x_2 = lean_unsigned_to_nat(4u); -x_3 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__5; -x_4 = lean_unsigned_to_nat(18u); -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___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__7() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__3; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__6; -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___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__4; -x_3 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__7; -x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); -return x_4; -} -} -LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__2(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__4; -x_3 = l_Lean_Elab_addBuiltinIncrementalElab(x_2, x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalFocus___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_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -x_13 = l_Lean_Elab_withInfoTreeContext___at_Lean_Elab_Term_runTactic___spec__11(x_1, x_2, 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; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = lean_ctor_get(x_13, 1); -lean_inc(x_14); -lean_dec(x_13); -x_15 = lean_unsigned_to_nat(1u); -x_16 = l_Lean_Syntax_getArg(x_3, x_15); -x_17 = l_Lean_Elab_Tactic_evalTactic(x_16, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_14); +x_16 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; +x_17 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1(x_15, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_14); return x_17; } else @@ -10097,6 +11052,7 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); +lean_dec(x_3); x_18 = !lean_is_exclusive(x_13); if (x_18 == 0) { @@ -10118,12 +11074,13 @@ return x_21; } } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalFocus(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_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_Tactic_evalTacticCDot(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, 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_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_11 = lean_unsigned_to_nat(0u); x_12 = l_Lean_Syntax_getArg(x_1, x_11); +lean_inc(x_12); x_13 = l_Lean_Elab_Tactic_mkInitialTacticInfo(x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); x_14 = lean_ctor_get(x_13, 0); lean_inc(x_14); @@ -10133,21 +11090,265 @@ lean_dec(x_13); x_16 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalWithAnnotateState___lambda__1), 11, 1); lean_closure_set(x_16, 0, x_14); x_17 = l_Lean_Elab_Tactic_evalTacticSeqBracketed___closed__1; -x_18 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalFocus___lambda__1___boxed), 12, 3); +x_18 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalTacticCDot___lambda__1), 12, 3); lean_closure_set(x_18, 0, x_17); lean_closure_set(x_18, 1, x_16); lean_closure_set(x_18, 2, x_1); -x_19 = l_Lean_Elab_Tactic_focus___rarg(x_18, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_15); -return x_19; +x_19 = !lean_is_exclusive(x_8); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_8, 5); +x_21 = l_Lean_replaceRef(x_12, x_20); +lean_dec(x_20); +lean_dec(x_12); +lean_ctor_set(x_8, 5, x_21); +x_22 = l_Lean_Elab_Tactic_closeUsingOrAdmit(x_18, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_15); +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; uint8_t x_34; lean_object* x_35; uint8_t x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_23 = lean_ctor_get(x_8, 0); +x_24 = lean_ctor_get(x_8, 1); +x_25 = lean_ctor_get(x_8, 2); +x_26 = lean_ctor_get(x_8, 3); +x_27 = lean_ctor_get(x_8, 4); +x_28 = lean_ctor_get(x_8, 5); +x_29 = lean_ctor_get(x_8, 6); +x_30 = lean_ctor_get(x_8, 7); +x_31 = lean_ctor_get(x_8, 8); +x_32 = lean_ctor_get(x_8, 9); +x_33 = lean_ctor_get(x_8, 10); +x_34 = lean_ctor_get_uint8(x_8, sizeof(void*)*12); +x_35 = lean_ctor_get(x_8, 11); +x_36 = lean_ctor_get_uint8(x_8, sizeof(void*)*12 + 1); +lean_inc(x_35); +lean_inc(x_33); +lean_inc(x_32); +lean_inc(x_31); +lean_inc(x_30); +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_8); +x_37 = l_Lean_replaceRef(x_12, x_28); +lean_dec(x_28); +lean_dec(x_12); +x_38 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_38, 0, x_23); +lean_ctor_set(x_38, 1, x_24); +lean_ctor_set(x_38, 2, x_25); +lean_ctor_set(x_38, 3, x_26); +lean_ctor_set(x_38, 4, x_27); +lean_ctor_set(x_38, 5, x_37); +lean_ctor_set(x_38, 6, x_29); +lean_ctor_set(x_38, 7, x_30); +lean_ctor_set(x_38, 8, x_31); +lean_ctor_set(x_38, 9, x_32); +lean_ctor_set(x_38, 10, x_33); +lean_ctor_set(x_38, 11, x_35); +lean_ctor_set_uint8(x_38, sizeof(void*)*12, x_34); +lean_ctor_set_uint8(x_38, sizeof(void*)*12 + 1, x_36); +x_39 = l_Lean_Elab_Tactic_closeUsingOrAdmit(x_18, x_2, x_3, x_4, x_5, x_6, x_7, x_38, x_9, x_15); +return x_39; } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalFocus___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) { +} +} +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__1() { _start: { -lean_object* x_13; -x_13 = l_Lean_Elab_Tactic_evalFocus___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_3); -return x_13; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("cdot", 4); +return x_1; +} +} +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__1; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("evalTacticCDot", 14); +return x_1; +} +} +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___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___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; +x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__3; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalTacticCDot), 10, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__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_Elab_Tactic_evalWithAnnotateState__1___closed__9; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__2; +x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__4; +x_5 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__5; +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___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(196u); +x_2 = lean_unsigned_to_nat(0u); +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_Elab_Tactic_evalTacticCDot_declRange__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(205u); +x_2 = lean_unsigned_to_nat(64u); +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_Elab_Tactic_evalTacticCDot_declRange__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___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__1; +x_2 = lean_unsigned_to_nat(0u); +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__2; +x_4 = lean_unsigned_to_nat(64u); +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___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(196u); +x_2 = lean_unsigned_to_nat(4u); +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_Elab_Tactic_evalTacticCDot_declRange__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(196u); +x_2 = lean_unsigned_to_nat(18u); +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_Elab_Tactic_evalTacticCDot_declRange__1___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___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__4; +x_2 = lean_unsigned_to_nat(4u); +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__5; +x_4 = lean_unsigned_to_nat(18u); +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___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__3; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__6; +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___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__4; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot_declRange__1___closed__7; +x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__2(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__4; +x_3 = l_Lean_Elab_addBuiltinIncrementalElab(x_2, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalFocus(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, 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; +x_11 = lean_unsigned_to_nat(0u); +x_12 = l_Lean_Syntax_getArg(x_1, x_11); +x_13 = l_Lean_Elab_Tactic_mkInitialTacticInfo(x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, 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_dec(x_13); +x_16 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalWithAnnotateState___lambda__1), 11, 1); +lean_closure_set(x_16, 0, x_14); +x_17 = l_Lean_Elab_Tactic_evalTacticSeqBracketed___closed__1; +x_18 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalTacticCDot___lambda__1), 12, 3); +lean_closure_set(x_18, 0, x_17); +lean_closure_set(x_18, 1, x_16); +lean_closure_set(x_18, 2, x_1); +x_19 = l_Lean_Elab_Tactic_focus___rarg(x_18, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_15); +return x_19; } } static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFocus__1___closed__1() { @@ -10162,9 +11363,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFocus__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalFocus__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -10182,9 +11383,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFocus__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalFocus__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -10202,7 +11403,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalFocus__1(lean_objec _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalFocus__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalFocus__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalFocus__1___closed__5; @@ -10214,8 +11415,8 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(208u); -x_2 = lean_unsigned_to_nat(38u); +x_1 = lean_unsigned_to_nat(207u); +x_2 = lean_unsigned_to_nat(59u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -10226,8 +11427,8 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(213u); -x_2 = lean_unsigned_to_nat(21u); +x_1 = lean_unsigned_to_nat(212u); +x_2 = lean_unsigned_to_nat(64u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -10239,9 +11440,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1 { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1___closed__1; -x_2 = lean_unsigned_to_nat(38u); +x_2 = lean_unsigned_to_nat(59u); x_3 = l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1___closed__2; -x_4 = lean_unsigned_to_nat(21u); +x_4 = lean_unsigned_to_nat(64u); x_5 = lean_alloc_ctor(0, 4, 0); lean_ctor_set(x_5, 0, x_1); lean_ctor_set(x_5, 1, x_2); @@ -10254,8 +11455,8 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(208u); -x_2 = lean_unsigned_to_nat(42u); +x_1 = lean_unsigned_to_nat(207u); +x_2 = lean_unsigned_to_nat(63u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -10266,8 +11467,8 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(208u); -x_2 = lean_unsigned_to_nat(51u); +x_1 = lean_unsigned_to_nat(207u); +x_2 = lean_unsigned_to_nat(72u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); @@ -10279,9 +11480,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1 { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1___closed__4; -x_2 = lean_unsigned_to_nat(42u); +x_2 = lean_unsigned_to_nat(63u); x_3 = l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1___closed__5; -x_4 = lean_unsigned_to_nat(51u); +x_4 = lean_unsigned_to_nat(72u); x_5 = lean_alloc_ctor(0, 4, 0); lean_ctor_set(x_5, 0, x_1); lean_ctor_set(x_5, 1, x_2); @@ -10312,6 +11513,15 @@ x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); return x_4; } } +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalFocus__2(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalFocus__1___closed__4; +x_3 = l_Lean_Elab_addBuiltinIncrementalElab(x_2, x_1); +return x_3; +} +} LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_BuiltinTactic_0__Lean_Elab_Tactic_getOptRotation(lean_object* x_1) { _start: { @@ -10392,9 +11602,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___cl _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -10412,9 +11622,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___cl _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -10432,7 +11642,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1(lean_ _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__5; @@ -10444,7 +11654,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(218u); +x_1 = lean_unsigned_to_nat(217u); x_2 = lean_unsigned_to_nat(43u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -10456,7 +11666,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(220u); +x_1 = lean_unsigned_to_nat(219u); x_2 = lean_unsigned_to_nat(39u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -10484,7 +11694,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(218u); +x_1 = lean_unsigned_to_nat(217u); x_2 = lean_unsigned_to_nat(47u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -10496,7 +11706,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(218u); +x_1 = lean_unsigned_to_nat(217u); x_2 = lean_unsigned_to_nat(61u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -10591,9 +11801,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateRight__1___c _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRotateRight__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -10611,9 +11821,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateRight__1___c _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRotateRight__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -10631,7 +11841,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRotateRight__1(lean _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalRotateRight__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRotateRight__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalRotateRight__1___closed__5; @@ -10643,7 +11853,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateRight_declRa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(222u); +x_1 = lean_unsigned_to_nat(221u); x_2 = lean_unsigned_to_nat(44u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -10655,7 +11865,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateRight_declRa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(224u); +x_1 = lean_unsigned_to_nat(223u); x_2 = lean_unsigned_to_nat(40u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -10683,7 +11893,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateRight_declRa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(222u); +x_1 = lean_unsigned_to_nat(221u); x_2 = lean_unsigned_to_nat(48u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -10695,7 +11905,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateRight_declRa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(222u); +x_1 = lean_unsigned_to_nat(221u); x_2 = lean_unsigned_to_nat(63u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -15799,8 +17009,8 @@ static lean_object* _init_l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tacti _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___lambda__2___closed__1; x_4 = l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___lambda__2___closed__2; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -15858,8 +17068,8 @@ static lean_object* _init_l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tacti _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___lambda__2___closed__1; x_4 = l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___closed__2; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -15878,8 +17088,8 @@ static lean_object* _init_l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tacti _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___lambda__2___closed__1; x_4 = l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___closed__4; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -15898,8 +17108,8 @@ static lean_object* _init_l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tacti _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___lambda__2___closed__1; x_4 = l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___closed__6; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -15918,8 +17128,8 @@ static lean_object* _init_l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tacti _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___lambda__2___closed__1; x_4 = l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___closed__8; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -15938,8 +17148,8 @@ static lean_object* _init_l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tacti _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___lambda__2___closed__1; x_4 = l_Lean_Elab_OpenDecl_elabOpenDecl___at_Lean_Elab_Tactic_evalOpen___spec__3___closed__10; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -17714,9 +18924,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalOpen___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalOpen___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -18583,9 +19793,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalOpen__1___closed__ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalOpen__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -18603,7 +19813,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalOpen__1(lean_object _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Lean_Elab_Tactic_evalOpen___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalOpen__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalOpen__1___closed__3; @@ -18615,7 +19825,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalOpen_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(226u); +x_1 = lean_unsigned_to_nat(225u); x_2 = lean_unsigned_to_nat(37u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -18627,7 +19837,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalOpen_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(234u); +x_1 = lean_unsigned_to_nat(233u); x_2 = lean_unsigned_to_nat(12u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -18655,7 +19865,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalOpen_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(226u); +x_1 = lean_unsigned_to_nat(225u); x_2 = lean_unsigned_to_nat(41u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -18667,7 +19877,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalOpen_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(226u); +x_1 = lean_unsigned_to_nat(225u); x_2 = lean_unsigned_to_nat(49u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -20726,9 +21936,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_elabSetOption__1___clo _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_elabSetOption__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -20746,9 +21956,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_elabSetOption__1___clo _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_elabSetOption__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -20766,7 +21976,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_elabSetOption__1(lean_o _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_elabSetOption__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_elabSetOption__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_elabSetOption__1___closed__5; @@ -20778,7 +21988,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_elabSetOption_declRang _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(236u); +x_1 = lean_unsigned_to_nat(235u); x_2 = lean_unsigned_to_nat(43u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -20790,7 +22000,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_elabSetOption_declRang _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(243u); +x_1 = lean_unsigned_to_nat(242u); x_2 = lean_unsigned_to_nat(18u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -20818,7 +22028,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_elabSetOption_declRang _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(236u); +x_1 = lean_unsigned_to_nat(235u); x_2 = lean_unsigned_to_nat(47u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -20830,7 +22040,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_elabSetOption_declRang _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(236u); +x_1 = lean_unsigned_to_nat(235u); x_2 = lean_unsigned_to_nat(60u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -21550,9 +22760,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAllGoals__1___clos _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalAllGoals__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -21570,9 +22780,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAllGoals__1___clos _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalAllGoals__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -21590,7 +22800,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalAllGoals__1(lean_ob _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalAllGoals__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalAllGoals__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalAllGoals__1___closed__5; @@ -21602,7 +22812,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAllGoals_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(245u); +x_1 = lean_unsigned_to_nat(244u); x_2 = lean_unsigned_to_nat(41u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -21614,7 +22824,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAllGoals_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(260u); +x_1 = lean_unsigned_to_nat(259u); x_2 = lean_unsigned_to_nat(28u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -21642,7 +22852,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAllGoals_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(245u); +x_1 = lean_unsigned_to_nat(244u); x_2 = lean_unsigned_to_nat(45u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -21654,7 +22864,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAllGoals_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(245u); +x_1 = lean_unsigned_to_nat(244u); x_2 = lean_unsigned_to_nat(57u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -22394,9 +23604,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals__1___clos _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -22414,9 +23624,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals__1___clos _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -22434,7 +23644,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals__1(lean_ob _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals__1___closed__5; @@ -22446,7 +23656,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(262u); +x_1 = lean_unsigned_to_nat(261u); x_2 = lean_unsigned_to_nat(41u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -22458,7 +23668,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(277u); +x_1 = lean_unsigned_to_nat(276u); x_2 = lean_unsigned_to_nat(28u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -22486,7 +23696,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(262u); +x_1 = lean_unsigned_to_nat(261u); x_2 = lean_unsigned_to_nat(45u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -22498,7 +23708,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAnyGoals_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(262u); +x_1 = lean_unsigned_to_nat(261u); x_2 = lean_unsigned_to_nat(57u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -22549,8 +23759,8 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalTacticSeq(lean_object* x_1, lean { lean_object* x_11; lean_object* x_12; lean_object* x_13; x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Lean_Elab_Tactic_evalTacticCDot___lambda__1___closed__1; -x_13 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1(x_11, x_12, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_12 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; +x_13 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1(x_11, x_12, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); return x_13; } } @@ -22566,9 +23776,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq__1___clo _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -22586,7 +23796,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq__1(lean_o _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_addCheckpoints___spec__1___closed__4; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq__1___closed__3; @@ -22598,7 +23808,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq_declRang _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(280u); +x_1 = lean_unsigned_to_nat(279u); x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -22610,7 +23820,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq_declRang _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(281u); +x_1 = lean_unsigned_to_nat(280u); x_2 = lean_unsigned_to_nat(58u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -22638,7 +23848,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq_declRang _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(280u); +x_1 = lean_unsigned_to_nat(279u); x_2 = lean_unsigned_to_nat(4u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -22650,7 +23860,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticSeq_declRang _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(280u); +x_1 = lean_unsigned_to_nat(279u); x_2 = lean_unsigned_to_nat(17u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23146,9 +24356,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalChoice__1___closed _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalChoice__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -23166,7 +24376,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalChoice__1(lean_obje _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalChoice__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalChoice__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalChoice__1___closed__5; @@ -23178,7 +24388,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalChoice_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(292u); +x_1 = lean_unsigned_to_nat(291u); x_2 = lean_unsigned_to_nat(25u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23190,7 +24400,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalChoice_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(293u); +x_1 = lean_unsigned_to_nat(292u); x_2 = lean_unsigned_to_nat(29u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23218,7 +24428,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalChoice_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(292u); +x_1 = lean_unsigned_to_nat(291u); x_2 = lean_unsigned_to_nat(29u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23230,7 +24440,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalChoice_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(292u); +x_1 = lean_unsigned_to_nat(291u); x_2 = lean_unsigned_to_nat(39u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23324,9 +24534,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSkip__1___closed__ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSkip__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -23344,9 +24554,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSkip__1___closed__ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSkip__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -23364,7 +24574,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSkip__1(lean_object _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalSkip__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSkip__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalSkip__1___closed__5; @@ -23376,7 +24586,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSkip_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(295u); +x_1 = lean_unsigned_to_nat(294u); x_2 = lean_unsigned_to_nat(23u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23388,7 +24598,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSkip_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(295u); +x_1 = lean_unsigned_to_nat(294u); x_2 = lean_unsigned_to_nat(64u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23416,7 +24626,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSkip_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(295u); +x_1 = lean_unsigned_to_nat(294u); x_2 = lean_unsigned_to_nat(27u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23428,7 +24638,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSkip_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(295u); +x_1 = lean_unsigned_to_nat(294u); x_2 = lean_unsigned_to_nat(35u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23535,9 +24745,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalUnknown__1___close _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalUnknown__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -23555,9 +24765,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalUnknown__1___close _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalUnknown__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -23575,7 +24785,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalUnknown__1(lean_obj _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalUnknown__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalUnknown__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalUnknown__1___closed__5; @@ -23587,7 +24797,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalUnknown_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(297u); +x_1 = lean_unsigned_to_nat(296u); x_2 = lean_unsigned_to_nat(26u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23599,7 +24809,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalUnknown_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(298u); +x_1 = lean_unsigned_to_nat(297u); x_2 = lean_unsigned_to_nat(61u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23627,7 +24837,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalUnknown_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(297u); +x_1 = lean_unsigned_to_nat(296u); x_2 = lean_unsigned_to_nat(30u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23639,7 +24849,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalUnknown_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(297u); +x_1 = lean_unsigned_to_nat(296u); x_2 = lean_unsigned_to_nat(41u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -23937,9 +25147,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess__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_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -23957,9 +25167,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess__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_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -23977,7 +25187,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess__1(le _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess__1___closed__5; @@ -23989,7 +25199,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess_decl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(300u); +x_1 = lean_unsigned_to_nat(299u); x_2 = lean_unsigned_to_nat(32u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -24001,7 +25211,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess_decl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(304u); +x_1 = lean_unsigned_to_nat(303u); x_2 = lean_unsigned_to_nat(35u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -24029,7 +25239,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess_decl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(300u); +x_1 = lean_unsigned_to_nat(299u); x_2 = lean_unsigned_to_nat(36u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -24041,7 +25251,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFailIfSuccess_decl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(300u); +x_1 = lean_unsigned_to_nat(299u); x_2 = lean_unsigned_to_nat(53u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -24335,9 +25545,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTraceState__1___cl _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTraceState__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -24355,9 +25565,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTraceState__1___cl _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTraceState__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -24375,7 +25585,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTraceState__1(lean_ _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalTraceState__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTraceState__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalTraceState__1___closed__5; @@ -24387,7 +25597,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTraceState_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(306u); +x_1 = lean_unsigned_to_nat(305u); x_2 = lean_unsigned_to_nat(29u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -24399,7 +25609,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTraceState_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(308u); +x_1 = lean_unsigned_to_nat(307u); x_2 = lean_unsigned_to_nat(37u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -24427,7 +25637,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTraceState_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(306u); +x_1 = lean_unsigned_to_nat(305u); x_2 = lean_unsigned_to_nat(33u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -24439,7 +25649,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTraceState_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(306u); +x_1 = lean_unsigned_to_nat(305u); x_2 = lean_unsigned_to_nat(47u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -24746,9 +25956,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage__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_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -24766,9 +25976,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage__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_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -24786,7 +25996,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage__1(lea _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage__1___closed__5; @@ -24798,7 +26008,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage_declR _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(310u); +x_1 = lean_unsigned_to_nat(309u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -24810,7 +26020,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage_declR _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(313u); +x_1 = lean_unsigned_to_nat(312u); x_2 = lean_unsigned_to_nat(49u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -24838,7 +26048,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage_declR _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(310u); +x_1 = lean_unsigned_to_nat(309u); x_2 = lean_unsigned_to_nat(35u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -24850,7 +26060,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalTraceMessage_declR _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(310u); +x_1 = lean_unsigned_to_nat(309u); x_2 = lean_unsigned_to_nat(51u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -25252,9 +26462,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAssumption__1___cl _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalAssumption__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -25272,9 +26482,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAssumption__1___cl _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalAssumption__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -25292,7 +26502,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalAssumption__1(lean_ _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalAssumption__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalAssumption__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalAssumption__1___closed__5; @@ -25304,7 +26514,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAssumption_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(315u); +x_1 = lean_unsigned_to_nat(314u); x_2 = lean_unsigned_to_nat(48u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -25316,7 +26526,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAssumption_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(319u); +x_1 = lean_unsigned_to_nat(318u); x_2 = lean_unsigned_to_nat(90u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -25344,7 +26554,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAssumption_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(315u); +x_1 = lean_unsigned_to_nat(314u); x_2 = lean_unsigned_to_nat(52u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -25356,7 +26566,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalAssumption_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(315u); +x_1 = lean_unsigned_to_nat(314u); x_2 = lean_unsigned_to_nat(66u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -25610,9 +26820,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalContradiction__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_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalContradiction__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -25630,9 +26840,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalContradiction__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_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalContradiction__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -25650,7 +26860,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalContradiction__1(le _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalContradiction__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalContradiction__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalContradiction__1___closed__5; @@ -25662,7 +26872,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalContradiction_decl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(321u); +x_1 = lean_unsigned_to_nat(320u); x_2 = lean_unsigned_to_nat(51u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -25674,7 +26884,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalContradiction_decl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(322u); +x_1 = lean_unsigned_to_nat(321u); x_2 = lean_unsigned_to_nat(63u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -25702,7 +26912,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalContradiction_decl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(321u); +x_1 = lean_unsigned_to_nat(320u); x_2 = lean_unsigned_to_nat(55u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -25714,7 +26924,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalContradiction_decl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(321u); +x_1 = lean_unsigned_to_nat(320u); x_2 = lean_unsigned_to_nat(72u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -25952,9 +27162,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRefl__1___closed__ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRefl__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -25972,9 +27182,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRefl__1___closed__ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRefl__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -25992,7 +27202,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRefl__1(lean_object _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalRefl__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRefl__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalRefl__1___closed__5; @@ -26004,7 +27214,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRefl_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(324u); +x_1 = lean_unsigned_to_nat(323u); x_2 = lean_unsigned_to_nat(44u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -26016,7 +27226,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRefl_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(325u); +x_1 = lean_unsigned_to_nat(324u); x_2 = lean_unsigned_to_nat(54u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -26044,7 +27254,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRefl_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(324u); +x_1 = lean_unsigned_to_nat(323u); x_2 = lean_unsigned_to_nat(48u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -26056,7 +27266,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRefl_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(324u); +x_1 = lean_unsigned_to_nat(323u); x_2 = lean_unsigned_to_nat(56u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -27032,7 +28242,7 @@ lean_inc(x_15); lean_ctor_set_tag(x_16, 2); lean_ctor_set(x_16, 1, x_20); lean_ctor_set(x_16, 0, x_15); -x_21 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_21 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; lean_inc(x_15); x_22 = l_Lean_Syntax_node1(x_15, x_21, x_2); lean_inc(x_16); @@ -27071,7 +28281,7 @@ lean_inc(x_15); x_36 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_36, 0, x_15); lean_ctor_set(x_36, 1, x_35); -x_37 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_37 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; lean_inc(x_15); x_38 = l_Lean_Syntax_node1(x_15, x_37, x_2); lean_inc(x_36); @@ -27105,9 +28315,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalIntro___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_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalIntro___lambda__2___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -27159,8 +28369,8 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalIntro___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_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__5; x_4 = l_Lean_Elab_Tactic_evalIntro___closed__6; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -27179,8 +28389,8 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalIntro___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__5; x_4 = l_Lean_Elab_Tactic_evalIntro___closed__8; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -27226,9 +28436,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalIntro___closed__14() { _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalIntro___closed__13; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -27246,8 +28456,8 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalIntro___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_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__5; x_4 = l_Lean_Elab_Tactic_evalIntro___closed__15; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -27266,8 +28476,8 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalIntro___closed__18() { _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__5; x_4 = l_Lean_Elab_Tactic_evalIntro___closed__17; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -27302,8 +28512,8 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalIntro___closed__22() { _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__5; x_4 = l_Lean_Elab_Tactic_evalIntro___closed__21; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -27322,8 +28532,8 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalIntro___closed__24() { _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__5; x_4 = l_Lean_Elab_Tactic_evalIntro___closed__23; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -27358,8 +28568,8 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalIntro___closed__28() { _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__5; x_4 = l_Lean_Elab_Tactic_evalIntro___closed__27; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -27394,9 +28604,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalIntro___closed__32() { _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalIntro___closed__31; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -27422,9 +28632,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalIntro___closed__35() { _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalIntro___closed__34; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -27503,7 +28713,7 @@ x_27 = l_Array_extract___rarg(x_25, x_14, x_26); lean_dec(x_26); lean_dec(x_25); x_28 = lean_box(2); -x_29 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_29 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; x_30 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_30, 0, x_28); lean_ctor_set(x_30, 1, x_29); @@ -27569,7 +28779,7 @@ lean_ctor_set(x_55, 0, x_42); lean_ctor_set(x_55, 1, x_54); lean_ctor_set(x_55, 2, x_52); lean_ctor_set(x_55, 3, x_53); -x_56 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_56 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; lean_inc(x_55); lean_inc(x_42); x_57 = l_Lean_Syntax_node1(x_42, x_56, x_55); @@ -27711,7 +28921,7 @@ lean_ctor_set(x_121, 0, x_42); lean_ctor_set(x_121, 1, x_120); lean_ctor_set(x_121, 2, x_118); lean_ctor_set(x_121, 3, x_119); -x_122 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_122 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; lean_inc(x_121); lean_inc(x_42); x_123 = l_Lean_Syntax_node1(x_42, x_122, x_121); @@ -27869,7 +29079,7 @@ lean_ctor_set(x_194, 0, x_181); lean_ctor_set(x_194, 1, x_193); lean_ctor_set(x_194, 2, x_191); lean_ctor_set(x_194, 3, x_192); -x_195 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_195 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; lean_inc(x_194); lean_inc(x_181); x_196 = l_Lean_Syntax_node1(x_181, x_195, x_194); @@ -28011,7 +29221,7 @@ lean_ctor_set(x_260, 0, x_181); lean_ctor_set(x_260, 1, x_259); lean_ctor_set(x_260, 2, x_257); lean_ctor_set(x_260, 3, x_258); -x_261 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_261 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; lean_inc(x_260); lean_inc(x_181); x_262 = l_Lean_Syntax_node1(x_181, x_261, x_260); @@ -28171,7 +29381,7 @@ lean_ctor_set(x_334, 0, x_321); lean_ctor_set(x_334, 1, x_333); lean_ctor_set(x_334, 2, x_331); lean_ctor_set(x_334, 3, x_332); -x_335 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_335 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; lean_inc(x_334); lean_inc(x_321); x_336 = l_Lean_Syntax_node1(x_321, x_335, x_334); @@ -28313,7 +29523,7 @@ lean_ctor_set(x_400, 0, x_321); lean_ctor_set(x_400, 1, x_399); lean_ctor_set(x_400, 2, x_397); lean_ctor_set(x_400, 3, x_398); -x_401 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_401 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; lean_inc(x_400); lean_inc(x_321); x_402 = l_Lean_Syntax_node1(x_321, x_401, x_400); @@ -28516,9 +29726,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntro__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalIntro__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -28536,7 +29746,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalIntro__1(lean_objec _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__1; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalIntro__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalIntro__1___closed__3; @@ -28548,7 +29758,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntro_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(327u); +x_1 = lean_unsigned_to_nat(326u); x_2 = lean_unsigned_to_nat(43u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -28560,7 +29770,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntro_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(353u); +x_1 = lean_unsigned_to_nat(352u); x_2 = lean_unsigned_to_nat(48u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -28588,7 +29798,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntro_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(327u); +x_1 = lean_unsigned_to_nat(326u); x_2 = lean_unsigned_to_nat(47u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -28600,7 +29810,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntro_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(327u); +x_1 = lean_unsigned_to_nat(326u); x_2 = lean_unsigned_to_nat(56u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -28810,9 +30020,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch__1___cl _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -28830,9 +30040,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch__1___cl _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -28850,7 +30060,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch__1(lean_ _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch__1___closed__5; @@ -28862,7 +30072,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(355u); +x_1 = lean_unsigned_to_nat(354u); x_2 = lean_unsigned_to_nat(48u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -28874,7 +30084,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(358u); +x_1 = lean_unsigned_to_nat(357u); x_2 = lean_unsigned_to_nat(52u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -28902,7 +30112,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(355u); +x_1 = lean_unsigned_to_nat(354u); x_2 = lean_unsigned_to_nat(52u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -28914,7 +30124,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntroMatch_declRan _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(355u); +x_1 = lean_unsigned_to_nat(354u); x_2 = lean_unsigned_to_nat(66u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -29681,9 +30891,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalIntros___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalIntros___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -29874,9 +31084,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntros__1___closed _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalIntros__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -29894,7 +31104,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalIntros__1(lean_obje _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Lean_Elab_Tactic_evalIntros___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalIntros__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalIntros__1___closed__3; @@ -29906,7 +31116,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntros_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(360u); +x_1 = lean_unsigned_to_nat(359u); x_2 = lean_unsigned_to_nat(27u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -29918,7 +31128,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntros_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(372u); +x_1 = lean_unsigned_to_nat(371u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -29946,7 +31156,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntros_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(360u); +x_1 = lean_unsigned_to_nat(359u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -29958,7 +31168,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalIntros_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(360u); +x_1 = lean_unsigned_to_nat(359u); x_2 = lean_unsigned_to_nat(41u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -30016,9 +31226,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalRevert___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalRevert___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -30239,9 +31449,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRevert__1___closed _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRevert__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -30259,7 +31469,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRevert__1(lean_obje _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Lean_Elab_Tactic_evalRevert___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRevert__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalRevert__1___closed__3; @@ -30271,7 +31481,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRevert_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(374u); +x_1 = lean_unsigned_to_nat(373u); x_2 = lean_unsigned_to_nat(44u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -30283,7 +31493,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRevert_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(379u); +x_1 = lean_unsigned_to_nat(378u); x_2 = lean_unsigned_to_nat(51u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -30311,7 +31521,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRevert_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(374u); +x_1 = lean_unsigned_to_nat(373u); x_2 = lean_unsigned_to_nat(48u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -30323,7 +31533,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRevert_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(374u); +x_1 = lean_unsigned_to_nat(373u); x_2 = lean_unsigned_to_nat(58u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -30791,9 +32001,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalClear__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalClear__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -30811,7 +32021,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalClear__1(lean_objec _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__35; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalClear__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalClear__1___closed__3; @@ -30823,7 +32033,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalClear_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(381u); +x_1 = lean_unsigned_to_nat(380u); x_2 = lean_unsigned_to_nat(43u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -30835,7 +32045,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalClear_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(390u); +x_1 = lean_unsigned_to_nat(389u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -30863,7 +32073,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalClear_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(381u); +x_1 = lean_unsigned_to_nat(380u); x_2 = lean_unsigned_to_nat(47u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -30875,7 +32085,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalClear_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(381u); +x_1 = lean_unsigned_to_nat(380u); x_2 = lean_unsigned_to_nat(56u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -31256,9 +32466,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalSubst___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalSubst___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -31321,9 +32531,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubst__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSubst__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -31341,7 +32551,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSubst__1(lean_objec _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Lean_Elab_Tactic_evalSubst___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSubst__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalSubst__1___closed__3; @@ -31353,7 +32563,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubst_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(399u); +x_1 = lean_unsigned_to_nat(398u); x_2 = lean_unsigned_to_nat(43u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -31365,7 +32575,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubst_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(402u); +x_1 = lean_unsigned_to_nat(401u); x_2 = lean_unsigned_to_nat(51u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -31393,7 +32603,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubst_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(399u); +x_1 = lean_unsigned_to_nat(398u); x_2 = lean_unsigned_to_nat(47u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -31405,7 +32615,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubst_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(399u); +x_1 = lean_unsigned_to_nat(398u); x_2 = lean_unsigned_to_nat(56u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -31648,9 +32858,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubstVars__1___clo _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSubstVars__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -31668,9 +32878,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubstVars__1___clo _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSubstVars__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -31688,7 +32898,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSubstVars__1(lean_o _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalSubstVars__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSubstVars__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalSubstVars__1___closed__5; @@ -31700,7 +32910,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubstVars_declRang _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(404u); +x_1 = lean_unsigned_to_nat(403u); x_2 = lean_unsigned_to_nat(47u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -31712,7 +32922,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubstVars_declRang _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(405u); +x_1 = lean_unsigned_to_nat(404u); x_2 = lean_unsigned_to_nat(58u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -31740,7 +32950,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubstVars_declRang _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(404u); +x_1 = lean_unsigned_to_nat(403u); x_2 = lean_unsigned_to_nat(51u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -31752,7 +32962,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubstVars_declRang _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(404u); +x_1 = lean_unsigned_to_nat(403u); x_2 = lean_unsigned_to_nat(64u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -31965,9 +33175,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs__1___clos _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -31985,9 +33195,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs__1___clos _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -32005,7 +33215,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs__1(lean_ob _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs__1___closed__5; @@ -32017,7 +33227,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(407u); +x_1 = lean_unsigned_to_nat(406u); x_2 = lean_unsigned_to_nat(46u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -32029,7 +33239,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(408u); +x_1 = lean_unsigned_to_nat(407u); x_2 = lean_unsigned_to_nat(42u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -32057,7 +33267,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(407u); +x_1 = lean_unsigned_to_nat(406u); x_2 = lean_unsigned_to_nat(50u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -32069,7 +33279,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSubstEqs_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(407u); +x_1 = lean_unsigned_to_nat(406u); x_2 = lean_unsigned_to_nat(62u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -32799,7 +34009,7 @@ static lean_object* _init_l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_renameIna _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; x_2 = l_Std_Range_forIn_loop___at_Lean_Elab_Tactic_renameInaccessibles___spec__1___closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; @@ -39654,7 +40864,7 @@ x_13 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__2___closed__1; x_14 = lean_array_push(x_13, x_1); x_15 = lean_array_push(x_14, x_2); x_16 = lean_box(2); -x_17 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_17 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; x_18 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_18, 0, x_16); lean_ctor_set(x_18, 1, x_17); @@ -39845,9 +41055,9 @@ x_55 = lean_ctor_get(x_54, 1); lean_inc(x_55); lean_dec(x_54); x_56 = lean_unsigned_to_nat(3u); -x_57 = l_Lean_Elab_Tactic_evalTacticCDot___lambda__1___closed__1; +x_57 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; lean_inc(x_1); -x_58 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1), 12, 3); +x_58 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1), 12, 3); lean_closure_set(x_58, 0, x_56); lean_closure_set(x_58, 1, x_57); lean_closure_set(x_58, 2, x_1); @@ -39997,9 +41207,9 @@ x_85 = lean_ctor_get(x_84, 1); lean_inc(x_85); lean_dec(x_84); x_86 = lean_unsigned_to_nat(3u); -x_87 = l_Lean_Elab_Tactic_evalTacticCDot___lambda__1___closed__1; +x_87 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; lean_inc(x_1); -x_88 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1), 12, 3); +x_88 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1), 12, 3); lean_closure_set(x_88, 0, x_86); lean_closure_set(x_88, 1, x_87); lean_closure_set(x_88, 2, x_1); @@ -40227,9 +41437,9 @@ x_127 = lean_ctor_get(x_126, 1); lean_inc(x_127); lean_dec(x_126); x_128 = lean_unsigned_to_nat(3u); -x_129 = l_Lean_Elab_Tactic_evalTacticCDot___lambda__1___closed__1; +x_129 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1; lean_inc(x_1); -x_130 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalTacticSeq1Indented___spec__1), 12, 3); +x_130 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1), 12, 3); lean_closure_set(x_130, 0, x_128); lean_closure_set(x_130, 1, x_129); lean_closure_set(x_130, 2, x_1); @@ -40435,9 +41645,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalCase___lambda__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_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalCase___lambda__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -40488,9 +41698,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalCase___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalCase___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -40793,9 +42003,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalCase__1___closed__ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalCase__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -40813,7 +42023,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalCase__1(lean_object _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Lean_Elab_Tactic_evalCase___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalCase__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalCase__1___closed__3; @@ -40825,7 +42035,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalCase_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(502u); +x_1 = lean_unsigned_to_nat(501u); x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -40837,7 +42047,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalCase_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(512u); +x_1 = lean_unsigned_to_nat(511u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -40865,7 +42075,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalCase_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(502u); +x_1 = lean_unsigned_to_nat(501u); x_2 = lean_unsigned_to_nat(4u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -40877,7 +42087,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalCase_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(502u); +x_1 = lean_unsigned_to_nat(501u); x_2 = lean_unsigned_to_nat(12u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -42365,9 +43575,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalCase_x27___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalCase_x27___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -42634,9 +43844,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalCase_x27__1___clos _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalCase_x27__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -42654,7 +43864,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalCase_x27__1(lean_ob _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Lean_Elab_Tactic_evalCase_x27___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalCase_x27__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalCase_x27__1___closed__3; @@ -42666,7 +43876,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalCase_x27_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(514u); +x_1 = lean_unsigned_to_nat(513u); x_2 = lean_unsigned_to_nat(26u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -42678,7 +43888,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalCase_x27_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(529u); +x_1 = lean_unsigned_to_nat(528u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -42706,7 +43916,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalCase_x27_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(514u); +x_1 = lean_unsigned_to_nat(513u); x_2 = lean_unsigned_to_nat(30u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -42718,7 +43928,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalCase_x27_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(514u); +x_1 = lean_unsigned_to_nat(513u); x_2 = lean_unsigned_to_nat(39u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -42776,9 +43986,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalRenameInaccessibles___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalRenameInaccessibles___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -42932,9 +44142,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRenameInaccessible _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRenameInaccessibles__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -42952,7 +44162,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRenameInaccessibles _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Lean_Elab_Tactic_evalRenameInaccessibles___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRenameInaccessibles__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalRenameInaccessibles__1___closed__3; @@ -42964,7 +44174,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRenameInaccessible _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(531u); +x_1 = lean_unsigned_to_nat(530u); x_2 = lean_unsigned_to_nat(28u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -42976,7 +44186,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRenameInaccessible _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(533u); +x_1 = lean_unsigned_to_nat(532u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -43004,7 +44214,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRenameInaccessible _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(531u); +x_1 = lean_unsigned_to_nat(530u); x_2 = lean_unsigned_to_nat(32u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -43016,7 +44226,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRenameInaccessible _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(531u); +x_1 = lean_unsigned_to_nat(530u); x_2 = lean_unsigned_to_nat(55u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -43595,9 +44805,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFirst__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalFirst__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -43615,9 +44825,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFirst__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalFirst__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -43635,7 +44845,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalFirst__1(lean_objec _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalFirst__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalFirst__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalFirst__1___closed__5; @@ -43647,7 +44857,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFirst_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(535u); +x_1 = lean_unsigned_to_nat(534u); x_2 = lean_unsigned_to_nat(34u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -43659,7 +44869,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFirst_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(544u); +x_1 = lean_unsigned_to_nat(543u); x_2 = lean_unsigned_to_nat(48u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -43687,7 +44897,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFirst_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(535u); +x_1 = lean_unsigned_to_nat(534u); x_2 = lean_unsigned_to_nat(38u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -43699,7 +44909,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFirst_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(535u); +x_1 = lean_unsigned_to_nat(534u); x_2 = lean_unsigned_to_nat(47u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -43774,9 +44984,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalFail___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalFail___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -44078,9 +45288,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFail__1___closed__ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalFail__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -44098,7 +45308,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalFail__1(lean_object _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Lean_Elab_Tactic_evalFail___closed__4; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalFail__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalFail__1___closed__3; @@ -44110,7 +45320,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFail_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(546u); +x_1 = lean_unsigned_to_nat(545u); x_2 = lean_unsigned_to_nat(25u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44122,7 +45332,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFail_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(552u); +x_1 = lean_unsigned_to_nat(551u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44150,7 +45360,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFail_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(546u); +x_1 = lean_unsigned_to_nat(545u); x_2 = lean_unsigned_to_nat(29u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44162,7 +45372,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalFail_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(546u); +x_1 = lean_unsigned_to_nat(545u); x_2 = lean_unsigned_to_nat(37u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44300,9 +45510,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace__1___clos _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -44320,9 +45530,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace__1___clos _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -44340,7 +45550,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace__1(lean_ob _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace__1___closed__5; @@ -44352,7 +45562,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(554u); +x_1 = lean_unsigned_to_nat(553u); x_2 = lean_unsigned_to_nat(41u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44364,7 +45574,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(557u); +x_1 = lean_unsigned_to_nat(556u); x_2 = lean_unsigned_to_nat(29u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44392,7 +45602,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(554u); +x_1 = lean_unsigned_to_nat(553u); x_2 = lean_unsigned_to_nat(45u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44404,7 +45614,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDbgTrace_declRange _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(554u); +x_1 = lean_unsigned_to_nat(553u); x_2 = lean_unsigned_to_nat(57u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44523,9 +45733,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSleep__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSleep__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -44543,9 +45753,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSleep__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSleep__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -44563,7 +45773,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSleep__1(lean_objec _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalSleep__1___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSleep__1___closed__4; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalSleep__1___closed__5; @@ -44575,7 +45785,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSleep_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(559u); +x_1 = lean_unsigned_to_nat(558u); x_2 = lean_unsigned_to_nat(24u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44587,7 +45797,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSleep_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(562u); +x_1 = lean_unsigned_to_nat(561u); x_2 = lean_unsigned_to_nat(35u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44615,7 +45825,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSleep_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(559u); +x_1 = lean_unsigned_to_nat(558u); x_2 = lean_unsigned_to_nat(28u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44627,7 +45837,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSleep_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(559u); +x_1 = lean_unsigned_to_nat(558u); x_2 = lean_unsigned_to_nat(37u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44889,9 +46099,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalLeft__1___closed__ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalLeft___rarg___lambda__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -44909,9 +46119,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalLeft__1___closed__ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalLeft__1___closed__2; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -44929,7 +46139,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalLeft__1(lean_object _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalLeft__1___closed__1; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalLeft__1___closed__3; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalLeft__1___closed__4; @@ -44941,7 +46151,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalLeft_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(564u); +x_1 = lean_unsigned_to_nat(563u); x_2 = lean_unsigned_to_nat(23u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44953,7 +46163,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalLeft_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(565u); +x_1 = lean_unsigned_to_nat(564u); x_2 = lean_unsigned_to_nat(61u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44981,7 +46191,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalLeft_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(564u); +x_1 = lean_unsigned_to_nat(563u); x_2 = lean_unsigned_to_nat(27u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -44993,7 +46203,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalLeft_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(564u); +x_1 = lean_unsigned_to_nat(563u); x_2 = lean_unsigned_to_nat(35u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -45245,9 +46455,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRight__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalRight___rarg___lambda__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -45265,9 +46475,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRight__1___closed_ _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRight__1___closed__2; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -45285,7 +46495,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRight__1(lean_objec _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l___regBuiltin_Lean_Elab_Tactic_evalRight__1___closed__1; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRight__1___closed__3; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalRight__1___closed__4; @@ -45297,7 +46507,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRight_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(567u); +x_1 = lean_unsigned_to_nat(566u); x_2 = lean_unsigned_to_nat(24u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -45309,7 +46519,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRight_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(568u); +x_1 = lean_unsigned_to_nat(567u); x_2 = lean_unsigned_to_nat(62u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -45337,7 +46547,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRight_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(567u); +x_1 = lean_unsigned_to_nat(566u); x_2 = lean_unsigned_to_nat(28u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -45349,7 +46559,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRight_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(567u); +x_1 = lean_unsigned_to_nat(566u); x_2 = lean_unsigned_to_nat(37u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -45560,8 +46770,8 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalReplace___lambda__2___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__5; x_4 = l_Lean_Elab_Tactic_evalReplace___lambda__2___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -45588,9 +46798,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalReplace___lambda__2___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_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalReplace___lambda__2___closed__4; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -45900,9 +47110,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalReplace___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalReplace___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -45920,8 +47130,8 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalReplace___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__5; x_4 = l_Lean_Elab_Tactic_evalReplace___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -46018,9 +47228,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalReplace__1___close _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalReplace__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -46038,7 +47248,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalReplace__1(lean_obj _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Lean_Elab_Tactic_evalReplace___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalReplace__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalReplace__1___closed__3; @@ -46050,7 +47260,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalReplace_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(570u); +x_1 = lean_unsigned_to_nat(569u); x_2 = lean_unsigned_to_nat(26u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -46062,7 +47272,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalReplace_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(582u); +x_1 = lean_unsigned_to_nat(581u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -46090,7 +47300,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalReplace_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(570u); +x_1 = lean_unsigned_to_nat(569u); x_2 = lean_unsigned_to_nat(30u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -46102,7 +47312,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalReplace_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(570u); +x_1 = lean_unsigned_to_nat(569u); x_2 = lean_unsigned_to_nat(41u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -46160,9 +47370,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalRunTac_unsafe__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_Elab_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalRunTac_unsafe__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -46238,9 +47448,9 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalRunTac___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l_Lean_Elab_Tactic_evalRunTac___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -46258,8 +47468,8 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalRunTac___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__5; x_4 = l_Lean_Elab_Tactic_evalRunTac___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -46347,8 +47557,8 @@ static lean_object* _init_l_Lean_Elab_Tactic_evalRunTac___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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2; x_3 = l_Lean_Elab_Tactic_evalIntro___closed__5; x_4 = l_Lean_Elab_Tactic_evalRunTac___closed__12; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -46418,7 +47628,7 @@ lean_ctor_set(x_20, 0, x_18); x_32 = l_Lean_Elab_Tactic_evalRunTac___closed__13; lean_inc(x_18); x_33 = l_Lean_Syntax_node2(x_18, x_32, x_20, x_15); -x_34 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_34 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; lean_inc(x_18); x_35 = l_Lean_Syntax_node1(x_18, x_34, x_33); x_36 = l_Lean_Elab_Tactic_evalRunTac___closed__4; @@ -46502,7 +47712,7 @@ lean_ctor_set(x_56, 1, x_55); x_57 = l_Lean_Elab_Tactic_evalRunTac___closed__13; lean_inc(x_18); x_58 = l_Lean_Syntax_node2(x_18, x_57, x_56, x_15); -x_59 = l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2; +x_59 = l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2; lean_inc(x_18); x_60 = l_Lean_Syntax_node1(x_18, x_59, x_58); x_61 = l_Lean_Elab_Tactic_evalRunTac___closed__4; @@ -46573,9 +47783,9 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRunTac__1___closed _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_Tactic_evalWithAnnotateState___closed__1; -x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; -x_3 = l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3; +x_1 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6; +x_3 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__3; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRunTac__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -46593,7 +47803,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalRunTac__1(lean_obje _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_Elab_Tactic_evalWithAnnotateState__1___closed__4; +x_2 = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9; x_3 = l_Lean_Elab_Tactic_evalRunTac___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalRunTac__1___closed__2; x_5 = l___regBuiltin_Lean_Elab_Tactic_evalRunTac__1___closed__3; @@ -46605,7 +47815,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRunTac_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(584u); +x_1 = lean_unsigned_to_nat(583u); x_2 = lean_unsigned_to_nat(25u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -46617,7 +47827,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRunTac_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(589u); +x_1 = lean_unsigned_to_nat(588u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -46645,7 +47855,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRunTac_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(584u); +x_1 = lean_unsigned_to_nat(583u); x_2 = lean_unsigned_to_nat(29u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -46657,7 +47867,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalRunTac_declRange__ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(584u); +x_1 = lean_unsigned_to_nat(583u); x_2 = lean_unsigned_to_nat(39u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -46756,16 +47966,12 @@ lean_dec_ref(res); res = initialize_Lean_Elab_Do(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__1 = _init_l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__1); +l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2 = _init_l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Elab_Term_withNarrowedArgTacticReuse___at_Lean_Elab_Tactic_evalWithAnnotateState___spec__1___lambda__1___closed__2); l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1 = _init_l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_evalWithAnnotateState___closed__1); -l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2 = _init_l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2(); -lean_mark_persistent(l_Lean_Elab_Tactic_evalWithAnnotateState___closed__2); -l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3 = _init_l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3(); -lean_mark_persistent(l_Lean_Elab_Tactic_evalWithAnnotateState___closed__3); -l_Lean_Elab_Tactic_evalWithAnnotateState___closed__4 = _init_l_Lean_Elab_Tactic_evalWithAnnotateState___closed__4(); -lean_mark_persistent(l_Lean_Elab_Tactic_evalWithAnnotateState___closed__4); -l_Lean_Elab_Tactic_evalWithAnnotateState___closed__5 = _init_l_Lean_Elab_Tactic_evalWithAnnotateState___closed__5(); -lean_mark_persistent(l_Lean_Elab_Tactic_evalWithAnnotateState___closed__5); l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1 = _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__1); l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2 = _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__2(); @@ -46776,6 +47982,16 @@ l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__4 = _init_l__ lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__4); l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__5 = _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__5(); lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__5); +l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6 = _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__6); +l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__7 = _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__7(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__7); +l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__8 = _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__8(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__8); +l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9 = _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__9); +l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__10 = _init_l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__10(); +lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1___closed__10); if (builtin) {res = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__1(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); @@ -46796,6 +48012,9 @@ lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declR if (builtin) {res = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState_declRange__1(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +}if (builtin) {res = l___regBuiltin_Lean_Elab_Tactic_evalWithAnnotateState__2(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); }l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__1 = _init_l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__1); l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__2 = _init_l___regBuiltin_Lean_Elab_Tactic_evalDone__1___closed__2(); @@ -46826,11 +48045,7 @@ lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1___clo if (builtin) {res = l___regBuiltin_Lean_Elab_Tactic_evalDone_declRange__1(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__1 = _init_l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__1(); -lean_mark_persistent(l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__1); -l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2 = _init_l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2(); -lean_mark_persistent(l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__1___closed__2); -l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__2___closed__1 = _init_l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__2___closed__1(); +}l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__2___closed__1 = _init_l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__2___closed__1); l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__7___closed__1 = _init_l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__7___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_evalSepTactics_goEven___lambda__7___closed__1); @@ -46896,6 +48111,9 @@ lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1___cl if (builtin) {res = l___regBuiltin_Lean_Elab_Tactic_evalParen_declRange__1(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +}if (builtin) {res = l___regBuiltin_Lean_Elab_Tactic_evalParen__2(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); }l_Lean_Elab_Tactic_isCheckpointableTactic___closed__1 = _init_l_Lean_Elab_Tactic_isCheckpointableTactic___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_isCheckpointableTactic___closed__1); l_Lean_Elab_Tactic_isCheckpointableTactic___closed__2 = _init_l_Lean_Elab_Tactic_isCheckpointableTactic___closed__2(); @@ -46984,9 +48202,7 @@ lean_dec_ref(res); }if (builtin) {res = l___regBuiltin_Lean_Elab_Tactic_evalTacticSeqBracketed__2(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l_Lean_Elab_Tactic_evalTacticCDot___lambda__1___closed__1 = _init_l_Lean_Elab_Tactic_evalTacticCDot___lambda__1___closed__1(); -lean_mark_persistent(l_Lean_Elab_Tactic_evalTacticCDot___lambda__1___closed__1); -l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__1 = _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__1(); +}l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__1 = _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__1); l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__2 = _init_l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__2(); lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalTacticCDot__1___closed__2); @@ -47049,6 +48265,9 @@ lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1___cl if (builtin) {res = l___regBuiltin_Lean_Elab_Tactic_evalFocus_declRange__1(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +}if (builtin) {res = l___regBuiltin_Lean_Elab_Tactic_evalFocus__2(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); }l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__1 = _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__1); l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__2 = _init_l___regBuiltin_Lean_Elab_Tactic_evalRotateLeft__1___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/Tactic/Calc.c b/stage0/stdlib/Lean/Elab/Tactic/Calc.c index 4993f35289b5..3b0ac8bc08dd 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Calc.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Calc.c @@ -26,6 +26,7 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalCalc__1___closed__9; lean_object* l_Lean_MVarId_assign___at_Lean_Elab_Tactic_closeMainGoal___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_Tactic_evalCalc___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___regBuiltin_Lean_Elab_Tactic_evalCalc__1___closed__4; +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_object* l_Lean_Elab_Tactic_getMainGoal(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addBuiltinDeclarationRanges(lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalCalc_declRange__1___closed__2; @@ -76,6 +77,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalCalc_declRange__1(l static lean_object* l_Lean_Elab_Tactic_evalCalc_throwFailed___closed__3; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalCalc_declRange__1___closed__7; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalCalc__1___closed__3; +lean_object* l_Lean_Expr_consumeMData(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalCalc___lambda__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_Elab_Tactic_replaceMainGoal(lean_object*, 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_evalCalc_throwFailed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -240,236 +242,242 @@ lean_inc(x_12); x_14 = lean_infer_type(x_12, x_6, x_7, x_8, x_9, x_13); if (lean_obj_tag(x_14) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; +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_14, 1); lean_inc(x_16); lean_dec(x_14); +x_17 = l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_15, x_4, x_5, 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); +lean_inc(x_19); +lean_dec(x_17); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_2); -lean_inc(x_15); -x_17 = l_Lean_Meta_isExprDefEq(x_15, x_2, x_6, x_7, x_8, x_9, 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_Tactic_evalCalc___lambda__2___closed__1; -x_21 = lean_unbox(x_18); -lean_dec(x_18); -if (x_21 == 0) +x_20 = l_Lean_Meta_isExprDefEq(x_18, x_2, x_6, x_7, x_8, x_9, x_19); +if (lean_obj_tag(x_20) == 0) { -lean_object* x_22; lean_object* x_23; -lean_inc(x_15); -x_22 = l_Lean_Elab_Term_getCalcRelation_x3f(x_15, x_6, x_7, x_8, x_9, x_19); -x_23 = lean_ctor_get(x_22, 0); -lean_inc(x_23); -if (lean_obj_tag(x_23) == 0) +lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t 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 = l_Lean_Elab_Tactic_evalCalc___lambda__2___closed__1; +x_24 = lean_unbox(x_21); +lean_dec(x_21); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; +lean_inc(x_18); +x_25 = l_Lean_Elab_Term_getCalcRelation_x3f(x_18, x_6, x_7, x_8, x_9, x_22); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +if (lean_obj_tag(x_26) == 0) { -lean_object* x_24; lean_object* x_25; uint8_t x_26; +lean_object* x_27; lean_object* x_28; uint8_t x_29; lean_dec(x_12); lean_dec(x_3); -x_24 = lean_ctor_get(x_22, 1); -lean_inc(x_24); -lean_dec(x_22); -x_25 = l_Lean_Elab_Tactic_evalCalc_throwFailed(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_24); +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); +lean_dec(x_25); +x_28 = l_Lean_Elab_Tactic_evalCalc_throwFailed(x_2, x_18, 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); -x_26 = !lean_is_exclusive(x_25); -if (x_26 == 0) +x_29 = !lean_is_exclusive(x_28); +if (x_29 == 0) { -return x_25; +return x_28; } else { -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; +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(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_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_23, 0); -lean_inc(x_30); -lean_dec(x_23); -x_31 = lean_ctor_get(x_30, 1); -lean_inc(x_31); -lean_dec(x_30); -x_32 = lean_ctor_get(x_22, 1); -lean_inc(x_32); -lean_dec(x_22); -x_33 = lean_ctor_get(x_31, 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; +x_33 = lean_ctor_get(x_26, 0); lean_inc(x_33); -lean_dec(x_31); -lean_inc(x_2); -x_34 = l_Lean_Elab_Term_getCalcRelation_x3f(x_2, x_6, x_7, x_8, x_9, x_32); -x_35 = lean_ctor_get(x_34, 0); -lean_inc(x_35); -if (lean_obj_tag(x_35) == 0) -{ -lean_object* x_36; lean_object* x_37; uint8_t x_38; +lean_dec(x_26); +x_34 = lean_ctor_get(x_33, 1); +lean_inc(x_34); lean_dec(x_33); -lean_dec(x_12); -lean_dec(x_3); +x_35 = lean_ctor_get(x_25, 1); +lean_inc(x_35); +lean_dec(x_25); x_36 = lean_ctor_get(x_34, 1); lean_inc(x_36); lean_dec(x_34); -x_37 = l_Lean_Elab_Tactic_evalCalc_throwFailed(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_36); +lean_inc(x_2); +x_37 = l_Lean_Elab_Term_getCalcRelation_x3f(x_2, x_6, x_7, x_8, x_9, x_35); +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +lean_dec(x_36); +lean_dec(x_12); +lean_dec(x_3); +x_39 = lean_ctor_get(x_37, 1); +lean_inc(x_39); +lean_dec(x_37); +x_40 = l_Lean_Elab_Tactic_evalCalc_throwFailed(x_2, x_18, 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); lean_dec(x_5); -x_38 = !lean_is_exclusive(x_37); -if (x_38 == 0) +x_41 = !lean_is_exclusive(x_40); +if (x_41 == 0) { -return x_37; +return x_40; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_39 = lean_ctor_get(x_37, 0); -x_40 = lean_ctor_get(x_37, 1); -lean_inc(x_40); -lean_inc(x_39); -lean_dec(x_37); -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_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(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_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_42 = lean_ctor_get(x_35, 0); -lean_inc(x_42); -lean_dec(x_35); -x_43 = lean_ctor_get(x_42, 1); -lean_inc(x_43); -x_44 = lean_ctor_get(x_34, 1); -lean_inc(x_44); -lean_dec(x_34); -x_45 = lean_ctor_get(x_42, 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; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_45 = lean_ctor_get(x_38, 0); lean_inc(x_45); -lean_dec(x_42); -x_46 = lean_ctor_get(x_43, 1); +lean_dec(x_38); +x_46 = lean_ctor_get(x_45, 1); lean_inc(x_46); -lean_dec(x_43); -x_47 = l_Lean_mkAppB(x_45, x_33, x_46); -x_48 = l_Lean_Elab_Tactic_evalCalc___lambda__2___closed__4; -x_49 = l_Lean_Name_append(x_3, x_48); -lean_inc(x_6); +x_47 = lean_ctor_get(x_37, 1); lean_inc(x_47); -x_50 = l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(x_47, x_49, x_6, x_7, x_8, x_9, x_44); -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_9); -lean_inc(x_8); -lean_inc(x_7); +lean_dec(x_37); +x_48 = lean_ctor_get(x_45, 0); +lean_inc(x_48); +lean_dec(x_45); +x_49 = lean_ctor_get(x_46, 1); +lean_inc(x_49); +lean_dec(x_46); +x_50 = l_Lean_mkAppB(x_48, x_36, x_49); +x_51 = l_Lean_Elab_Tactic_evalCalc___lambda__2___closed__4; +x_52 = l_Lean_Name_append(x_3, x_51); lean_inc(x_6); -lean_inc(x_15); -x_53 = l_Lean_Elab_Term_mkCalcTrans(x_12, x_15, x_51, x_47, x_6, x_7, x_8, x_9, 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; lean_object* x_58; +lean_inc(x_50); +x_53 = l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(x_50, x_52, x_6, x_7, x_8, x_9, x_47); 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_ctor_get(x_54, 0); -lean_inc(x_56); -x_57 = lean_ctor_get(x_54, 1); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_18); +x_56 = l_Lean_Elab_Term_mkCalcTrans(x_12, x_18, x_54, x_50, x_6, x_7, x_8, x_9, x_55); +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; +x_57 = lean_ctor_get(x_56, 0); lean_inc(x_57); -lean_dec(x_54); +x_58 = lean_ctor_get(x_56, 1); +lean_inc(x_58); +lean_dec(x_56); +x_59 = lean_ctor_get(x_57, 0); +lean_inc(x_59); +x_60 = lean_ctor_get(x_57, 1); +lean_inc(x_60); +lean_dec(x_57); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_2); -lean_inc(x_57); -x_58 = l_Lean_Meta_isExprDefEq(x_57, x_2, x_6, x_7, x_8, x_9, x_55); -if (lean_obj_tag(x_58) == 0) +lean_inc(x_60); +x_61 = l_Lean_Meta_isExprDefEq(x_60, x_2, x_6, x_7, x_8, x_9, x_58); +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_59; uint8_t x_60; -x_59 = lean_ctor_get(x_58, 0); -lean_inc(x_59); -x_60 = lean_unbox(x_59); +lean_object* x_64; lean_object* x_65; uint8_t x_66; +lean_dec(x_60); lean_dec(x_59); -if (x_60 == 0) -{ -lean_object* x_61; lean_object* x_62; uint8_t x_63; -lean_dec(x_57); -lean_dec(x_56); -x_61 = lean_ctor_get(x_58, 1); -lean_inc(x_61); -lean_dec(x_58); -x_62 = l_Lean_Elab_Tactic_evalCalc_throwFailed(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_61); +x_64 = lean_ctor_get(x_61, 1); +lean_inc(x_64); +lean_dec(x_61); +x_65 = l_Lean_Elab_Tactic_evalCalc_throwFailed(x_2, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_64); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -x_63 = !lean_is_exclusive(x_62); -if (x_63 == 0) +x_66 = !lean_is_exclusive(x_65); +if (x_66 == 0) { -return x_62; +return x_65; } else { -lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_64 = lean_ctor_get(x_62, 0); -x_65 = lean_ctor_get(x_62, 1); -lean_inc(x_65); -lean_inc(x_64); -lean_dec(x_62); -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_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; } } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_15); +lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_18); lean_dec(x_2); -x_67 = lean_ctor_get(x_58, 1); -lean_inc(x_67); -lean_dec(x_58); -x_68 = lean_box(0); -x_69 = lean_apply_10(x_20, x_56, x_57, x_68, x_4, x_5, x_6, x_7, x_8, x_9, x_67); -return x_69; +x_70 = lean_ctor_get(x_61, 1); +lean_inc(x_70); +lean_dec(x_61); +x_71 = lean_box(0); +x_72 = lean_apply_10(x_23, x_59, x_60, x_71, x_4, x_5, x_6, x_7, x_8, x_9, x_70); +return x_72; } } else { -uint8_t x_70; -lean_dec(x_57); -lean_dec(x_56); -lean_dec(x_15); +uint8_t x_73; +lean_dec(x_60); +lean_dec(x_59); +lean_dec(x_18); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -477,30 +485,30 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); -x_70 = !lean_is_exclusive(x_58); -if (x_70 == 0) +x_73 = !lean_is_exclusive(x_61); +if (x_73 == 0) { -return x_58; +return x_61; } else { -lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_71 = lean_ctor_get(x_58, 0); -x_72 = lean_ctor_get(x_58, 1); -lean_inc(x_72); -lean_inc(x_71); -lean_dec(x_58); -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; +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_61, 0); +x_75 = lean_ctor_get(x_61, 1); +lean_inc(x_75); +lean_inc(x_74); +lean_dec(x_61); +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_74; -lean_dec(x_15); +uint8_t x_77; +lean_dec(x_18); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -508,23 +516,23 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); -x_74 = !lean_is_exclusive(x_53); -if (x_74 == 0) +x_77 = !lean_is_exclusive(x_56); +if (x_77 == 0) { -return x_53; +return x_56; } 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; +lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_78 = lean_ctor_get(x_56, 0); +x_79 = lean_ctor_get(x_56, 1); +lean_inc(x_79); +lean_inc(x_78); +lean_dec(x_56); +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; } } } @@ -532,18 +540,18 @@ return x_77; } else { -lean_object* x_78; lean_object* x_79; +lean_object* x_81; lean_object* x_82; lean_dec(x_3); lean_dec(x_2); -x_78 = lean_box(0); -x_79 = lean_apply_10(x_20, x_12, x_15, x_78, x_4, x_5, x_6, x_7, x_8, x_9, x_19); -return x_79; +x_81 = lean_box(0); +x_82 = lean_apply_10(x_23, x_12, x_18, x_81, x_4, x_5, x_6, x_7, x_8, x_9, x_22); +return x_82; } } else { -uint8_t x_80; -lean_dec(x_15); +uint8_t x_83; +lean_dec(x_18); lean_dec(x_12); lean_dec(x_9); lean_dec(x_8); @@ -553,29 +561,29 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_80 = !lean_is_exclusive(x_17); -if (x_80 == 0) +x_83 = !lean_is_exclusive(x_20); +if (x_83 == 0) { -return x_17; +return x_20; } else { -lean_object* x_81; lean_object* x_82; lean_object* x_83; -x_81 = lean_ctor_get(x_17, 0); -x_82 = lean_ctor_get(x_17, 1); -lean_inc(x_82); -lean_inc(x_81); -lean_dec(x_17); -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; +lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_84 = lean_ctor_get(x_20, 0); +x_85 = lean_ctor_get(x_20, 1); +lean_inc(x_85); +lean_inc(x_84); +lean_dec(x_20); +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_84; +uint8_t x_87; lean_dec(x_12); lean_dec(x_9); lean_dec(x_8); @@ -585,29 +593,29 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_84 = !lean_is_exclusive(x_14); -if (x_84 == 0) +x_87 = !lean_is_exclusive(x_14); +if (x_87 == 0) { return x_14; } else { -lean_object* x_85; lean_object* x_86; lean_object* x_87; -x_85 = lean_ctor_get(x_14, 0); -x_86 = lean_ctor_get(x_14, 1); -lean_inc(x_86); -lean_inc(x_85); +lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_88 = lean_ctor_get(x_14, 0); +x_89 = lean_ctor_get(x_14, 1); +lean_inc(x_89); +lean_inc(x_88); lean_dec(x_14); -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; +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_88; +uint8_t x_91; lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -616,23 +624,23 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_88 = !lean_is_exclusive(x_11); -if (x_88 == 0) +x_91 = !lean_is_exclusive(x_11); +if (x_91 == 0) { return x_11; } else { -lean_object* x_89; lean_object* x_90; lean_object* x_91; -x_89 = lean_ctor_get(x_11, 0); -x_90 = lean_ctor_get(x_11, 1); -lean_inc(x_90); -lean_inc(x_89); +lean_object* x_92; lean_object* x_93; lean_object* x_94; +x_92 = lean_ctor_get(x_11, 0); +x_93 = lean_ctor_get(x_11, 1); +lean_inc(x_93); +lean_inc(x_92); lean_dec(x_11); -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_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; } } } @@ -652,12 +660,14 @@ lean_inc(x_2); x_11 = l_Lean_Elab_Tactic_getMainTarget(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; lean_object* x_14; +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_inc(x_13); lean_dec(x_11); +x_14 = l_Lean_Expr_consumeMData(x_12); +lean_dec(x_12); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); @@ -666,27 +676,27 @@ lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); -x_14 = l_Lean_Elab_Tactic_getMainTag(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); -if (lean_obj_tag(x_14) == 0) +x_15 = l_Lean_Elab_Tactic_getMainTag(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_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_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_15, 0); lean_inc(x_16); -lean_dec(x_14); -x_17 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_evalCalc___lambda__2), 10, 3); -lean_closure_set(x_17, 0, x_1); -lean_closure_set(x_17, 1, x_12); -lean_closure_set(x_17, 2, x_15); -x_18 = 0; -x_19 = l_Lean_Elab_Tactic_runTermElab___rarg(x_17, x_18, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_16); -return x_19; +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_evalCalc___lambda__2), 10, 3); +lean_closure_set(x_18, 0, x_1); +lean_closure_set(x_18, 1, x_14); +lean_closure_set(x_18, 2, x_16); +x_19 = 0; +x_20 = l_Lean_Elab_Tactic_runTermElab___rarg(x_18, x_19, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_17); +return x_20; } else { -uint8_t x_20; -lean_dec(x_12); +uint8_t x_21; +lean_dec(x_14); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -696,29 +706,29 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_20 = !lean_is_exclusive(x_14); -if (x_20 == 0) +x_21 = !lean_is_exclusive(x_15); +if (x_21 == 0) { -return x_14; +return x_15; } 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_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_15, 0); +x_23 = lean_ctor_get(x_15, 1); +lean_inc(x_23); 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; +lean_dec(x_15); +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 { -uint8_t x_24; +uint8_t x_25; lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -728,23 +738,23 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_24 = !lean_is_exclusive(x_11); -if (x_24 == 0) +x_25 = !lean_is_exclusive(x_11); +if (x_25 == 0) { return x_11; } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_11, 0); -x_26 = lean_ctor_get(x_11, 1); +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_11, 0); +x_27 = lean_ctor_get(x_11, 1); +lean_inc(x_27); lean_inc(x_26); -lean_inc(x_25); lean_dec(x_11); -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; +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; } } } diff --git a/stage0/stdlib/Lean/Elab/Tactic/Ext.c b/stage0/stdlib/Lean/Elab/Tactic/Ext.c index d632b0f3b09f..8f02a70de5d0 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Ext.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Ext.c @@ -160,7 +160,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Ext_tryIntros___at_Lean_Elab_Tactic_ static lean_object* l_Lean_Elab_Tactic_Ext_initFn____x40_Lean_Elab_Tactic_Ext___hyg_614____lambda__7___closed__11; lean_object* l_ReaderT_read___at_Lean_Macro_instMonadRefMacroM___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Ext_instInhabitedExtTheorem; -lean_object* l_Lean_mkConstWithLevelParams___at_Lean_Meta_registerCoercion___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_Ext_evalApplyExtTheorem_docString__1___closed__1; LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Elab_Tactic_Ext_elabExtType___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addBuiltinDeclarationRanges(lean_object*, lean_object*, lean_object*); @@ -406,6 +405,7 @@ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_E lean_object* lean_usize_to_nat(size_t); static lean_object* l___regBuiltin_Lean_Elab_Tactic_Ext_evalApplyExtTheorem__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Ext_withExt1___at_Lean_Elab_Tactic_Ext_withExtN___spec__3___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_mkConstWithLevelParams___at_Lean_Meta_mkSimpCongrTheorem___spec__1(lean_object*, lean_object*, lean_object*, 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_object* l_Lean_MessageData_ofExpr(lean_object*); @@ -9221,7 +9221,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Ext_withExtHyps___rarg___lambda__5(l { lean_object* x_10; lean_inc(x_1); -x_10 = l_Lean_mkConstWithLevelParams___at_Lean_Meta_registerCoercion___spec__1(x_1, x_5, x_6, x_7, x_8, x_9); +x_10 = l_Lean_mkConstWithLevelParams___at_Lean_Meta_mkSimpCongrTheorem___spec__1(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; diff --git a/stage0/stdlib/Lean/Elab/Tactic/Omega/Frontend.c b/stage0/stdlib/Lean/Elab/Tactic/Omega/Frontend.c index 1587ca7aa188..e70ac74e0429 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Omega/Frontend.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Omega/Frontend.c @@ -15,77 +15,92 @@ extern "C" { #endif LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_Omega_omegaTactic___spec__3___lambda__1___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_Tactic_Omega_formatErrorMessage_prettyCoeffs___spec__1(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_disjunctions___default; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__34___boxed(lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_addFact___lambda__15___closed__1; lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__6___closed__1; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__13; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__22(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*); static lean_object* l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq___closed__3; lean_object* l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___boxed(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_Omega_asLinearComboImpl_handleFinVal___closed__3; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__50; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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*); static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage___closed__3; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__2; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__10; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__13; static lean_object* l_Lean_Elab_Tactic_Omega_evalOmega___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality___closed__4; lean_object* l_Lean_mkNatLit(lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__7; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__41; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__35; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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*); static lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__4___closed__6; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__5; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__4; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__3(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_mapM_loop___at_Lean_Elab_Tactic_Omega_omegaTactic___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof(lean_object*, lean_object*, lean_object*, 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_Omega_asLinearComboImpl___lambda__10___closed__16; static lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega__1___closed__2; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__66; LEAN_EXPORT lean_object* l_List_foldlM___at_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality___spec__1(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__20; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__17; 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_Tactic_Omega_MetaProblem_pushNot___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__45; static lean_object* l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq___closed__7; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___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_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__6; 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_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__8___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo___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_Omega_asLinearCombo___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_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___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_Tactic_Omega_MetaProblem_addFact___lambda__21___closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_problem___default; static lean_object* l_Lean_Elab_Tactic_Omega_succ_x3f___closed__5; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__56; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__13; static lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__1___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyCoeffs___boxed(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__4; static lean_object* l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_Omega_lookup___spec__14(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl(lean_object*, 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_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9(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*); static lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__4___closed__3; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__5(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_Tactic_Omega_asLinearComboImpl___lambda__7(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*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7(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*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___closed__1; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_cases_u2082(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4(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_Omega_MetaProblem_pushNot___lambda__9___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__6; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__13___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__12___closed__2; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___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_Omega_asLinearComboImpl___lambda__10___closed__20; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___closed__7; static lean_object* l_Lean_Elab_Tactic_Omega_cases_u2082___closed__3; LEAN_EXPORT lean_object* l_List_foldlM___at_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality___spec__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__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_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3(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*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__20___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_problem___default___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___closed__13; @@ -101,19 +116,19 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_bvOmegaSimpExtension; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyConstraints___boxed(lean_object*, lean_object*); lean_object* l_Lean_LocalContext_findFromUserName_x3f(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___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_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__28; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__49; lean_object* l_Lean_Meta_mkEqSymm(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_HashSet_insert___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__30; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality___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_Elab_Term_synthesizeSyntheticMVars(uint8_t, uint8_t, 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_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__15___closed__1; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__22; static lean_object* l_Lean_Elab_Tactic_Omega_succ_x3f___closed__4; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaTactic___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_Omega_omegaImpl___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*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__44; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_Omega_omegaTactic___spec__5___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_Omega_asLinearComboImpl___lambda__8___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__13; @@ -127,7 +142,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaTactic___lambda__1(lean_o uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRange__1(lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality___closed__5; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__40; uint8_t l_Lean_Expr_isApp(lean_object*); lean_object* l_Lean_Expr_lit___override(lean_object*); lean_object* l_Lean_Elab_Term_elabTermEnsuringType(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -138,6 +152,7 @@ lean_object* l_Lean_Elab_Tactic_Omega_withoutModifyingState___rarg(lean_object*, lean_object* l_Lean_MessageData_ofList(lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_problem___default___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_inScope(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__2; lean_object* lean_array_push(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__28; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__20(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -146,79 +161,82 @@ static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___c static lean_object* l_panic___at_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___spec__1___closed__1; static lean_object* l_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyAtoms___spec__2___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__7; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__37; lean_object* l_Lean_mkHashSetImp___rarg(lean_object*); lean_object* l_Lean_Elab_Tactic_Omega_OmegaM_run___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_Omega_omegaTactic___spec__2___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_Omega_MetaProblem_addFact___lambda__2(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*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__2; lean_object* lean_mk_array(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_varNameOf___boxed(lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_instantiateMVars___at_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__9; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__9; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___closed__12; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_Omega_splitDisjunction___spec__1(lean_object*, 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_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__6; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__15; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_problem___default___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___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_Tactic_Omega_MetaProblem_pushNot___lambda__12___closed__1; lean_object* l___private_Init_GetElem_0__outOfBounds___rarg(lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__54; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__12; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_evalOmega(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_Omega_MetaProblem_addFact___lambda__1___closed__5; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__3; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__9; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__15; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___boxed(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_Omega_MetaProblem_addFact___lambda__33___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_varNames___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__8; static lean_object* l_panic___at_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___spec__1___closed__5; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__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_Elab_Tactic_Omega_MetaProblem_addFact___lambda__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_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_evalOmega___closed__3; lean_object* lean_array_fget(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__5; lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__8; LEAN_EXPORT lean_object* l_List_foldlM___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__11___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_Omega_asLinearComboImpl___lambda__6___closed__5; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3(lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__20; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6(lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_pushNot___lambda__10___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___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_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__53; lean_object* l_Lean_Elab_Tactic_getMainGoal(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_Omega_MetaProblem_addIntEquality___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_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29(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*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__34; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage___closed__2; lean_object* l_Lean_Expr_fvarId_x21(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega__1___closed__5; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__12; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__45; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__27; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__5___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_Omega_asLinearComboImpl___lambda__10(lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_addIntInequality___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___lambda__2___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omega(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage___closed__6; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__68; static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__29; lean_object* l_Lean_addBuiltinDeclarationRanges(lean_object*, lean_object*, lean_object*); static lean_object* l_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyCoeffs___spec__2___closed__4; static lean_object* l_Lean_Elab_Tactic_Omega_omegaTactic___lambda__2___closed__3; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__62; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__4; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__6; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__1; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__35; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_inScope___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyConstraint(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq___closed__1; uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_pushNot___lambda__15___closed__2; lean_object* l_Lean_Name_mkStr5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_problem___default___lambda__1(lean_object*); @@ -227,65 +245,67 @@ static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___ static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__4; lean_object* l_Lean_HashSetImp_insert___at_Lean_CollectLevelParams_visitExpr___spec__3(lean_object*, lean_object*); lean_object* l_Lean_stringToMessageData(lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__5; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__17; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__4___closed__8; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_Omega_omegaTactic___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRange__1___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__5; lean_object* l_Lean_mkApp4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__15; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_Elab_Tactic_Omega_splitDisjunction___lambda__5(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaTactic___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_Omega_asLinearComboImpl_handleNatCast___closed__37; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__5; uint8_t lean_string_dec_eq(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__45; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality___lambda__1(lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_addFact___lambda__1___closed__33; 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_Tactic_Omega_MetaProblem_addIntInequality___closed__2; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__1; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__20; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_addFact___lambda__30(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*); uint8_t lean_int_dec_le(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__3; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__7___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_Omega_MetaProblem_addFact___lambda__35___closed__8; static lean_object* l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__6(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_Omega_MetaProblem_pushNot___lambda__22___closed__7; static lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__4___closed__4; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__39; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__24; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_evalOmega___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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__2; lean_object* lean_string_push(lean_object*, uint32_t); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__2; lean_object* l_Lean_Level_ofNat(lean_object*); lean_object* l_Lean_Expr_appArg_x21(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_processFacts___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_Omega_MetaProblem_addFact___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_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___closed__4; static lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__3___closed__2; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__29; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___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_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_withSynthesizeImp___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_HashMap_insert___at_Lean_Elab_Tactic_Omega_asLinearCombo___spec__4(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_pushNot___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_Elab_Tactic_Omega_MetaProblem_addIntInequality(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*); uint8_t l_Lean_Expr_hasMVar(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27(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_EXPORT lean_object* l___private_Lean_Elab_InfoTree_Main_0__Lean_Elab_withSavedPartialInfoContext___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___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_Elab_Tactic_Omega_omegaImpl___lambda__2(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_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega__1(lean_object*); static lean_object* l_panic___at_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___spec__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_varNames___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__7; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___lambda__2(lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_addIntEquality___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__7___boxed(lean_object**); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__1; LEAN_EXPORT lean_object* l_List_foldl___at_Lean_Elab_Tactic_Omega_formatErrorMessage_mentioned___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -298,15 +318,15 @@ static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___ static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__42; static lean_object* l_Lean_Elab_Tactic_Omega_cases_u2082___closed__6; lean_object* l_List_appendTR___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8(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*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega__1___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__10; size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Lean_resolveGlobalName___at_Lean_Elab_Tactic_Omega_formatErrorMessage_inScope___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__61; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__19; LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_asLinearCombo___spec__3(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__36; static lean_object* l_Lean_Elab_Tactic_Omega_elabOmegaConfig___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__3; static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage___closed__4; lean_object* l_Lean_Elab_Tactic_Omega_Problem_elimination(lean_object*, lean_object*, 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_Omega_elabOmegaConfig___closed__8; @@ -317,23 +337,25 @@ static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality___closed static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__16; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_mentioned(lean_object*, lean_object*, 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_Omega_elabOmegaConfig___closed__11; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__1___boxed(lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__40; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__2; uint8_t l_instDecidableNot___rarg(uint8_t); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_elabOmegaConfig___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__28; static lean_object* l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq___closed__8; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_Omega_omegaTactic___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___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_Tactic_Omega_mkEvalRflProof___closed__17; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_succ_x3f(lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; lean_object* lean_st_ref_take(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__31; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__4(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*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_withoutModifyingStateWithInfoAndMessages___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___boxed(lean_object*, lean_object*, lean_object*, 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_Omega_formatErrorMessage_inScope___closed__1; uint8_t lean_expr_eqv(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; @@ -342,7 +364,7 @@ static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__14___ static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__36; static lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__1___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__34; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___boxed(lean_object**); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__16___closed__2; static lean_object* l_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyAtoms___spec__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -351,58 +373,70 @@ static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__18___ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyAtoms(lean_object*, lean_object*, lean_object*); lean_object* lean_nat_to_int(lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__6; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__21; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___closed__5; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16(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*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__18; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20(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* l_StateRefT_x27_lift___rarg___boxed(lean_object*, lean_object*); lean_object* lean_nat_div(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_omegaTactic___lambda__2___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__3; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__3; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__64; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_mentioned___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_Omega_MetaProblem_addFact___lambda__23(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_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_Omega_omegaTactic___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__10; static lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRange__1___closed__6; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyAtoms___spec__2___closed__4; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__24; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__14___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_forInUnsafe_loop___at_Lean_Elab_Tactic_Omega_omegaTactic___spec__6(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_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__5; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality___lambda__1___closed__1; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__12; LEAN_EXPORT lean_object* l___private_Lean_Elab_InfoTree_Main_0__Lean_Elab_withSavedPartialInfoContext___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___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_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__10(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_HashMap_toList___at_Lean_Elab_Tactic_Omega_Problem_instToString___spec__1(lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__14; static lean_object* l_panic___at_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___spec__1___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__2; lean_object* l_Lean_Omega_LinearCombo_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_InfoTree_Main_0__Lean_Elab_withSavedPartialInfoContext___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__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_Tactic_Omega_asLinearComboImpl___lambda__8___closed__26; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__12; LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapM___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__8(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_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__14; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__4___closed__2; static lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_varNames___spec__2___closed__1; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__6; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__2___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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*); static lean_object* l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq___closed__5; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__35; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31(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*); static lean_object* l_Lean_Elab_Tactic_Omega_omegaTactic___lambda__2___closed__2; lean_object* l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyCoeffs___spec__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_getLocalHyps___at_Lean_Elab_Tactic_Omega_omegaTactic___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__13; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__24; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_Omega_omegaTactic___spec__5(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT uint8_t l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__1(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__1(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* l_Lean_MessageData_ofFormat(lean_object*); lean_object* l_Lean_PersistentArray_append___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5(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_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_varNames___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Tactic_Omega_groundNat_x3f(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_Omega_splitDisjunction___lambda__6___closed__4; LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapMAux___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__9(lean_object*, 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_Omega_omegaImpl___lambda__1(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*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__18; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__7; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_Omega_lookup___spec__3(lean_object*, 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_Elab_Tactic_Omega_MetaProblem_addFact___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*); uint8_t l_List_elem___at_Lean_CollectLevelParams_visitExpr___spec__2(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__26; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -411,8 +445,9 @@ static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___c static lean_object* l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq___closed__10; lean_object* l_Lean_Meta_getLevel(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19(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*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality___lambda__2(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*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__9; static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyConstraint___closed__4; lean_object* l_Lean_Elab_Tactic_withMainContext___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -420,59 +455,62 @@ static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___c static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__19___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_evalOmega___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_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyCoeffs___spec__2___closed__3; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__67; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__25; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__5___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapM___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__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_Elab_Tactic_Omega_mkEvalRflProof___closed__21; lean_object* lean_st_ref_get(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__27; lean_object* l_Lean_Meta_mkEqTrans(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__34(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*); +static lean_object* l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__4; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_Omega_cases_u2082___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__5; 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_Tactic_Omega_MetaProblem_addFact___lambda__25___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, 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_Omega_splitDisjunction___boxed(lean_object*, lean_object*, lean_object*, 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_Omega_asLinearComboImpl___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_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_Omega_omegaTactic___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*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__57; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__58; -static lean_object* l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__3; uint8_t l_List_isEmpty___rarg(lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality___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* lean_st_mk_ref(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__16; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__26; lean_object* l_Lean_Meta_mkDecideProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__34; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality___lambda__2(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*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearCombo___closed__1; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__11; LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyConstraints___spec__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_formatErrorMessage_mentioned___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__4; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__7___closed__1; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__59; lean_object* lean_array_to_list(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__23; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__37; lean_object* l_Lean_Expr_appFnCleanup(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MVarId_assign___at_Lean_Elab_Tactic_Omega_omegaImpl___spec__1(lean_object*, lean_object*, lean_object*, 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_Omega_asLinearComboImpl___lambda__9___closed__1; 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_Omega_MetaProblem_pushNot___lambda__7___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879_(lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__30; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq___boxed(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_Omega_MetaProblem_pushNot___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__6___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearCombo___lambda__2(lean_object*, 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_Elab_Tactic_Omega_omegaImpl___lambda__6(lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_addFact___lambda__1___closed__31; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage___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_Tactic_Omega_MetaProblem_pushNot___lambda__19___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_levelZero; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___lambda__2___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__13; static lean_object* l_Lean_Elab_Tactic_Omega_elabOmegaConfig___closed__5; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__47; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__40; -static lean_object* l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__3___closed__1; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__1; extern lean_object* l_Lean_instInhabitedExpr; LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_asLinearCombo___spec__3___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* l_Lean_Elab_InfoTree_substitute(lean_object*, lean_object*); @@ -480,9 +518,8 @@ LEAN_EXPORT lean_object* l_Lean_AssocList_find_x3f___at_Lean_Elab_Tactic_Omega_a static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__3; LEAN_EXPORT lean_object* l_List_foldl___at_Lean_Elab_Tactic_Omega_formatErrorMessage_mentioned___spec__1___boxed(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__38; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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*); uint64_t l_Lean_Expr_hash(lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__5; lean_object* l_List_foldl___at_String_join___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_varNames___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_thunk_get_own(lean_object*); @@ -490,18 +527,22 @@ static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__14___ static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__20; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___closed__14; lean_object* l_List_lengthTRAux___rarg(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__43; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearCombo___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_Elab_Tactic_Omega_asLinearComboImpl___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_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__30; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__3; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_trivial; lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_MVarId_elabFalseOrByContra___spec__1___rarg(lean_object*); extern lean_object* l_String_instInhabited; static lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__6___closed__2; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__2; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); static lean_object* l_panic___at_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___spec__1___closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__6___boxed(lean_object**); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__39; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__1; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__41; static lean_object* l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq___closed__2; @@ -509,6 +550,8 @@ static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage___closed__7; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__7; lean_object* l_Lean_Elab_Tactic_Omega_mkEqReflWithExpectedType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_elabOmegaConfig(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaTactic___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkOptionalNode(lean_object*); lean_object* l_Lean_Elab_Tactic_Omega_Problem_addEquality(lean_object*, lean_object*, lean_object*, lean_object*); @@ -516,38 +559,44 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___la LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___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_Lean_Elab_Tactic_Omega_omegaImpl___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_AssocList_contains___at_Lean_Elab_Tactic_Omega_asLinearCombo___spec__5___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__2(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__2(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* l_Lean_Syntax_getArg(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1(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*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__45; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Syntax_matchesNull(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__2___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__35; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__9___closed__2; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__25; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__5___closed__2; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__33; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__11; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_processFacts(lean_object*, 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_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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*); static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyCoeffs___spec__2(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__14; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__42; lean_object* l_Lean_Elab_Tactic_Omega_atomsCoeffs___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__3___boxed(lean_object**); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__50; static lean_object* l_Lean_Elab_Tactic_Omega_elabOmegaConfig___closed__9; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__8; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__51; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__1; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__2; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__44; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9(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*); extern lean_object* l_Lean_Meta_instMonadMetaM; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21___closed__2; LEAN_EXPORT lean_object* l_Lean_instantiateMVars___at_Lean_Elab_Tactic_Omega_MetaProblem_addFact___spec__1(lean_object*, lean_object*, 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_Omega_MetaProblem_pushNot___lambda__22___closed__10; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___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*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6___closed__1; LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_Omega_splitDisjunction___spec__2(lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_trivial___closed__1; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__25; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__14(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*); static lean_object* l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq___closed__4; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__28; static lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___closed__1; @@ -557,91 +606,97 @@ static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality___closed lean_object* l_Lean_Elab_Tactic_Omega_atomsList___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_Omega_cases_u2082___closed__2; uint8_t l_List_decidableBAll___rarg(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__39; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__19; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__7; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__3___closed__1; lean_object* l_Lean_Meta_registerSimpAttr(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaDefault(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_Omega_asLinearComboImpl_handleNatCast___closed__17; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_Omega_cases_u2082___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___closed__6; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__8; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___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_Omega_asLinearComboImpl___lambda__8___closed__38; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__12; size_t lean_hashmap_mk_idx(lean_object*, uint64_t); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__73; lean_object* lean_mk_thunk(lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_evalOmega___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__40; LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyConstraints___spec__1(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__54; static lean_object* l_Lean_Elab_Tactic_Omega_elabOmegaConfig___closed__6; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__6; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__8; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__8; static lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__16___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__18___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__3; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__13(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_Omega_MetaProblem_addIntEquality___spec__2(lean_object*, lean_object*, size_t, size_t, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__27; lean_object* l_Lean_MessageData_ofExpr(lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__1___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_varNameOf___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage(lean_object*, lean_object*, 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_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__53; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyConstraint___boxed(lean_object*, lean_object*); uint8_t l_Lean_LocalDecl_isImplementationDetail(lean_object*); lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___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*); static lean_object* l_panic___at_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___spec__1___closed__9; static lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRange__1___closed__4; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__37; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__43; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearCombo___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_Elab_Tactic_Omega_splitDisjunction___lambda__7___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___closed__9; +static lean_object* l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__5; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__1; lean_object* l_Lean_Elab_Tactic_Omega_lookup(lean_object*, lean_object*, 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_Omega_asLinearComboImpl___lambda__10___closed__47; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__18(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*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearCombo___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_Omega_MetaProblem_addIntInequality___boxed(lean_object*, 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_Omega_asLinearComboImpl___lambda__8___closed__47; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__3; lean_object* l_List_mapTR_loop___at_Lean_Omega_LinearCombo_instToString___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_HashMapImp_expand___at_Lean_Elab_Tactic_Omega_asLinearCombo___spec__6(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___closed__8; LEAN_EXPORT lean_object* l_Lean_AssocList_find_x3f___at_Lean_Elab_Tactic_Omega_asLinearCombo___spec__2(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__8; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__11(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*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRange__1___closed__3; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__31; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_processedFacts___default; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__43; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearCombo___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_Omega_asLinearComboImpl___lambda__8___closed__10; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__41; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__3; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___lambda__2___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_cases_u2082___closed__5; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33(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*); static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage___closed__9; lean_object* l_Lean_Omega_LinearCombo_neg(lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__10___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__2___closed__2; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__32; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__7; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__33; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__2; LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyAtoms___spec__2(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyAtoms___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__18; static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyConstraint___closed__3; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__27; static lean_object* l_Lean_Elab_Tactic_Omega_elabOmegaConfig___closed__4; LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_Omega_splitDisjunction___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_Lean_Elab_Tactic_Omega_omegaImpl___lambda__4___closed__1; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___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_Tactic_Omega_MetaProblem_addFact___lambda__17___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__20___closed__2; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__70; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality___boxed(lean_object*, lean_object*, lean_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_abs(lean_object*); uint8_t l_Lean_Elab_Tactic_Omega_Problem_isEmpty(lean_object*); @@ -652,92 +707,102 @@ static lean_object* l_Lean_Elab_Tactic_Omega_elabOmegaConfig___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__6___closed__3; lean_object* l_Lean_Omega_LinearCombo_coordinate(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_Omega_omegaTactic___spec__4(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_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___lambda__2___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__21(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_Omega_MetaProblem_pushNot___lambda__7(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_Omega_asLinearComboImpl___lambda__4___closed__4; LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_asLinearCombo___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_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__11; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6(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* l_Lean_Expr_app___override(lean_object*, lean_object*); static lean_object* l_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyAtoms___spec__2___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__3(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*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__41; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__72; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___boxed(lean_object**); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___boxed(lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__1; lean_object* l_Lean_mkApp3(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__39; lean_object* l_Lean_Elab_getResetInfoTrees___at_Lean_Elab_Term_withDeclName___spec__3___rarg(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__32; lean_object* l_Lean_Elab_Tactic_Omega_Problem_addInequality(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__23; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyAtoms___spec__1___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__19; lean_object* lean_nat_mod(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_addFact___lambda__1___closed__65; LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___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_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__5; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__10; static lean_object* l_Lean_Elab_Tactic_Omega_elabOmegaConfig___closed__7; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_varNames(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__17; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__3; static lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega__1___closed__3; static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage___closed__8; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__11; lean_object* l_Lean_PersistentHashMap_insert___at_Lean_MVarId_assign___spec__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkListLit(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__8___closed__2; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__26; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__4; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__11; lean_object* l_Lean_Meta_withLCtx___at___private_Lean_Elab_Binders_0__Lean_Elab_Term_FunBinders_elabFunBinderViews___spec__3___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_Name_mkStr2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__10(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_Omega_MetaProblem_pushNot___lambda__4___closed__1; lean_object* l_Lean_Meta_mkEqRefl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__32; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___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_Omega_omegaImpl___lambda__2___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__14___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__19(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_Omega_MetaProblem_addFact___lambda__6___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__21; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearCombo___lambda__3(lean_object*, 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_Omega_mkEvalRflProof___closed__22; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__52; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__44; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearCombo___lambda__4(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*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__4; static lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega__1___closed__4; static lean_object* l_panic___at_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___spec__1___closed__4; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__1; lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_Omega_lookup___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*); uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_AssocList_replace___at_Lean_Elab_Tactic_Omega_asLinearCombo___spec__9(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__9; lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Tactic_Omega_groundInt_x3f(lean_object*); lean_object* l_Lean_Elab_Tactic_Omega_commitWhen___rarg(lean_object*, lean_object*, 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_Omega_asLinearComboImpl_handleFinVal___closed__10; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__71; 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_Int_toNat(lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyAtoms___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_succ_x3f___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__23; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_problem___default___lambda__1___closed__1; uint8_t l_Lean_Syntax_isNone(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__1(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__7(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*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__7; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_Omega_splitDisjunction___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_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__2___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__2; static lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRange__1___closed__7; uint8_t lean_int_dec_lt(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyConstraints___closed__1; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq___closed__9; lean_object* l_Lean_ResolveName_resolveGlobalName(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__9; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__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_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_elabOmegaConfig___closed__10; lean_object* l_Lean_Elab_Tactic_Omega_Problem_solveEqualities(lean_object*, lean_object*, 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_Omega_MetaProblem_addFact___lambda__1___closed__21; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4(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_nat_mul(lean_object*, lean_object*); static lean_object* l_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyConstraints___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -745,17 +810,20 @@ static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___lambda_ static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___closed__11; LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___spec__1(lean_object*, lean_object*, 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_Omega_elabOmegaConfig___closed__1; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__16; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearCombo___closed__2; +static lean_object* l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__3; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17(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* l_Lean_Meta_Cases_cases(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_AssocList_foldlM___at_Lean_Elab_Tactic_Omega_formatErrorMessage_mentioned___spec__2(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_omegaTactic___lambda__2___closed__4; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__26; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_inScope___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__1; lean_object* l_Lean_Meta_instantiateMVarsIfMVarApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRange__1___closed__5; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__55; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_facts___default; lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); lean_object* l_Array_ofSubarray___rarg(lean_object*); @@ -763,96 +831,101 @@ static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___c static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__15; static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyConstraint___closed__1; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__3; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__6___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_succ_x3f___closed__2; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__29; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__38; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__4; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__2; lean_object* l_Lean_Expr_int_x3f(lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___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_Elab_Tactic_Omega_omegaImpl___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*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__34; lean_object* l_List_reverse___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality(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*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___boxed(lean_object*, lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_instInhabited; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__6; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__18; static lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__6___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__11(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_PersistentArray_mapMAux___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___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_Elab_Tactic_Omega_asLinearComboImpl___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__3___closed__3; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___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_String_intercalate(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__4; static lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__6___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__4; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___spec__12(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_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__2; lean_object* l_Lean_mkHashMapImp___rarg(lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__29; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__23; lean_object* l_Lean_instantiateMVarsCore(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6_(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_Elab_Tactic_Omega_omegaImpl___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_Elab_Tactic_Omega_MetaProblem_addFact___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_Tactic_Omega_evalOmega___lambda__1___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__12; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___closed__2; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__36; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__2; size_t lean_usize_add(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyConstraints(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__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*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__14; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__32; static lean_object* l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRange__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__19; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__5(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*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__44; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__16; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__4___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_omegaTactic(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*); lean_object* l_Lean_Elab_Tactic_Omega_atoms___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_instToExprInt_mkNat(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___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_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__7; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__2; static lean_object* l_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyCoeffs___spec__2___closed__2; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__21; extern lean_object* l_Lean_Omega_LinearCombo_instInhabited; static lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__6___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__1(lean_object*, lean_object*, 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_Omega_MetaProblem_addFact___lambda__1___closed__47; lean_object* l_Lean_Elab_Tactic_Omega_atomsCoeffs___boxed(lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__14; lean_object* l_instInhabitedOfMonad___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_addFact___lambda__1___closed__42; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); static lean_object* l_panic___at_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___spec__1___closed__6; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__22; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__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_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_Tactic_Omega_MetaProblem_addFact___lambda__12(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*); static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyConstraint___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__7(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*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__17; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35(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*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__3; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__48; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__52; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__9(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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__46; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__15; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__4; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__6; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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 lean_int_dec_eq(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__19; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__36; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__13(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_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_formatErrorMessage_mentioned___spec__3(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_AssocList_foldlM___at_Lean_Elab_Tactic_Omega_asLinearCombo___spec__8(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__22; LEAN_EXPORT lean_object* l_Lean_resolveGlobalName___at_Lean_Elab_Tactic_Omega_formatErrorMessage_inScope___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__3___closed__2; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__3; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__30; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__2; lean_object* l_Lean_Expr_getAppFnArgs(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_Omega_elabOmegaConfig___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_string_append(lean_object*, lean_object*); @@ -860,60 +933,62 @@ static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed_ static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__2; 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_Tactic_Omega_splitDisjunction(lean_object*, lean_object*, lean_object*, 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_Omega_asLinearComboImpl___lambda__8___closed__18; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__8___boxed(lean_object**); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__3; lean_object* l_Lean_Meta_evalExpr_x27___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__5; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__8; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); lean_object* l_Lean_LocalDecl_toExpr(lean_object*); lean_object* l_Lean_Omega_LinearCombo_mul(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__8; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28(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_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_Omega_omegaTactic___spec__3___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearCombo___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_elabOmegaConfig___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_int_neg(lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__9; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__16; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__60; lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__42; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__23; uint8_t lean_usize_dec_lt(size_t, size_t); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__48; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__10___closed__3; lean_object* l_Lean_Meta_intro1Core(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__18___closed__2; static lean_object* l_Lean_Elab_Tactic_Omega_omegaImpl___lambda__4___closed__5; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__69; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__24; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__3; LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyAtoms___spec__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__19; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___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_Tactic_Omega_splitDisjunction___lambda__4___boxed(lean_object**); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21(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*); static lean_object* l_Lean_Elab_Tactic_Omega_cases_u2082___closed__4; static lean_object* l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__10; lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_withoutModifyingStateWithInfoAndMessagesImpl___rarg(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*); static lean_object* l_panic___at_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___spec__1___closed__8; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__3; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality___spec__2(lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_problem___default___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleFinVal___boxed(lean_object*, lean_object*, 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_Omega_omegaImpl___lambda__4___closed__7; static lean_object* l_List_mapTR_loop___at_Lean_Elab_Tactic_Omega_formatErrorMessage_prettyCoeffs___spec__2___closed__1; -static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__1; lean_object* l_Lean_mkApp5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__4; static lean_object* l_Lean_Elab_Tactic_Omega_formatErrorMessage___closed__5; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__26(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*); uint8_t l_Lean_Expr_isFVar(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391_(lean_object*); uint8_t l_Lean_HashSetImp_contains___at_Lean_CollectLevelParams_visitExpr___spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, 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_Omega_MetaProblem_pushNot___lambda__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_enumFrom___rarg(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__30; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__16___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_Omega_asLinearCombo(lean_object*, lean_object*, 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_Omega_asLinearComboImpl_handleNatCast___closed__51; @@ -925,18 +1000,17 @@ lean_object* l_Lean_Elab_Tactic_replaceMainGoal(lean_object*, lean_object*, lean lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__11; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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*); static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__2; lean_object* l_Lean_HashSet_toList___at_Lean_Elab_Tactic_Omega_lookup___spec__10(lean_object*); -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__22; lean_object* l_Lean_Omega_LinearCombo_sub(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearCombo___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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__74; LEAN_EXPORT lean_object* l_Lean_HashMapImp_moveEntries___at_Lean_Elab_Tactic_Omega_asLinearCombo___spec__7(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality___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_MVarId_withContext___at_Lean_Elab_Tactic_Omega_splitDisjunction___spec__2___rarg(lean_object*, lean_object*, lean_object*, 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_Omega_asLinearComboImpl___lambda__5___closed__1; -static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__63; +static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__3; +static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__28; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__6___closed__3; lean_object* l_Lean_MVarId_falseOrByContra(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_FVarId_getValue_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -945,10 +1019,12 @@ static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___c lean_object* l_Char_ofNat(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__11(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_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17___closed__1; lean_object* l_Lean_Meta_whnfR(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___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*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_HashMapImp_find_x3f___at_Lean_Elab_Tactic_Omega_asLinearCombo___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___boxed(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_Omega_MetaProblem_addFact___lambda__35___closed__6; lean_object* l___private_Lean_Data_HashMap_0__Lean_numBucketsForCapacity(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_splitDisjunction___lambda__2(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -958,6 +1034,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__ LEAN_EXPORT uint8_t l_Lean_AssocList_contains___at_Lean_Elab_Tactic_Omega_asLinearCombo___spec__5(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__43; +static lean_object* l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__5; static lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__11; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__49; static lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__13; @@ -5115,7 +5192,7 @@ static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___l 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_Tactic_Omega_asLinearComboImpl_rewrite___lambda__2___closed__3; x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___lambda__2___closed__4; -x_3 = lean_unsigned_to_nat(243u); +x_3 = lean_unsigned_to_nat(245u); x_4 = lean_unsigned_to_nat(14u); x_5 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___lambda__2___closed__5; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -6644,7 +6721,24 @@ return x_4; } } } -LEAN_EXPORT uint8_t l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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, 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) { +_start: +{ +lean_object* x_15; +lean_dec(x_4); +x_15 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast(x_1, x_2, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__2(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) { +_start: +{ +lean_object* x_13; +x_13 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_13; +} +} +LEAN_EXPORT uint8_t l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3(lean_object* x_1) { _start: { lean_object* x_2; uint8_t x_3; @@ -6653,7 +6747,7 @@ x_3 = lean_int_dec_eq(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4(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; @@ -6661,7 +6755,7 @@ x_10 = l_Lean_Meta_mkDecideProof(x_1, x_5, x_6, x_7, x_8, x_9); return x_10; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__1() { _start: { lean_object* x_1; @@ -6669,19 +6763,19 @@ x_1 = lean_mk_string_from_bytes("mul_eval", 8); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__1; -x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__1; +x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___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_Tactic_Omega_asLinearComboImpl___lambda__3___closed__3() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__3() { _start: { lean_object* x_1; @@ -6689,19 +6783,19 @@ x_1 = lean_mk_string_from_bytes("mul_congr", 9); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__4() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__3; +x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5() { _start: { lean_object* x_1; lean_object* x_2; @@ -6710,7 +6804,7 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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, uint8_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_Lean_Elab_Tactic_Omega_asLinearComboImpl___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, uint8_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_20; @@ -6727,7 +6821,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_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__2; +x_23 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__2; lean_inc(x_1); x_24 = l_Lean_Expr_const___override(x_23, x_1); x_25 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__6; @@ -6845,10 +6939,10 @@ 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_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5; +x_54 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; x_55 = lean_array_push(x_54, x_35); x_56 = lean_array_push(x_55, x_52); -x_57 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__4; +x_57 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__4; lean_inc(x_18); lean_inc(x_17); lean_inc(x_16); @@ -7032,10 +7126,10 @@ lean_inc(x_92); x_93 = lean_ctor_get(x_91, 1); lean_inc(x_93); lean_dec(x_91); -x_94 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5; +x_94 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; x_95 = lean_array_push(x_94, x_83); x_96 = lean_array_push(x_95, x_92); -x_97 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__4; +x_97 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__4; lean_inc(x_18); lean_inc(x_17); lean_inc(x_16); @@ -7228,7 +7322,7 @@ return x_141; } } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__1() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__1() { _start: { lean_object* x_1; @@ -7236,27 +7330,27 @@ x_1 = lean_mk_string_from_bytes("Or", 2); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__2() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_Tactic_Omega_asLinearComboImpl___lambda__4___closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_Tactic_Omega_asLinearComboImpl___lambda__4___closed__3() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___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_Tactic_Omega_asLinearComboImpl___lambda__4___closed__2; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__2; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__4() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__4() { _start: { lean_object* x_1; @@ -7264,37 +7358,37 @@ x_1 = lean_mk_string_from_bytes("isZero", 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__5() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___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_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; x_3 = l_Lean_Elab_Tactic_Omega_mkCoordinateEvalAtomsEq___closed__1; -x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__4; +x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___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_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__6() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___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_Omega_asLinearComboImpl___lambda__4___closed__5; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__5; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__7() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__7() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__1___boxed), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___boxed), 1, 0); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__8() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__8() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; @@ -7307,7 +7401,7 @@ lean_ctor_set(x_4, 1, x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6(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) { _start: { uint8_t x_13; @@ -7371,7 +7465,7 @@ if (lean_is_exclusive(x_21)) { } x_29 = lean_ctor_get(x_15, 1); lean_inc(x_29); -x_79 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__7; +x_79 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__7; lean_inc(x_29); x_80 = l_List_decidableBAll___rarg(x_79, x_29); if (x_80 == 0) @@ -7394,7 +7488,7 @@ lean_dec(x_18); lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); -x_83 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__8; +x_83 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__8; lean_ctor_set(x_2, 1, x_22); lean_ctor_set(x_2, 0, x_83); return x_2; @@ -7425,7 +7519,7 @@ x_32 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__17; x_33 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__21; x_34 = l___private_Lean_ToExpr_0__Lean_List_toExprAux___at_Lean_Elab_Tactic_Omega_instToExprLinearCombo___spec__1(x_32, x_33, x_29); lean_dec(x_29); -x_35 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__6; +x_35 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__6; lean_inc(x_34); x_36 = l_Lean_Expr_app___override(x_35, x_34); x_37 = lean_ctor_get(x_24, 1); @@ -7434,9 +7528,9 @@ x_38 = l___private_Lean_ToExpr_0__Lean_List_toExprAux___at_Lean_Elab_Tactic_Omeg lean_dec(x_37); lean_inc(x_38); x_39 = l_Lean_Expr_app___override(x_35, x_38); -x_40 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__3; +x_40 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__3; x_41 = l_Lean_mkAppB(x_40, x_36, x_39); -x_42 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__2___boxed), 9, 1); +x_42 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___boxed), 9, 1); lean_closure_set(x_42, 0, x_41); x_43 = lean_alloc_closure((void*)(l_StateRefT_x27_lift___rarg___boxed), 2, 1); lean_closure_set(x_43, 0, x_42); @@ -7445,7 +7539,7 @@ lean_closure_set(x_44, 0, x_43); x_45 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__11; lean_inc(x_24); lean_inc(x_15); -x_46 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___boxed), 19, 8); +x_46 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___boxed), 19, 8); lean_closure_set(x_46, 0, x_31); lean_closure_set(x_46, 1, x_15); lean_closure_set(x_46, 2, x_24); @@ -7681,7 +7775,7 @@ if (lean_is_exclusive(x_97)) { } x_105 = lean_ctor_get(x_91, 1); lean_inc(x_105); -x_155 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__7; +x_155 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__7; lean_inc(x_105); x_156 = l_List_decidableBAll___rarg(x_155, x_105); if (x_156 == 0) @@ -7704,7 +7798,7 @@ lean_dec(x_94); lean_dec(x_93); lean_dec(x_92); lean_dec(x_91); -x_159 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__8; +x_159 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__8; x_160 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_160, 0, x_159); lean_ctor_set(x_160, 1, x_98); @@ -7734,7 +7828,7 @@ x_108 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__17; x_109 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__21; x_110 = l___private_Lean_ToExpr_0__Lean_List_toExprAux___at_Lean_Elab_Tactic_Omega_instToExprLinearCombo___spec__1(x_108, x_109, x_105); lean_dec(x_105); -x_111 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__6; +x_111 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__6; lean_inc(x_110); x_112 = l_Lean_Expr_app___override(x_111, x_110); x_113 = lean_ctor_get(x_100, 1); @@ -7743,9 +7837,9 @@ x_114 = l___private_Lean_ToExpr_0__Lean_List_toExprAux___at_Lean_Elab_Tactic_Ome lean_dec(x_113); lean_inc(x_114); x_115 = l_Lean_Expr_app___override(x_111, x_114); -x_116 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__3; +x_116 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__3; x_117 = l_Lean_mkAppB(x_116, x_112, x_115); -x_118 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__2___boxed), 9, 1); +x_118 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___boxed), 9, 1); lean_closure_set(x_118, 0, x_117); x_119 = lean_alloc_closure((void*)(l_StateRefT_x27_lift___rarg___boxed), 2, 1); lean_closure_set(x_119, 0, x_118); @@ -7754,7 +7848,7 @@ lean_closure_set(x_120, 0, x_119); x_121 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__11; lean_inc(x_100); lean_inc(x_91); -x_122 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___boxed), 19, 8); +x_122 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___boxed), 19, 8); lean_closure_set(x_122, 0, x_107); lean_closure_set(x_122, 1, x_91); lean_closure_set(x_122, 2, x_100); @@ -7931,7 +8025,7 @@ return x_166; } } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__1() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__1() { _start: { lean_object* x_1; @@ -7939,29 +8033,29 @@ x_1 = lean_mk_string_from_bytes("neg_eval", 8); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__2() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__1; -x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__1; +x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___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_Tactic_Omega_asLinearComboImpl___lambda__5___closed__3() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___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_Tactic_Omega_asLinearComboImpl___lambda__5___closed__2; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__2; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__4() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__4() { _start: { lean_object* x_1; @@ -7969,19 +8063,19 @@ x_1 = lean_mk_string_from_bytes("neg_congr", 9); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___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_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__4; +x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___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_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__6() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__6() { _start: { lean_object* x_1; lean_object* x_2; @@ -7990,7 +8084,7 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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, 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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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, 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) { _start: { 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; @@ -8028,11 +8122,11 @@ x_31 = l_Lean_mkApp3(x_28, x_29, x_30, x_27); x_32 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__7; x_33 = l_Lean_Expr_app___override(x_32, x_31); x_34 = l_Lean_Expr_app___override(x_33, x_20); -x_35 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__3; +x_35 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__3; x_36 = l_Lean_mkAppB(x_35, x_34, x_3); -x_37 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__6; +x_37 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__6; x_38 = lean_array_push(x_37, x_23); -x_39 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; +x_39 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__5; lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); @@ -8162,11 +8256,11 @@ x_62 = l_Lean_instToExprInt_mkNat(x_61); x_63 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__7; x_64 = l_Lean_Expr_app___override(x_63, x_62); x_65 = l_Lean_Expr_app___override(x_64, x_20); -x_66 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__3; +x_66 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__3; x_67 = l_Lean_mkAppB(x_66, x_65, x_3); -x_68 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__6; +x_68 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__6; x_69 = lean_array_push(x_68, x_59); -x_70 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; +x_70 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__5; lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); @@ -8283,7 +8377,7 @@ return x_89; } } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__1() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__1() { _start: { lean_object* x_1; @@ -8291,29 +8385,29 @@ x_1 = lean_mk_string_from_bytes("sub_eval", 8); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__2() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__1; -x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__1; +x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___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_Tactic_Omega_asLinearComboImpl___lambda__6___closed__3() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___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_Tactic_Omega_asLinearComboImpl___lambda__6___closed__2; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__2; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__4() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__4() { _start: { lean_object* x_1; @@ -8321,19 +8415,19 @@ x_1 = lean_mk_string_from_bytes("sub_congr", 9); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__5() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___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_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__4; +x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___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_Elab_Tactic_Omega_asLinearComboImpl___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, 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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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, 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) { _start: { 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; lean_object* x_23; uint8_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_76; @@ -8423,7 +8517,7 @@ x_38 = l_Lean_mkApp3(x_35, x_36, x_37, x_34); x_39 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__7; x_40 = l_Lean_Expr_app___override(x_39, x_38); x_41 = l_Lean_Expr_app___override(x_40, x_26); -x_42 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__3; +x_42 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__3; x_43 = l_Lean_mkApp3(x_42, x_29, x_41, x_5); x_44 = lean_box(x_9); lean_inc(x_14); @@ -8439,10 +8533,10 @@ 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_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5; +x_48 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; x_49 = lean_array_push(x_48, x_30); x_50 = lean_array_push(x_49, x_46); -x_51 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__5; +x_51 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__5; lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -8607,7 +8701,7 @@ x_80 = l_Lean_instToExprInt_mkNat(x_79); x_81 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__7; x_82 = l_Lean_Expr_app___override(x_81, x_80); x_83 = l_Lean_Expr_app___override(x_82, x_26); -x_84 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__3; +x_84 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__3; x_85 = l_Lean_mkApp3(x_84, x_76, x_83, x_5); x_86 = lean_box(x_9); lean_inc(x_14); @@ -8623,10 +8717,10 @@ lean_inc(x_88); x_89 = lean_ctor_get(x_87, 1); lean_inc(x_89); lean_dec(x_87); -x_90 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5; +x_90 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; x_91 = lean_array_push(x_90, x_77); x_92 = lean_array_push(x_91, x_88); -x_93 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__5; +x_93 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__5; lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -8778,7 +8872,7 @@ return x_116; } } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__1() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__1() { _start: { lean_object* x_1; @@ -8786,29 +8880,29 @@ x_1 = lean_mk_string_from_bytes("add_eval", 8); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__2() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__1; -x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__1; +x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___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_Tactic_Omega_asLinearComboImpl___lambda__7___closed__3() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___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_Tactic_Omega_asLinearComboImpl___lambda__7___closed__2; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__2; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__4() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__4() { _start: { lean_object* x_1; @@ -8816,19 +8910,19 @@ x_1 = lean_mk_string_from_bytes("add_congr", 9); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__5() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___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_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__4; +x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___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_Elab_Tactic_Omega_asLinearComboImpl___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, 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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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, 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) { _start: { 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; lean_object* x_23; uint8_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_76; @@ -8918,7 +9012,7 @@ x_38 = l_Lean_mkApp3(x_35, x_36, x_37, x_34); x_39 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__7; x_40 = l_Lean_Expr_app___override(x_39, x_38); x_41 = l_Lean_Expr_app___override(x_40, x_26); -x_42 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__3; +x_42 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__3; x_43 = l_Lean_mkApp3(x_42, x_29, x_41, x_5); x_44 = lean_box(x_9); lean_inc(x_14); @@ -8934,10 +9028,10 @@ 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_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5; +x_48 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; x_49 = lean_array_push(x_48, x_30); x_50 = lean_array_push(x_49, x_46); -x_51 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__5; +x_51 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__5; lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -9102,7 +9196,7 @@ x_80 = l_Lean_instToExprInt_mkNat(x_79); x_81 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__7; x_82 = l_Lean_Expr_app___override(x_81, x_80); x_83 = l_Lean_Expr_app___override(x_82, x_26); -x_84 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__3; +x_84 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__3; x_85 = l_Lean_mkApp3(x_84, x_76, x_83, x_5); x_86 = lean_box(x_9); lean_inc(x_14); @@ -9118,10 +9212,10 @@ lean_inc(x_88); x_89 = lean_ctor_get(x_87, 1); lean_inc(x_89); lean_dec(x_87); -x_90 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5; +x_90 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; x_91 = lean_array_push(x_90, x_77); x_92 = lean_array_push(x_91, x_88); -x_93 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__5; +x_93 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__5; lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -9273,7 +9367,7 @@ return x_116; } } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__1() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__1() { _start: { lean_object* x_1; @@ -9281,7 +9375,7 @@ x_1 = lean_mk_string_from_bytes("HSub", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__2() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__2() { _start: { lean_object* x_1; @@ -9289,7 +9383,7 @@ x_1 = lean_mk_string_from_bytes("HMul", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__3() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__3() { _start: { lean_object* x_1; @@ -9297,7 +9391,7 @@ x_1 = lean_mk_string_from_bytes("HMod", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__4() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__4() { _start: { lean_object* x_1; @@ -9305,7 +9399,7 @@ x_1 = lean_mk_string_from_bytes("HDiv", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__5() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__5() { _start: { lean_object* x_1; @@ -9313,7 +9407,7 @@ x_1 = lean_mk_string_from_bytes("Min", 3); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__6() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__6() { _start: { lean_object* x_1; @@ -9321,7 +9415,7 @@ x_1 = lean_mk_string_from_bytes("Max", 3); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__7() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__7() { _start: { lean_object* x_1; @@ -9329,7 +9423,7 @@ x_1 = lean_mk_string_from_bytes("HPow", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__8() { _start: { lean_object* x_1; @@ -9337,7 +9431,7 @@ x_1 = lean_mk_string_from_bytes("Prod", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__9() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__9() { _start: { lean_object* x_1; @@ -9345,7 +9439,7 @@ x_1 = lean_mk_string_from_bytes("fst", 3); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__10() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__10() { _start: { lean_object* x_1; @@ -9353,7 +9447,7 @@ x_1 = lean_mk_string_from_bytes("snd", 3); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__11() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__11() { _start: { lean_object* x_1; @@ -9361,19 +9455,19 @@ x_1 = lean_mk_string_from_bytes("snd_mk", 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__12() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___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_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; -x_3 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8; -x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__11; +x_3 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__8; +x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__11; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__13() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__13() { _start: { lean_object* x_1; @@ -9381,19 +9475,19 @@ x_1 = lean_mk_string_from_bytes("fst_mk", 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__14() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__14() { _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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; -x_3 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8; -x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__13; +x_3 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__8; +x_4 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__13; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__15() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__15() { _start: { lean_object* x_1; @@ -9401,7 +9495,7 @@ x_1 = lean_mk_string_from_bytes("cast", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__16() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__16() { _start: { lean_object* x_1; @@ -9409,7 +9503,7 @@ x_1 = lean_mk_string_from_bytes("hPow", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__17() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__17() { _start: { lean_object* x_1; @@ -9417,27 +9511,27 @@ x_1 = lean_mk_string_from_bytes("pow_succ", 8); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__18() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__17; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__17; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__19() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___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_Tactic_Omega_asLinearComboImpl___lambda__8___closed__18; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__18; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__20() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__20() { _start: { lean_object* x_1; @@ -9445,7 +9539,7 @@ x_1 = lean_mk_string_from_bytes("max", 3); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__21() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__21() { _start: { lean_object* x_1; @@ -9453,27 +9547,27 @@ x_1 = lean_mk_string_from_bytes("max_def", 7); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__22() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__22() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__21; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__21; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__23() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__23() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__22; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__22; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__24() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__24() { _start: { lean_object* x_1; @@ -9481,7 +9575,7 @@ x_1 = lean_mk_string_from_bytes("min", 3); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__25() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__25() { _start: { lean_object* x_1; @@ -9489,27 +9583,27 @@ x_1 = lean_mk_string_from_bytes("min_def", 7); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__26() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__26() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__25; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__25; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__27() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__27() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__26; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__26; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__28() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__28() { _start: { lean_object* x_1; @@ -9517,17 +9611,17 @@ x_1 = lean_mk_string_from_bytes("hDiv", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__29() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__29() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__4; -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__28; +x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__4; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__28; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__30() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__30() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -9539,17 +9633,17 @@ lean_ctor_set(x_3, 1, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__31() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__31() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__24; -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__30; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__30; x_3 = l_Lean_Expr_const___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__32() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__32() { _start: { lean_object* x_1; @@ -9557,37 +9651,37 @@ x_1 = lean_mk_string_from_bytes("ediv_neg", 8); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__33() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__33() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__32; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__32; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__34() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__34() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__33; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__33; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__35() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__35() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__33; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__33; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__36() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__36() { _start: { lean_object* x_1; @@ -9595,27 +9689,27 @@ x_1 = lean_mk_string_from_bytes("ediv_zero", 9); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__37() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__37() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__36; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__36; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__38() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__38() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__37; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__37; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__39() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__39() { _start: { lean_object* x_1; @@ -9623,17 +9717,17 @@ x_1 = lean_mk_string_from_bytes("hMod", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__40() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__40() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__3; -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__39; +x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__3; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__39; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__41() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__41() { _start: { lean_object* x_1; @@ -9641,37 +9735,37 @@ x_1 = lean_mk_string_from_bytes("emod_def", 8); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__42() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__42() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__41; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__41; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__43() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__43() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__42; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__42; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__44() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__44() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__42; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__42; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__45() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__45() { _start: { lean_object* x_1; @@ -9679,7 +9773,7 @@ x_1 = lean_mk_string_from_bytes("hMul", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46() { _start: { lean_object* x_1; @@ -9687,7 +9781,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_atomsCoeffs___boxed), return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__47() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__47() { _start: { lean_object* x_1; @@ -9695,7 +9789,7 @@ x_1 = lean_mk_string_from_bytes("hSub", 4); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8(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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10(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) { _start: { lean_object* x_13; @@ -9740,7 +9834,7 @@ x_23 = lean_string_dec_eq(x_21, x_22); if (x_23 == 0) { lean_object* x_24; uint8_t x_25; -x_24 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__1; +x_24 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__1; x_25 = lean_string_dec_eq(x_21, x_24); if (x_25 == 0) { @@ -9750,32 +9844,32 @@ x_27 = lean_string_dec_eq(x_21, x_26); if (x_27 == 0) { lean_object* x_28; uint8_t x_29; -x_28 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__2; +x_28 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__2; x_29 = lean_string_dec_eq(x_21, x_28); if (x_29 == 0) { lean_object* x_30; uint8_t x_31; -x_30 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__3; +x_30 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__3; x_31 = lean_string_dec_eq(x_21, x_30); if (x_31 == 0) { lean_object* x_32; uint8_t x_33; -x_32 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__4; +x_32 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__4; x_33 = lean_string_dec_eq(x_21, x_32); if (x_33 == 0) { lean_object* x_34; uint8_t x_35; -x_34 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__5; +x_34 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__5; x_35 = lean_string_dec_eq(x_21, x_34); if (x_35 == 0) { lean_object* x_36; uint8_t x_37; -x_36 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__6; +x_36 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__6; x_37 = lean_string_dec_eq(x_21, x_36); if (x_37 == 0) { lean_object* x_38; uint8_t x_39; -x_38 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__7; +x_38 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__7; x_39 = lean_string_dec_eq(x_21, x_38); if (x_39 == 0) { @@ -9785,7 +9879,7 @@ x_41 = lean_string_dec_eq(x_21, x_40); if (x_41 == 0) { lean_object* x_42; uint8_t x_43; -x_42 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8; +x_42 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__8; x_43 = lean_string_dec_eq(x_21, x_42); lean_dec(x_21); if (x_43 == 0) @@ -9799,12 +9893,12 @@ return x_44; else { lean_object* x_45; uint8_t x_46; -x_45 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__9; +x_45 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__9; x_46 = lean_string_dec_eq(x_20, x_45); if (x_46 == 0) { lean_object* x_47; uint8_t x_48; -x_47 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__10; +x_47 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__10; x_48 = lean_string_dec_eq(x_20, x_47); lean_dec(x_20); if (x_48 == 0) @@ -9974,7 +10068,7 @@ x_84 = lean_ctor_get(x_78, 1); lean_dec(x_84); x_85 = lean_box(0); lean_ctor_set(x_78, 1, x_85); -x_86 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__12; +x_86 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__12; x_87 = l_Lean_Expr_const___override(x_86, x_69); x_88 = l_Lean_mkApp4(x_87, x_55, x_68, x_57, x_67); x_89 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_88, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); @@ -9991,7 +10085,7 @@ x_92 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_92, 0, x_90); lean_ctor_set(x_92, 1, x_91); lean_ctor_set(x_69, 1, x_92); -x_93 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__12; +x_93 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__12; x_94 = l_Lean_Expr_const___override(x_93, x_69); x_95 = l_Lean_mkApp4(x_94, x_55, x_68, x_57, x_67); x_96 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_95, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); @@ -10025,7 +10119,7 @@ lean_ctor_set(x_101, 1, x_100); x_102 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_102, 0, x_97); lean_ctor_set(x_102, 1, x_101); -x_103 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__12; +x_103 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__12; x_104 = l_Lean_Expr_const___override(x_103, x_102); x_105 = l_Lean_mkApp4(x_104, x_55, x_68, x_57, x_67); x_106 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_105, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); @@ -10312,7 +10406,7 @@ x_150 = lean_ctor_get(x_144, 1); lean_dec(x_150); x_151 = lean_box(0); lean_ctor_set(x_144, 1, x_151); -x_152 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__14; +x_152 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__14; x_153 = l_Lean_Expr_const___override(x_152, x_135); x_154 = l_Lean_mkApp4(x_153, x_121, x_134, x_123, x_133); x_155 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_154, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); @@ -10329,7 +10423,7 @@ x_158 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_158, 0, x_156); lean_ctor_set(x_158, 1, x_157); lean_ctor_set(x_135, 1, x_158); -x_159 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__14; +x_159 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__14; x_160 = l_Lean_Expr_const___override(x_159, x_135); x_161 = l_Lean_mkApp4(x_160, x_121, x_134, x_123, x_133); x_162 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_161, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); @@ -10363,7 +10457,7 @@ lean_ctor_set(x_167, 1, x_166); x_168 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_168, 0, x_163); lean_ctor_set(x_168, 1, x_167); -x_169 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__14; +x_169 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__14; x_170 = l_Lean_Expr_const___override(x_169, x_168); x_171 = l_Lean_mkApp4(x_170, x_121, x_134, x_123, x_133); x_172 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_171, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); @@ -10494,7 +10588,7 @@ else { lean_object* x_182; uint8_t x_183; lean_dec(x_21); -x_182 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__15; +x_182 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__15; x_183 = lean_string_dec_eq(x_20, x_182); lean_dec(x_20); if (x_183 == 0) @@ -10520,102 +10614,63 @@ return x_188; } else { -lean_object* x_189; lean_object* x_190; +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; uint8_t x_200; x_189 = lean_unsigned_to_nat(0u); x_190 = lean_array_fget(x_19, x_189); -if (lean_obj_tag(x_190) == 4) -{ -lean_object* x_191; -x_191 = lean_ctor_get(x_190, 0); -lean_inc(x_191); -if (lean_obj_tag(x_191) == 1) -{ -lean_object* x_192; -x_192 = lean_ctor_get(x_191, 0); -lean_inc(x_192); -if (lean_obj_tag(x_192) == 0) -{ -lean_object* x_193; lean_object* x_194; lean_object* x_195; uint8_t x_196; -x_193 = lean_ctor_get(x_190, 1); -lean_inc(x_193); -lean_dec(x_190); -x_194 = lean_ctor_get(x_191, 1); -lean_inc(x_194); -lean_dec(x_191); -x_195 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_196 = lean_string_dec_eq(x_194, x_195); -lean_dec(x_194); -if (x_196 == 0) -{ -lean_object* x_197; -lean_dec(x_193); +x_191 = lean_unsigned_to_nat(1u); +x_192 = lean_array_fget(x_19, x_191); +x_193 = lean_unsigned_to_nat(2u); +x_194 = lean_array_fget(x_19, x_193); lean_dec(x_19); -x_197 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_197; +x_195 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_190, x_8, x_9, x_10, x_11, x_12); +x_196 = lean_ctor_get(x_195, 0); +lean_inc(x_196); +x_197 = lean_ctor_get(x_195, 1); +lean_inc(x_197); +lean_dec(x_195); +x_198 = l_Lean_Expr_cleanupAnnotations(x_196); +x_199 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__10; +x_200 = l_Lean_Expr_isConstOf(x_198, x_199); +lean_dec(x_198); +if (x_200 == 0) +{ +lean_object* x_201; +lean_dec(x_194); +lean_dec(x_192); +x_201 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_197); +return x_201; } else { -if (lean_obj_tag(x_193) == 0) -{ -lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; -x_198 = lean_unsigned_to_nat(1u); -x_199 = lean_array_fget(x_19, x_198); -x_200 = lean_unsigned_to_nat(2u); -x_201 = lean_array_fget(x_19, x_200); -lean_dec(x_19); -x_202 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast(x_1, x_199, x_201, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_object* x_202; +x_202 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast(x_1, x_192, x_194, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_197); return x_202; } -else -{ -lean_object* x_203; -lean_dec(x_193); -lean_dec(x_19); -x_203 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_203; -} } } -else -{ -lean_object* x_204; -lean_dec(x_192); -lean_dec(x_191); -lean_dec(x_190); -lean_dec(x_19); -x_204 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_204; } } else { +lean_object* x_203; uint8_t x_204; +lean_dec(x_21); +x_203 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__16; +x_204 = lean_string_dec_eq(x_20, x_203); +lean_dec(x_20); +if (x_204 == 0) +{ lean_object* x_205; -lean_dec(x_191); -lean_dec(x_190); lean_dec(x_19); x_205 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); return x_205; } -} -else -{ -lean_object* x_206; -lean_dec(x_190); -lean_dec(x_19); -x_206 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_206; -} -} -} -} -} else { -lean_object* x_207; uint8_t x_208; -lean_dec(x_21); -x_207 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__16; -x_208 = lean_string_dec_eq(x_20, x_207); -lean_dec(x_20); +lean_object* x_206; lean_object* x_207; uint8_t x_208; +x_206 = lean_array_get_size(x_19); +x_207 = lean_unsigned_to_nat(6u); +x_208 = lean_nat_dec_eq(x_206, x_207); +lean_dec(x_206); if (x_208 == 0) { lean_object* x_209; @@ -10625,58 +10680,44 @@ return x_209; } else { -lean_object* x_210; lean_object* x_211; uint8_t x_212; -x_210 = lean_array_get_size(x_19); -x_211 = lean_unsigned_to_nat(6u); -x_212 = lean_nat_dec_eq(x_210, x_211); -lean_dec(x_210); -if (x_212 == 0) -{ -lean_object* x_213; -lean_dec(x_19); -x_213 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_213; -} -else -{ -lean_object* x_214; lean_object* x_215; lean_object* x_216; lean_object* x_217; lean_object* x_218; -x_214 = lean_unsigned_to_nat(4u); -x_215 = lean_array_fget(x_19, x_214); -x_216 = lean_unsigned_to_nat(5u); -x_217 = lean_array_fget(x_19, x_216); +lean_object* x_210; lean_object* x_211; lean_object* x_212; lean_object* x_213; lean_object* x_214; +x_210 = lean_unsigned_to_nat(4u); +x_211 = lean_array_fget(x_19, x_210); +x_212 = lean_unsigned_to_nat(5u); +x_213 = lean_array_fget(x_19, x_212); lean_dec(x_19); -x_218 = l_Lean_Elab_Tactic_Omega_succ_x3f(x_217); -if (lean_obj_tag(x_218) == 0) +x_214 = l_Lean_Elab_Tactic_Omega_succ_x3f(x_213); +if (lean_obj_tag(x_214) == 0) { -lean_object* x_219; -lean_dec(x_215); -x_219 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_219; +lean_object* x_215; +lean_dec(x_211); +x_215 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_215; } else { -lean_object* x_220; lean_object* x_221; -x_220 = lean_ctor_get(x_218, 0); -lean_inc(x_220); -lean_dec(x_218); -lean_inc(x_215); -x_221 = l_Lean_Elab_Tactic_Omega_groundInt_x3f(x_215); -if (lean_obj_tag(x_221) == 0) +lean_object* x_216; lean_object* x_217; +x_216 = lean_ctor_get(x_214, 0); +lean_inc(x_216); +lean_dec(x_214); +lean_inc(x_211); +x_217 = l_Lean_Elab_Tactic_Omega_groundInt_x3f(x_211); +if (lean_obj_tag(x_217) == 0) { -lean_object* x_222; -lean_dec(x_220); -lean_dec(x_215); -x_222 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_222; +lean_object* x_218; +lean_dec(x_216); +lean_dec(x_211); +x_218 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_218; } else { -lean_object* x_223; lean_object* x_224; lean_object* x_225; -lean_dec(x_221); -x_223 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__19; -x_224 = l_Lean_mkAppB(x_223, x_215, x_220); -x_225 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_224, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_225; +lean_object* x_219; lean_object* x_220; lean_object* x_221; +lean_dec(x_217); +x_219 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__19; +x_220 = l_Lean_mkAppB(x_219, x_211, x_216); +x_221 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_220, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_221; } } } @@ -10685,55 +10726,55 @@ return x_225; } else { -lean_object* x_226; uint8_t x_227; +lean_object* x_222; uint8_t x_223; lean_dec(x_21); -x_226 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__20; -x_227 = lean_string_dec_eq(x_20, x_226); +x_222 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__20; +x_223 = lean_string_dec_eq(x_20, x_222); lean_dec(x_20); -if (x_227 == 0) +if (x_223 == 0) { -lean_object* x_228; +lean_object* x_224; lean_dec(x_19); -x_228 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_228; +x_224 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_224; } else { -lean_object* x_229; lean_object* x_230; uint8_t x_231; -x_229 = lean_array_get_size(x_19); -x_230 = lean_unsigned_to_nat(4u); -x_231 = lean_nat_dec_eq(x_229, x_230); -lean_dec(x_229); -if (x_231 == 0) +lean_object* x_225; lean_object* x_226; uint8_t x_227; +x_225 = lean_array_get_size(x_19); +x_226 = lean_unsigned_to_nat(4u); +x_227 = lean_nat_dec_eq(x_225, x_226); +lean_dec(x_225); +if (x_227 == 0) { -lean_object* x_232; +lean_object* x_228; lean_dec(x_19); -x_232 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_232; +x_228 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_228; } else { -uint8_t x_233; -x_233 = lean_ctor_get_uint8(x_5, 3); -if (x_233 == 0) +uint8_t x_229; +x_229 = lean_ctor_get_uint8(x_5, 3); +if (x_229 == 0) { -lean_object* x_234; +lean_object* x_230; lean_dec(x_19); -x_234 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_234; +x_230 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_230; } else { -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; -x_235 = lean_unsigned_to_nat(2u); -x_236 = lean_array_fget(x_19, x_235); -x_237 = lean_unsigned_to_nat(3u); -x_238 = lean_array_fget(x_19, x_237); +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; +x_231 = lean_unsigned_to_nat(2u); +x_232 = lean_array_fget(x_19, x_231); +x_233 = lean_unsigned_to_nat(3u); +x_234 = lean_array_fget(x_19, x_233); lean_dec(x_19); -x_239 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__23; -x_240 = l_Lean_mkAppB(x_239, x_236, x_238); -x_241 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_240, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_241; +x_235 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__23; +x_236 = l_Lean_mkAppB(x_235, x_232, x_234); +x_237 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_236, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_237; } } } @@ -10741,55 +10782,55 @@ return x_241; } else { -lean_object* x_242; uint8_t x_243; +lean_object* x_238; uint8_t x_239; lean_dec(x_21); -x_242 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__24; -x_243 = lean_string_dec_eq(x_20, x_242); +x_238 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__24; +x_239 = lean_string_dec_eq(x_20, x_238); lean_dec(x_20); -if (x_243 == 0) +if (x_239 == 0) { -lean_object* x_244; +lean_object* x_240; lean_dec(x_19); -x_244 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_244; +x_240 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_240; } else { -lean_object* x_245; lean_object* x_246; uint8_t x_247; -x_245 = lean_array_get_size(x_19); -x_246 = lean_unsigned_to_nat(4u); -x_247 = lean_nat_dec_eq(x_245, x_246); -lean_dec(x_245); -if (x_247 == 0) +lean_object* x_241; lean_object* x_242; uint8_t x_243; +x_241 = lean_array_get_size(x_19); +x_242 = lean_unsigned_to_nat(4u); +x_243 = lean_nat_dec_eq(x_241, x_242); +lean_dec(x_241); +if (x_243 == 0) { -lean_object* x_248; +lean_object* x_244; lean_dec(x_19); -x_248 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_248; +x_244 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_244; } else { -uint8_t x_249; -x_249 = lean_ctor_get_uint8(x_5, 3); -if (x_249 == 0) +uint8_t x_245; +x_245 = lean_ctor_get_uint8(x_5, 3); +if (x_245 == 0) { -lean_object* x_250; +lean_object* x_246; lean_dec(x_19); -x_250 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_250; +x_246 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_246; } else { -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_251 = lean_unsigned_to_nat(2u); -x_252 = lean_array_fget(x_19, x_251); -x_253 = lean_unsigned_to_nat(3u); -x_254 = lean_array_fget(x_19, x_253); +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_unsigned_to_nat(2u); +x_248 = lean_array_fget(x_19, x_247); +x_249 = lean_unsigned_to_nat(3u); +x_250 = lean_array_fget(x_19, x_249); lean_dec(x_19); -x_255 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__27; -x_256 = l_Lean_mkAppB(x_255, x_252, x_254); -x_257 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_256, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_257; +x_251 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__27; +x_252 = l_Lean_mkAppB(x_251, x_248, x_250); +x_253 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_252, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_253; } } } @@ -10797,138 +10838,138 @@ return x_257; } else { -lean_object* x_258; uint8_t x_259; +lean_object* x_254; uint8_t x_255; lean_dec(x_21); -x_258 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__28; -x_259 = lean_string_dec_eq(x_20, x_258); +x_254 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__28; +x_255 = lean_string_dec_eq(x_20, x_254); lean_dec(x_20); -if (x_259 == 0) +if (x_255 == 0) { -lean_object* x_260; +lean_object* x_256; lean_dec(x_19); -x_260 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_260; +x_256 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_256; } else { -lean_object* x_261; lean_object* x_262; uint8_t x_263; -x_261 = lean_array_get_size(x_19); -x_262 = lean_unsigned_to_nat(6u); -x_263 = lean_nat_dec_eq(x_261, x_262); -lean_dec(x_261); -if (x_263 == 0) +lean_object* x_257; lean_object* x_258; uint8_t x_259; +x_257 = lean_array_get_size(x_19); +x_258 = lean_unsigned_to_nat(6u); +x_259 = lean_nat_dec_eq(x_257, x_258); +lean_dec(x_257); +if (x_259 == 0) { -lean_object* x_264; +lean_object* x_260; lean_dec(x_19); -x_264 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_264; +x_260 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_260; } else { -lean_object* x_265; lean_object* x_266; lean_object* x_267; lean_object* x_268; lean_object* x_269; -x_265 = lean_unsigned_to_nat(4u); -x_266 = lean_array_fget(x_19, x_265); -x_267 = lean_unsigned_to_nat(5u); -x_268 = lean_array_fget(x_19, x_267); +lean_object* x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; +x_261 = lean_unsigned_to_nat(4u); +x_262 = lean_array_fget(x_19, x_261); +x_263 = lean_unsigned_to_nat(5u); +x_264 = lean_array_fget(x_19, x_263); lean_dec(x_19); -x_269 = l_Lean_Elab_Tactic_Omega_groundInt_x3f(x_268); -if (lean_obj_tag(x_269) == 0) +x_265 = l_Lean_Elab_Tactic_Omega_groundInt_x3f(x_264); +if (lean_obj_tag(x_265) == 0) { -lean_object* x_270; -lean_dec(x_266); -x_270 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_270; +lean_object* x_266; +lean_dec(x_262); +x_266 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_266; } else { -lean_object* x_271; lean_object* x_272; uint8_t x_273; -x_271 = lean_ctor_get(x_269, 0); -lean_inc(x_271); -lean_dec(x_269); -x_272 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__8; -x_273 = lean_int_dec_eq(x_271, x_272); -if (x_273 == 0) +lean_object* x_267; lean_object* x_268; uint8_t x_269; +x_267 = lean_ctor_get(x_265, 0); +lean_inc(x_267); +lean_dec(x_265); +x_268 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__8; +x_269 = lean_int_dec_eq(x_267, x_268); +if (x_269 == 0) { -uint8_t x_274; lean_object* x_275; lean_object* x_276; +uint8_t x_270; lean_object* x_271; lean_object* x_272; lean_dec(x_1); -x_274 = lean_int_dec_le(x_272, x_271); -x_275 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5; -lean_inc(x_266); -x_276 = lean_array_push(x_275, x_266); -if (x_274 == 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; lean_object* x_285; lean_object* x_286; -x_277 = lean_int_neg(x_271); -x_278 = l_Int_toNat(x_277); -x_279 = l_Lean_instToExprInt_mkNat(x_278); -x_280 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__31; -x_281 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__11; -x_282 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__30; -lean_inc(x_279); -x_283 = l_Lean_mkApp3(x_280, x_281, x_282, x_279); -x_284 = lean_array_push(x_276, x_283); -x_285 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__29; +x_270 = lean_int_dec_le(x_268, x_267); +x_271 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; +lean_inc(x_262); +x_272 = lean_array_push(x_271, x_262); +if (x_270 == 0) +{ +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_273 = lean_int_neg(x_267); +x_274 = l_Int_toNat(x_273); +x_275 = l_Lean_instToExprInt_mkNat(x_274); +x_276 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__31; +x_277 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__11; +x_278 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__30; +lean_inc(x_275); +x_279 = l_Lean_mkApp3(x_276, x_277, x_278, x_275); +x_280 = lean_array_push(x_272, x_279); +x_281 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__29; lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_286 = l_Lean_Meta_mkAppM(x_285, x_284, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_286) == 0) -{ -lean_object* x_287; lean_object* x_288; uint8_t x_289; -x_287 = lean_ctor_get(x_286, 0); -lean_inc(x_287); -x_288 = lean_ctor_get(x_286, 1); -lean_inc(x_288); -lean_dec(x_286); -x_289 = lean_int_dec_lt(x_271, x_272); -lean_dec(x_271); -if (x_289 == 0) +x_282 = l_Lean_Meta_mkAppM(x_281, x_280, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_282) == 0) { -lean_object* x_290; -lean_dec(x_279); -lean_dec(x_277); -lean_dec(x_266); -x_290 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_287, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_288); -return x_290; +lean_object* x_283; lean_object* x_284; uint8_t x_285; +x_283 = lean_ctor_get(x_282, 0); +lean_inc(x_283); +x_284 = lean_ctor_get(x_282, 1); +lean_inc(x_284); +lean_dec(x_282); +x_285 = lean_int_dec_lt(x_267, x_268); +lean_dec(x_267); +if (x_285 == 0) +{ +lean_object* x_286; +lean_dec(x_275); +lean_dec(x_273); +lean_dec(x_262); +x_286 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_283, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_284); +return x_286; } else { -uint8_t x_291; -x_291 = lean_int_dec_le(x_272, x_277); -if (x_291 == 0) +uint8_t x_287; +x_287 = lean_int_dec_le(x_268, x_273); +if (x_287 == 0) { -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_dec(x_279); -x_292 = lean_int_neg(x_277); -lean_dec(x_277); -x_293 = l_Int_toNat(x_292); -lean_dec(x_292); -x_294 = l_Lean_instToExprInt_mkNat(x_293); -x_295 = l_Lean_mkApp3(x_280, x_281, x_282, x_294); -x_296 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__34; -x_297 = l_Lean_mkAppB(x_296, x_266, x_295); -x_298 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_287, x_297, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_288); -return x_298; +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_275); +x_288 = lean_int_neg(x_273); +lean_dec(x_273); +x_289 = l_Int_toNat(x_288); +lean_dec(x_288); +x_290 = l_Lean_instToExprInt_mkNat(x_289); +x_291 = l_Lean_mkApp3(x_276, x_277, x_278, x_290); +x_292 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__34; +x_293 = l_Lean_mkAppB(x_292, x_262, x_291); +x_294 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_283, x_293, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_284); +return x_294; } else { -lean_object* x_299; lean_object* x_300; lean_object* x_301; -lean_dec(x_277); -x_299 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__34; -x_300 = l_Lean_mkAppB(x_299, x_266, x_279); -x_301 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_287, x_300, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_288); -return x_301; +lean_object* x_295; lean_object* x_296; lean_object* x_297; +lean_dec(x_273); +x_295 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__34; +x_296 = l_Lean_mkAppB(x_295, x_262, x_275); +x_297 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_283, x_296, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_284); +return x_297; } } } else { -uint8_t x_302; -lean_dec(x_279); -lean_dec(x_277); -lean_dec(x_271); -lean_dec(x_266); +uint8_t x_298; +lean_dec(x_275); +lean_dec(x_273); +lean_dec(x_267); +lean_dec(x_262); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -10937,96 +10978,96 @@ lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_302 = !lean_is_exclusive(x_286); -if (x_302 == 0) +x_298 = !lean_is_exclusive(x_282); +if (x_298 == 0) { -return x_286; +return x_282; } else { -lean_object* x_303; lean_object* x_304; lean_object* x_305; -x_303 = lean_ctor_get(x_286, 0); -x_304 = lean_ctor_get(x_286, 1); -lean_inc(x_304); -lean_inc(x_303); -lean_dec(x_286); -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; +lean_object* x_299; lean_object* x_300; lean_object* x_301; +x_299 = lean_ctor_get(x_282, 0); +x_300 = lean_ctor_get(x_282, 1); +lean_inc(x_300); +lean_inc(x_299); +lean_dec(x_282); +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 { -lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; -x_306 = l_Int_toNat(x_271); -x_307 = l_Lean_instToExprInt_mkNat(x_306); -x_308 = lean_array_push(x_276, x_307); -x_309 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__29; +lean_object* x_302; lean_object* x_303; lean_object* x_304; lean_object* x_305; lean_object* x_306; +x_302 = l_Int_toNat(x_267); +x_303 = l_Lean_instToExprInt_mkNat(x_302); +x_304 = lean_array_push(x_272, x_303); +x_305 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__29; lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_310 = l_Lean_Meta_mkAppM(x_309, x_308, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_310) == 0) -{ -lean_object* x_311; lean_object* x_312; uint8_t x_313; -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_int_dec_lt(x_271, x_272); -if (x_313 == 0) -{ -lean_object* x_314; -lean_dec(x_271); -lean_dec(x_266); -x_314 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_311, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_312); -return x_314; -} -else -{ -lean_object* x_315; uint8_t x_316; -x_315 = lean_int_neg(x_271); -lean_dec(x_271); -x_316 = lean_int_dec_le(x_272, x_315); -if (x_316 == 0) -{ -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_object* x_325; lean_object* x_326; -x_317 = lean_int_neg(x_315); -lean_dec(x_315); -x_318 = l_Int_toNat(x_317); -lean_dec(x_317); -x_319 = l_Lean_instToExprInt_mkNat(x_318); -x_320 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__27; -x_321 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__11; -x_322 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__30; -x_323 = l_Lean_mkApp3(x_320, x_321, x_322, x_319); -x_324 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__35; -x_325 = l_Lean_mkAppB(x_324, x_266, x_323); -x_326 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_311, x_325, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_312); -return x_326; +x_306 = l_Lean_Meta_mkAppM(x_305, x_304, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_306) == 0) +{ +lean_object* x_307; lean_object* x_308; uint8_t x_309; +x_307 = lean_ctor_get(x_306, 0); +lean_inc(x_307); +x_308 = lean_ctor_get(x_306, 1); +lean_inc(x_308); +lean_dec(x_306); +x_309 = lean_int_dec_lt(x_267, x_268); +if (x_309 == 0) +{ +lean_object* x_310; +lean_dec(x_267); +lean_dec(x_262); +x_310 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_307, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_308); +return x_310; } else { -lean_object* x_327; lean_object* x_328; lean_object* x_329; lean_object* x_330; lean_object* x_331; -x_327 = l_Int_toNat(x_315); -lean_dec(x_315); -x_328 = l_Lean_instToExprInt_mkNat(x_327); -x_329 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__35; -x_330 = l_Lean_mkAppB(x_329, x_266, x_328); -x_331 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_311, x_330, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_312); -return x_331; +lean_object* x_311; uint8_t x_312; +x_311 = lean_int_neg(x_267); +lean_dec(x_267); +x_312 = lean_int_dec_le(x_268, x_311); +if (x_312 == 0) +{ +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; +x_313 = lean_int_neg(x_311); +lean_dec(x_311); +x_314 = l_Int_toNat(x_313); +lean_dec(x_313); +x_315 = l_Lean_instToExprInt_mkNat(x_314); +x_316 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__27; +x_317 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__11; +x_318 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__30; +x_319 = l_Lean_mkApp3(x_316, x_317, x_318, x_315); +x_320 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__35; +x_321 = l_Lean_mkAppB(x_320, x_262, x_319); +x_322 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_307, x_321, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_308); +return x_322; +} +else +{ +lean_object* x_323; lean_object* x_324; lean_object* x_325; lean_object* x_326; lean_object* x_327; +x_323 = l_Int_toNat(x_311); +lean_dec(x_311); +x_324 = l_Lean_instToExprInt_mkNat(x_323); +x_325 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__35; +x_326 = l_Lean_mkAppB(x_325, x_262, x_324); +x_327 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_307, x_326, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_308); +return x_327; } } } else { -uint8_t x_332; -lean_dec(x_271); -lean_dec(x_266); +uint8_t x_328; +lean_dec(x_267); +lean_dec(x_262); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -11035,35 +11076,35 @@ lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_332 = !lean_is_exclusive(x_310); -if (x_332 == 0) +x_328 = !lean_is_exclusive(x_306); +if (x_328 == 0) { -return x_310; +return x_306; } else { -lean_object* x_333; lean_object* x_334; lean_object* x_335; -x_333 = lean_ctor_get(x_310, 0); -x_334 = lean_ctor_get(x_310, 1); -lean_inc(x_334); -lean_inc(x_333); -lean_dec(x_310); -x_335 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_335, 0, x_333); -lean_ctor_set(x_335, 1, x_334); -return x_335; +lean_object* x_329; lean_object* x_330; lean_object* x_331; +x_329 = lean_ctor_get(x_306, 0); +x_330 = lean_ctor_get(x_306, 1); +lean_inc(x_330); +lean_inc(x_329); +lean_dec(x_306); +x_331 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_331, 0, x_329); +lean_ctor_set(x_331, 1, x_330); +return x_331; } } } } else { -lean_object* x_336; lean_object* x_337; lean_object* x_338; -lean_dec(x_271); -x_336 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__38; -x_337 = l_Lean_Expr_app___override(x_336, x_266); -x_338 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_337, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_338; +lean_object* x_332; lean_object* x_333; lean_object* x_334; +lean_dec(x_267); +x_332 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__38; +x_333 = l_Lean_Expr_app___override(x_332, x_262); +x_334 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_333, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_334; } } } @@ -11072,99 +11113,99 @@ return x_338; } else { -lean_object* x_339; uint8_t x_340; +lean_object* x_335; uint8_t x_336; lean_dec(x_21); -x_339 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__39; -x_340 = lean_string_dec_eq(x_20, x_339); +x_335 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__39; +x_336 = lean_string_dec_eq(x_20, x_335); lean_dec(x_20); -if (x_340 == 0) +if (x_336 == 0) { -lean_object* x_341; +lean_object* x_337; lean_dec(x_19); -x_341 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_341; +x_337 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_337; } else { -lean_object* x_342; lean_object* x_343; uint8_t x_344; -x_342 = lean_array_get_size(x_19); -x_343 = lean_unsigned_to_nat(6u); -x_344 = lean_nat_dec_eq(x_342, x_343); -lean_dec(x_342); -if (x_344 == 0) +lean_object* x_338; lean_object* x_339; uint8_t x_340; +x_338 = lean_array_get_size(x_19); +x_339 = lean_unsigned_to_nat(6u); +x_340 = lean_nat_dec_eq(x_338, x_339); +lean_dec(x_338); +if (x_340 == 0) { -lean_object* x_345; +lean_object* x_341; lean_dec(x_19); -x_345 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_345; +x_341 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_341; } else { -lean_object* x_346; lean_object* x_347; lean_object* x_348; lean_object* x_349; lean_object* x_350; -x_346 = lean_unsigned_to_nat(4u); -x_347 = lean_array_fget(x_19, x_346); -x_348 = lean_unsigned_to_nat(5u); -x_349 = lean_array_fget(x_19, x_348); +lean_object* x_342; lean_object* x_343; lean_object* x_344; lean_object* x_345; lean_object* x_346; +x_342 = lean_unsigned_to_nat(4u); +x_343 = lean_array_fget(x_19, x_342); +x_344 = lean_unsigned_to_nat(5u); +x_345 = lean_array_fget(x_19, x_344); lean_dec(x_19); -x_350 = l_Lean_Elab_Tactic_Omega_groundNat_x3f(x_349); -if (lean_obj_tag(x_350) == 0) +x_346 = l_Lean_Elab_Tactic_Omega_groundNat_x3f(x_345); +if (lean_obj_tag(x_346) == 0) { -lean_object* x_351; -lean_dec(x_347); -x_351 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_351; +lean_object* x_347; +lean_dec(x_343); +x_347 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_347; } else { -lean_object* x_352; lean_object* x_353; lean_object* x_354; uint8_t x_355; lean_object* x_356; lean_object* x_357; +lean_object* x_348; lean_object* x_349; lean_object* x_350; uint8_t x_351; lean_object* x_352; lean_object* x_353; lean_dec(x_1); -x_352 = lean_ctor_get(x_350, 0); -lean_inc(x_352); -lean_dec(x_350); -x_353 = lean_nat_to_int(x_352); -x_354 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__8; -x_355 = lean_int_dec_le(x_354, x_353); -x_356 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5; -lean_inc(x_347); -x_357 = lean_array_push(x_356, x_347); -if (x_355 == 0) -{ -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; lean_object* x_366; lean_object* x_367; -x_358 = lean_int_neg(x_353); -lean_dec(x_353); -x_359 = l_Int_toNat(x_358); -lean_dec(x_358); -x_360 = l_Lean_instToExprInt_mkNat(x_359); -x_361 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__31; -x_362 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__11; -x_363 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__30; -x_364 = l_Lean_mkApp3(x_361, x_362, x_363, x_360); -lean_inc(x_364); -x_365 = lean_array_push(x_357, x_364); -x_366 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__40; +x_348 = lean_ctor_get(x_346, 0); +lean_inc(x_348); +lean_dec(x_346); +x_349 = lean_nat_to_int(x_348); +x_350 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__8; +x_351 = lean_int_dec_le(x_350, x_349); +x_352 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; +lean_inc(x_343); +x_353 = lean_array_push(x_352, x_343); +if (x_351 == 0) +{ +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; +x_354 = lean_int_neg(x_349); +lean_dec(x_349); +x_355 = l_Int_toNat(x_354); +lean_dec(x_354); +x_356 = l_Lean_instToExprInt_mkNat(x_355); +x_357 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__31; +x_358 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__11; +x_359 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__30; +x_360 = l_Lean_mkApp3(x_357, x_358, x_359, x_356); +lean_inc(x_360); +x_361 = lean_array_push(x_353, x_360); +x_362 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__40; lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_367 = l_Lean_Meta_mkAppM(x_366, x_365, x_8, x_9, x_10, x_11, x_12); -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, 0); -lean_inc(x_368); -x_369 = lean_ctor_get(x_367, 1); -lean_inc(x_369); -lean_dec(x_367); -x_370 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__43; -x_371 = l_Lean_mkAppB(x_370, x_347, x_364); -x_372 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_368, x_371, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_369); -return x_372; +x_363 = l_Lean_Meta_mkAppM(x_362, x_361, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_363) == 0) +{ +lean_object* x_364; lean_object* x_365; lean_object* x_366; lean_object* x_367; lean_object* x_368; +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 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__43; +x_367 = l_Lean_mkAppB(x_366, x_343, x_360); +x_368 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_364, x_367, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_365); +return x_368; } else { -uint8_t x_373; -lean_dec(x_364); -lean_dec(x_347); +uint8_t x_369; +lean_dec(x_360); +lean_dec(x_343); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -11173,58 +11214,58 @@ lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_373 = !lean_is_exclusive(x_367); -if (x_373 == 0) +x_369 = !lean_is_exclusive(x_363); +if (x_369 == 0) { -return x_367; +return x_363; } 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; +lean_object* x_370; lean_object* x_371; lean_object* x_372; +x_370 = lean_ctor_get(x_363, 0); +x_371 = lean_ctor_get(x_363, 1); +lean_inc(x_371); +lean_inc(x_370); +lean_dec(x_363); +x_372 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_372, 0, x_370); +lean_ctor_set(x_372, 1, x_371); +return x_372; } } } else { -lean_object* x_377; lean_object* x_378; lean_object* x_379; lean_object* x_380; lean_object* x_381; -x_377 = l_Int_toNat(x_353); -lean_dec(x_353); -x_378 = l_Lean_instToExprInt_mkNat(x_377); -lean_inc(x_378); -x_379 = lean_array_push(x_357, x_378); -x_380 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__40; +lean_object* x_373; lean_object* x_374; lean_object* x_375; lean_object* x_376; lean_object* x_377; +x_373 = l_Int_toNat(x_349); +lean_dec(x_349); +x_374 = l_Lean_instToExprInt_mkNat(x_373); +lean_inc(x_374); +x_375 = lean_array_push(x_353, x_374); +x_376 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__40; lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_381 = l_Lean_Meta_mkAppM(x_380, x_379, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_381) == 0) -{ -lean_object* x_382; lean_object* x_383; lean_object* x_384; lean_object* x_385; lean_object* x_386; -x_382 = lean_ctor_get(x_381, 0); -lean_inc(x_382); -x_383 = lean_ctor_get(x_381, 1); -lean_inc(x_383); -lean_dec(x_381); -x_384 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__44; -x_385 = l_Lean_mkAppB(x_384, x_347, x_378); -x_386 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_382, x_385, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_383); -return x_386; +x_377 = l_Lean_Meta_mkAppM(x_376, x_375, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_377) == 0) +{ +lean_object* x_378; lean_object* x_379; lean_object* x_380; lean_object* x_381; lean_object* x_382; +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_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__44; +x_381 = l_Lean_mkAppB(x_380, x_343, x_374); +x_382 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_378, x_381, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_379); +return x_382; } else { -uint8_t x_387; -lean_dec(x_378); -lean_dec(x_347); +uint8_t x_383; +lean_dec(x_374); +lean_dec(x_343); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -11233,23 +11274,23 @@ lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_387 = !lean_is_exclusive(x_381); -if (x_387 == 0) +x_383 = !lean_is_exclusive(x_377); +if (x_383 == 0) { -return x_381; +return x_377; } else { -lean_object* x_388; lean_object* x_389; lean_object* x_390; -x_388 = lean_ctor_get(x_381, 0); -x_389 = lean_ctor_get(x_381, 1); -lean_inc(x_389); -lean_inc(x_388); -lean_dec(x_381); -x_390 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_390, 0, x_388); -lean_ctor_set(x_390, 1, x_389); -return x_390; +lean_object* x_384; lean_object* x_385; lean_object* x_386; +x_384 = lean_ctor_get(x_377, 0); +x_385 = lean_ctor_get(x_377, 1); +lean_inc(x_385); +lean_inc(x_384); +lean_dec(x_377); +x_386 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_386, 0, x_384); +lean_ctor_set(x_386, 1, x_385); +return x_386; } } } @@ -11260,47 +11301,47 @@ return x_390; } else { -lean_object* x_391; uint8_t x_392; +lean_object* x_387; uint8_t x_388; lean_dec(x_21); -x_391 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__45; -x_392 = lean_string_dec_eq(x_20, x_391); +x_387 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__45; +x_388 = lean_string_dec_eq(x_20, x_387); lean_dec(x_20); -if (x_392 == 0) +if (x_388 == 0) { -lean_object* x_393; +lean_object* x_389; lean_dec(x_19); -x_393 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_393; +x_389 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_389; } else { -lean_object* x_394; lean_object* x_395; uint8_t x_396; -x_394 = lean_array_get_size(x_19); -x_395 = lean_unsigned_to_nat(6u); -x_396 = lean_nat_dec_eq(x_394, x_395); -lean_dec(x_394); -if (x_396 == 0) +lean_object* x_390; lean_object* x_391; uint8_t x_392; +x_390 = lean_array_get_size(x_19); +x_391 = lean_unsigned_to_nat(6u); +x_392 = lean_nat_dec_eq(x_390, x_391); +lean_dec(x_390); +if (x_392 == 0) { -lean_object* x_397; +lean_object* x_393; lean_dec(x_19); -x_397 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_397; +x_393 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_393; } else { -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; -x_398 = lean_unsigned_to_nat(4u); -x_399 = lean_array_fget(x_19, x_398); -x_400 = lean_unsigned_to_nat(5u); -x_401 = lean_array_fget(x_19, x_400); +lean_object* x_394; lean_object* x_395; lean_object* x_396; lean_object* x_397; lean_object* x_398; lean_object* x_399; lean_object* x_400; lean_object* x_401; +x_394 = lean_unsigned_to_nat(4u); +x_395 = lean_array_fget(x_19, x_394); +x_396 = lean_unsigned_to_nat(5u); +x_397 = lean_array_fget(x_19, x_396); lean_dec(x_19); -x_402 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearCombo___boxed), 11, 1); -lean_closure_set(x_402, 0, x_399); -x_403 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___boxed), 12, 1); -lean_closure_set(x_403, 0, x_401); -x_404 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_404, 0, x_402); -lean_closure_set(x_404, 1, x_403); +x_398 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearCombo___boxed), 11, 1); +lean_closure_set(x_398, 0, x_395); +x_399 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___boxed), 12, 1); +lean_closure_set(x_399, 0, x_397); +x_400 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_400, 0, x_398); +lean_closure_set(x_400, 1, x_399); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); @@ -11309,24 +11350,24 @@ lean_inc(x_7); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); -x_405 = l_Lean_Elab_Tactic_Omega_commitWhen___rarg(x_404, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_405) == 0) +x_401 = l_Lean_Elab_Tactic_Omega_commitWhen___rarg(x_400, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_401) == 0) { -lean_object* x_406; -x_406 = lean_ctor_get(x_405, 0); -lean_inc(x_406); -if (lean_obj_tag(x_406) == 0) +lean_object* x_402; +x_402 = lean_ctor_get(x_401, 0); +lean_inc(x_402); +if (lean_obj_tag(x_402) == 0) { -lean_object* x_407; lean_object* x_408; -x_407 = lean_ctor_get(x_405, 1); -lean_inc(x_407); -lean_dec(x_405); -x_408 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_407); -return x_408; +lean_object* x_403; lean_object* x_404; +x_403 = lean_ctor_get(x_401, 1); +lean_inc(x_403); +lean_dec(x_401); +x_404 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_403); +return x_404; } else { -uint8_t x_409; +uint8_t x_405; lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -11336,37 +11377,37 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_409 = !lean_is_exclusive(x_405); -if (x_409 == 0) -{ -lean_object* x_410; lean_object* x_411; -x_410 = lean_ctor_get(x_405, 0); -lean_dec(x_410); -x_411 = lean_ctor_get(x_406, 0); -lean_inc(x_411); +x_405 = !lean_is_exclusive(x_401); +if (x_405 == 0) +{ +lean_object* x_406; lean_object* x_407; +x_406 = lean_ctor_get(x_401, 0); lean_dec(x_406); -lean_ctor_set(x_405, 0, x_411); -return x_405; +x_407 = lean_ctor_get(x_402, 0); +lean_inc(x_407); +lean_dec(x_402); +lean_ctor_set(x_401, 0, x_407); +return x_401; } else { -lean_object* x_412; lean_object* x_413; lean_object* x_414; -x_412 = lean_ctor_get(x_405, 1); -lean_inc(x_412); -lean_dec(x_405); -x_413 = lean_ctor_get(x_406, 0); -lean_inc(x_413); -lean_dec(x_406); -x_414 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_414, 0, x_413); -lean_ctor_set(x_414, 1, x_412); -return x_414; +lean_object* x_408; lean_object* x_409; lean_object* x_410; +x_408 = lean_ctor_get(x_401, 1); +lean_inc(x_408); +lean_dec(x_401); +x_409 = lean_ctor_get(x_402, 0); +lean_inc(x_409); +lean_dec(x_402); +x_410 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_410, 0, x_409); +lean_ctor_set(x_410, 1, x_408); +return x_410; } } } else { -uint8_t x_415; +uint8_t x_411; lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -11376,23 +11417,23 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_415 = !lean_is_exclusive(x_405); -if (x_415 == 0) +x_411 = !lean_is_exclusive(x_401); +if (x_411 == 0) { -return x_405; +return x_401; } else { -lean_object* x_416; lean_object* x_417; lean_object* x_418; -x_416 = lean_ctor_get(x_405, 0); -x_417 = lean_ctor_get(x_405, 1); -lean_inc(x_417); -lean_inc(x_416); -lean_dec(x_405); -x_418 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_418, 0, x_416); -lean_ctor_set(x_418, 1, x_417); -return x_418; +lean_object* x_412; lean_object* x_413; lean_object* x_414; +x_412 = lean_ctor_get(x_401, 0); +x_413 = lean_ctor_get(x_401, 1); +lean_inc(x_413); +lean_inc(x_412); +lean_dec(x_401); +x_414 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_414, 0, x_412); +lean_ctor_set(x_414, 1, x_413); +return x_414; } } } @@ -11401,221 +11442,221 @@ return x_418; } else { -lean_object* x_419; uint8_t x_420; +lean_object* x_415; uint8_t x_416; lean_dec(x_21); -x_419 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__23; -x_420 = lean_string_dec_eq(x_20, x_419); +x_415 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__23; +x_416 = lean_string_dec_eq(x_20, x_415); lean_dec(x_20); -if (x_420 == 0) +if (x_416 == 0) { -lean_object* x_421; +lean_object* x_417; lean_dec(x_19); -x_421 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_421; +x_417 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_417; } else { -lean_object* x_422; lean_object* x_423; uint8_t x_424; -x_422 = lean_array_get_size(x_19); -x_423 = lean_unsigned_to_nat(3u); -x_424 = lean_nat_dec_eq(x_422, x_423); -lean_dec(x_422); -if (x_424 == 0) +lean_object* x_418; lean_object* x_419; uint8_t x_420; +x_418 = lean_array_get_size(x_19); +x_419 = lean_unsigned_to_nat(3u); +x_420 = lean_nat_dec_eq(x_418, x_419); +lean_dec(x_418); +if (x_420 == 0) { -lean_object* x_425; +lean_object* x_421; lean_dec(x_19); -x_425 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_425; +x_421 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_421; } else { -lean_object* x_426; lean_object* x_427; lean_object* x_428; +lean_object* x_422; lean_object* x_423; lean_object* x_424; lean_dec(x_1); -x_426 = lean_unsigned_to_nat(2u); -x_427 = lean_array_fget(x_19, x_426); +x_422 = lean_unsigned_to_nat(2u); +x_423 = lean_array_fget(x_19, x_422); lean_dec(x_19); -x_428 = l_Lean_Elab_Tactic_Omega_asLinearCombo(x_427, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_428) == 0) +x_424 = l_Lean_Elab_Tactic_Omega_asLinearCombo(x_423, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_424) == 0) +{ +lean_object* x_425; lean_object* x_426; uint8_t x_427; +x_425 = lean_ctor_get(x_424, 0); +lean_inc(x_425); +x_426 = lean_ctor_get(x_425, 1); +lean_inc(x_426); +x_427 = !lean_is_exclusive(x_424); +if (x_427 == 0) { -lean_object* x_429; lean_object* x_430; uint8_t x_431; -x_429 = lean_ctor_get(x_428, 0); -lean_inc(x_429); -x_430 = lean_ctor_get(x_429, 1); +lean_object* x_428; uint8_t x_429; +x_428 = lean_ctor_get(x_424, 0); +lean_dec(x_428); +x_429 = !lean_is_exclusive(x_425); +if (x_429 == 0) +{ +lean_object* x_430; lean_object* x_431; uint8_t x_432; +x_430 = lean_ctor_get(x_425, 0); +x_431 = lean_ctor_get(x_425, 1); +lean_dec(x_431); +x_432 = !lean_is_exclusive(x_426); +if (x_432 == 0) +{ +lean_object* x_433; lean_object* x_434; lean_object* x_435; lean_object* x_436; lean_object* x_437; +x_433 = lean_ctor_get(x_426, 0); +lean_inc(x_430); +x_434 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___boxed), 13, 2); +lean_closure_set(x_434, 0, x_430); +lean_closure_set(x_434, 1, x_433); +x_435 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; +x_436 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_436, 0, x_435); +lean_closure_set(x_436, 1, x_434); +x_437 = l_Lean_Omega_LinearCombo_neg(x_430); +lean_ctor_set(x_426, 0, x_436); +lean_ctor_set(x_425, 0, x_437); +return x_424; +} +else +{ +lean_object* x_438; lean_object* x_439; lean_object* x_440; lean_object* x_441; lean_object* x_442; lean_object* x_443; lean_object* x_444; +x_438 = lean_ctor_get(x_426, 0); +x_439 = lean_ctor_get(x_426, 1); +lean_inc(x_439); +lean_inc(x_438); +lean_dec(x_426); lean_inc(x_430); -x_431 = !lean_is_exclusive(x_428); -if (x_431 == 0) -{ -lean_object* x_432; uint8_t x_433; -x_432 = lean_ctor_get(x_428, 0); -lean_dec(x_432); -x_433 = !lean_is_exclusive(x_429); -if (x_433 == 0) -{ -lean_object* x_434; lean_object* x_435; uint8_t x_436; -x_434 = lean_ctor_get(x_429, 0); -x_435 = lean_ctor_get(x_429, 1); -lean_dec(x_435); -x_436 = !lean_is_exclusive(x_430); -if (x_436 == 0) -{ -lean_object* x_437; lean_object* x_438; lean_object* x_439; lean_object* x_440; lean_object* x_441; -x_437 = lean_ctor_get(x_430, 0); -lean_inc(x_434); -x_438 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___boxed), 13, 2); -lean_closure_set(x_438, 0, x_434); -lean_closure_set(x_438, 1, x_437); -x_439 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; -x_440 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_440, 0, x_439); +x_440 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___boxed), 13, 2); +lean_closure_set(x_440, 0, x_430); lean_closure_set(x_440, 1, x_438); -x_441 = l_Lean_Omega_LinearCombo_neg(x_434); -lean_ctor_set(x_430, 0, x_440); -lean_ctor_set(x_429, 0, x_441); -return x_428; -} -else -{ -lean_object* x_442; lean_object* x_443; lean_object* x_444; lean_object* x_445; lean_object* x_446; lean_object* x_447; lean_object* x_448; -x_442 = lean_ctor_get(x_430, 0); -x_443 = lean_ctor_get(x_430, 1); -lean_inc(x_443); -lean_inc(x_442); -lean_dec(x_430); -lean_inc(x_434); -x_444 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___boxed), 13, 2); -lean_closure_set(x_444, 0, x_434); -lean_closure_set(x_444, 1, x_442); -x_445 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; -x_446 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_446, 0, x_445); -lean_closure_set(x_446, 1, x_444); -x_447 = l_Lean_Omega_LinearCombo_neg(x_434); -x_448 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_448, 0, x_446); -lean_ctor_set(x_448, 1, x_443); -lean_ctor_set(x_429, 1, x_448); -lean_ctor_set(x_429, 0, x_447); -return x_428; -} -} -else -{ -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_object* x_457; lean_object* x_458; -x_449 = lean_ctor_get(x_429, 0); -lean_inc(x_449); -lean_dec(x_429); -x_450 = lean_ctor_get(x_430, 0); -lean_inc(x_450); -x_451 = lean_ctor_get(x_430, 1); -lean_inc(x_451); -if (lean_is_exclusive(x_430)) { - lean_ctor_release(x_430, 0); - lean_ctor_release(x_430, 1); - x_452 = x_430; -} else { - lean_dec_ref(x_430); - x_452 = lean_box(0); -} -lean_inc(x_449); -x_453 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___boxed), 13, 2); -lean_closure_set(x_453, 0, x_449); -lean_closure_set(x_453, 1, x_450); -x_454 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; -x_455 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_455, 0, x_454); -lean_closure_set(x_455, 1, x_453); -x_456 = l_Lean_Omega_LinearCombo_neg(x_449); -if (lean_is_scalar(x_452)) { - x_457 = lean_alloc_ctor(0, 2, 0); +x_441 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; +x_442 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_442, 0, x_441); +lean_closure_set(x_442, 1, x_440); +x_443 = l_Lean_Omega_LinearCombo_neg(x_430); +x_444 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_444, 0, x_442); +lean_ctor_set(x_444, 1, x_439); +lean_ctor_set(x_425, 1, x_444); +lean_ctor_set(x_425, 0, x_443); +return x_424; +} +} +else +{ +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; +x_445 = lean_ctor_get(x_425, 0); +lean_inc(x_445); +lean_dec(x_425); +x_446 = lean_ctor_get(x_426, 0); +lean_inc(x_446); +x_447 = lean_ctor_get(x_426, 1); +lean_inc(x_447); +if (lean_is_exclusive(x_426)) { + lean_ctor_release(x_426, 0); + lean_ctor_release(x_426, 1); + x_448 = x_426; +} else { + lean_dec_ref(x_426); + x_448 = lean_box(0); +} +lean_inc(x_445); +x_449 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___boxed), 13, 2); +lean_closure_set(x_449, 0, x_445); +lean_closure_set(x_449, 1, x_446); +x_450 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; +x_451 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_451, 0, x_450); +lean_closure_set(x_451, 1, x_449); +x_452 = l_Lean_Omega_LinearCombo_neg(x_445); +if (lean_is_scalar(x_448)) { + x_453 = lean_alloc_ctor(0, 2, 0); } else { - x_457 = x_452; + x_453 = x_448; } -lean_ctor_set(x_457, 0, x_455); -lean_ctor_set(x_457, 1, x_451); -x_458 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_458, 0, x_456); -lean_ctor_set(x_458, 1, x_457); -lean_ctor_set(x_428, 0, x_458); -return x_428; +lean_ctor_set(x_453, 0, x_451); +lean_ctor_set(x_453, 1, x_447); +x_454 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_454, 0, x_452); +lean_ctor_set(x_454, 1, x_453); +lean_ctor_set(x_424, 0, x_454); +return x_424; } } else { -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; lean_object* x_468; lean_object* x_469; lean_object* x_470; lean_object* x_471; -x_459 = lean_ctor_get(x_428, 1); -lean_inc(x_459); -lean_dec(x_428); -x_460 = lean_ctor_get(x_429, 0); -lean_inc(x_460); -if (lean_is_exclusive(x_429)) { - lean_ctor_release(x_429, 0); - lean_ctor_release(x_429, 1); - x_461 = x_429; +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_455 = lean_ctor_get(x_424, 1); +lean_inc(x_455); +lean_dec(x_424); +x_456 = lean_ctor_get(x_425, 0); +lean_inc(x_456); +if (lean_is_exclusive(x_425)) { + lean_ctor_release(x_425, 0); + lean_ctor_release(x_425, 1); + x_457 = x_425; } else { - lean_dec_ref(x_429); - x_461 = lean_box(0); -} -x_462 = lean_ctor_get(x_430, 0); -lean_inc(x_462); -x_463 = lean_ctor_get(x_430, 1); -lean_inc(x_463); -if (lean_is_exclusive(x_430)) { - lean_ctor_release(x_430, 0); - lean_ctor_release(x_430, 1); - x_464 = x_430; + lean_dec_ref(x_425); + x_457 = lean_box(0); +} +x_458 = lean_ctor_get(x_426, 0); +lean_inc(x_458); +x_459 = lean_ctor_get(x_426, 1); +lean_inc(x_459); +if (lean_is_exclusive(x_426)) { + lean_ctor_release(x_426, 0); + lean_ctor_release(x_426, 1); + x_460 = x_426; } else { - lean_dec_ref(x_430); - x_464 = lean_box(0); -} -lean_inc(x_460); -x_465 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___boxed), 13, 2); -lean_closure_set(x_465, 0, x_460); -lean_closure_set(x_465, 1, x_462); -x_466 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; -x_467 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_467, 0, x_466); -lean_closure_set(x_467, 1, x_465); -x_468 = l_Lean_Omega_LinearCombo_neg(x_460); -if (lean_is_scalar(x_464)) { - x_469 = lean_alloc_ctor(0, 2, 0); + lean_dec_ref(x_426); + x_460 = lean_box(0); +} +lean_inc(x_456); +x_461 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___boxed), 13, 2); +lean_closure_set(x_461, 0, x_456); +lean_closure_set(x_461, 1, x_458); +x_462 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; +x_463 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_463, 0, x_462); +lean_closure_set(x_463, 1, x_461); +x_464 = l_Lean_Omega_LinearCombo_neg(x_456); +if (lean_is_scalar(x_460)) { + x_465 = lean_alloc_ctor(0, 2, 0); } else { - x_469 = x_464; + x_465 = x_460; } -lean_ctor_set(x_469, 0, x_467); -lean_ctor_set(x_469, 1, x_463); -if (lean_is_scalar(x_461)) { - x_470 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_465, 0, x_463); +lean_ctor_set(x_465, 1, x_459); +if (lean_is_scalar(x_457)) { + x_466 = lean_alloc_ctor(0, 2, 0); } else { - x_470 = x_461; + x_466 = x_457; } -lean_ctor_set(x_470, 0, x_468); -lean_ctor_set(x_470, 1, x_469); -x_471 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_471, 0, x_470); -lean_ctor_set(x_471, 1, x_459); -return x_471; +lean_ctor_set(x_466, 0, x_464); +lean_ctor_set(x_466, 1, x_465); +x_467 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_467, 0, x_466); +lean_ctor_set(x_467, 1, x_455); +return x_467; } } else { -uint8_t x_472; -x_472 = !lean_is_exclusive(x_428); -if (x_472 == 0) +uint8_t x_468; +x_468 = !lean_is_exclusive(x_424); +if (x_468 == 0) { -return x_428; +return x_424; } else { -lean_object* x_473; lean_object* x_474; lean_object* x_475; -x_473 = lean_ctor_get(x_428, 0); -x_474 = lean_ctor_get(x_428, 1); -lean_inc(x_474); -lean_inc(x_473); -lean_dec(x_428); -x_475 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_475, 0, x_473); -lean_ctor_set(x_475, 1, x_474); -return x_475; +lean_object* x_469; lean_object* x_470; lean_object* x_471; +x_469 = lean_ctor_get(x_424, 0); +x_470 = lean_ctor_get(x_424, 1); +lean_inc(x_470); +lean_inc(x_469); +lean_dec(x_424); +x_471 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_471, 0, x_469); +lean_ctor_set(x_471, 1, x_470); +return x_471; } } } @@ -11624,40 +11665,40 @@ return x_475; } else { -lean_object* x_476; uint8_t x_477; +lean_object* x_472; uint8_t x_473; lean_dec(x_21); -x_476 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__47; -x_477 = lean_string_dec_eq(x_20, x_476); +x_472 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__47; +x_473 = lean_string_dec_eq(x_20, x_472); lean_dec(x_20); -if (x_477 == 0) +if (x_473 == 0) { -lean_object* x_478; +lean_object* x_474; lean_dec(x_19); -x_478 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_478; +x_474 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_474; } else { -lean_object* x_479; lean_object* x_480; uint8_t x_481; -x_479 = lean_array_get_size(x_19); -x_480 = lean_unsigned_to_nat(6u); -x_481 = lean_nat_dec_eq(x_479, x_480); -lean_dec(x_479); -if (x_481 == 0) +lean_object* x_475; lean_object* x_476; uint8_t x_477; +x_475 = lean_array_get_size(x_19); +x_476 = lean_unsigned_to_nat(6u); +x_477 = lean_nat_dec_eq(x_475, x_476); +lean_dec(x_475); +if (x_477 == 0) { -lean_object* x_482; +lean_object* x_478; lean_dec(x_19); -x_482 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_482; +x_478 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_478; } else { -lean_object* x_483; lean_object* x_484; lean_object* x_485; lean_object* x_486; lean_object* x_487; +lean_object* x_479; lean_object* x_480; lean_object* x_481; lean_object* x_482; lean_object* x_483; lean_dec(x_1); -x_483 = lean_unsigned_to_nat(4u); -x_484 = lean_array_fget(x_19, x_483); -x_485 = lean_unsigned_to_nat(5u); -x_486 = lean_array_fget(x_19, x_485); +x_479 = lean_unsigned_to_nat(4u); +x_480 = lean_array_fget(x_19, x_479); +x_481 = lean_unsigned_to_nat(5u); +x_482 = lean_array_fget(x_19, x_481); lean_dec(x_19); lean_inc(x_11); lean_inc(x_10); @@ -11667,437 +11708,437 @@ lean_inc(x_7); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); -x_487 = l_Lean_Elab_Tactic_Omega_asLinearCombo(x_484, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_487) == 0) -{ -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; -x_488 = lean_ctor_get(x_487, 0); +x_483 = l_Lean_Elab_Tactic_Omega_asLinearCombo(x_480, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_483) == 0) +{ +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; +x_484 = lean_ctor_get(x_483, 0); +lean_inc(x_484); +x_485 = lean_ctor_get(x_484, 1); +lean_inc(x_485); +x_486 = lean_ctor_get(x_483, 1); +lean_inc(x_486); +lean_dec(x_483); +x_487 = lean_ctor_get(x_484, 0); +lean_inc(x_487); +lean_dec(x_484); +x_488 = lean_ctor_get(x_485, 0); lean_inc(x_488); -x_489 = lean_ctor_get(x_488, 1); +x_489 = lean_ctor_get(x_485, 1); lean_inc(x_489); -x_490 = lean_ctor_get(x_487, 1); -lean_inc(x_490); -lean_dec(x_487); -x_491 = lean_ctor_get(x_488, 0); +lean_dec(x_485); +x_490 = l_Lean_Elab_Tactic_Omega_asLinearCombo(x_482, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_486); +if (lean_obj_tag(x_490) == 0) +{ +lean_object* x_491; lean_object* x_492; uint8_t x_493; +x_491 = lean_ctor_get(x_490, 0); lean_inc(x_491); -lean_dec(x_488); -x_492 = lean_ctor_get(x_489, 0); +x_492 = lean_ctor_get(x_491, 1); lean_inc(x_492); -x_493 = lean_ctor_get(x_489, 1); -lean_inc(x_493); -lean_dec(x_489); -x_494 = l_Lean_Elab_Tactic_Omega_asLinearCombo(x_486, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_490); -if (lean_obj_tag(x_494) == 0) +x_493 = !lean_is_exclusive(x_490); +if (x_493 == 0) { -lean_object* x_495; lean_object* x_496; uint8_t x_497; -x_495 = lean_ctor_get(x_494, 0); -lean_inc(x_495); -x_496 = lean_ctor_get(x_495, 1); +lean_object* x_494; uint8_t x_495; +x_494 = lean_ctor_get(x_490, 0); +lean_dec(x_494); +x_495 = !lean_is_exclusive(x_491); +if (x_495 == 0) +{ +lean_object* x_496; lean_object* x_497; uint8_t x_498; +x_496 = lean_ctor_get(x_491, 0); +x_497 = lean_ctor_get(x_491, 1); +lean_dec(x_497); +x_498 = !lean_is_exclusive(x_492); +if (x_498 == 0) +{ +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; uint8_t x_508; +x_499 = lean_ctor_get(x_492, 0); +x_500 = lean_ctor_get(x_492, 1); lean_inc(x_496); -x_497 = !lean_is_exclusive(x_494); -if (x_497 == 0) -{ -lean_object* x_498; uint8_t x_499; -x_498 = lean_ctor_get(x_494, 0); -lean_dec(x_498); -x_499 = !lean_is_exclusive(x_495); -if (x_499 == 0) -{ -lean_object* x_500; lean_object* x_501; uint8_t x_502; -x_500 = lean_ctor_get(x_495, 0); -x_501 = lean_ctor_get(x_495, 1); -lean_dec(x_501); -x_502 = !lean_is_exclusive(x_496); -if (x_502 == 0) -{ -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; uint8_t x_512; -x_503 = lean_ctor_get(x_496, 0); -x_504 = lean_ctor_get(x_496, 1); -lean_inc(x_500); -lean_inc(x_491); -x_505 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___boxed), 15, 4); -lean_closure_set(x_505, 0, x_491); -lean_closure_set(x_505, 1, x_500); -lean_closure_set(x_505, 2, x_492); -lean_closure_set(x_505, 3, x_503); -x_506 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; -x_507 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_507, 0, x_506); -lean_closure_set(x_507, 1, x_505); -x_508 = l_Lean_Omega_LinearCombo_sub(x_491, x_500); -x_509 = lean_ctor_get(x_504, 1); -lean_inc(x_509); -lean_dec(x_504); -x_510 = lean_array_get_size(x_509); -x_511 = lean_unsigned_to_nat(0u); -x_512 = lean_nat_dec_lt(x_511, x_510); -if (x_512 == 0) -{ -lean_dec(x_510); -lean_dec(x_509); -lean_ctor_set(x_496, 1, x_493); -lean_ctor_set(x_496, 0, x_507); -lean_ctor_set(x_495, 0, x_508); -return x_494; -} -else -{ -uint8_t x_513; -x_513 = lean_nat_dec_le(x_510, x_510); -if (x_513 == 0) -{ -lean_dec(x_510); -lean_dec(x_509); -lean_ctor_set(x_496, 1, x_493); -lean_ctor_set(x_496, 0, x_507); -lean_ctor_set(x_495, 0, x_508); -return x_494; -} -else -{ -size_t x_514; size_t x_515; lean_object* x_516; -x_514 = 0; -x_515 = lean_usize_of_nat(x_510); -lean_dec(x_510); -x_516 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_509, x_514, x_515, x_493); -lean_dec(x_509); -lean_ctor_set(x_496, 1, x_516); -lean_ctor_set(x_496, 0, x_507); -lean_ctor_set(x_495, 0, x_508); -return x_494; -} -} -} -else -{ -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; uint8_t x_526; -x_517 = lean_ctor_get(x_496, 0); -x_518 = lean_ctor_get(x_496, 1); -lean_inc(x_518); -lean_inc(x_517); -lean_dec(x_496); -lean_inc(x_500); -lean_inc(x_491); -x_519 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___boxed), 15, 4); -lean_closure_set(x_519, 0, x_491); -lean_closure_set(x_519, 1, x_500); -lean_closure_set(x_519, 2, x_492); -lean_closure_set(x_519, 3, x_517); -x_520 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; -x_521 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_521, 0, x_520); -lean_closure_set(x_521, 1, x_519); -x_522 = l_Lean_Omega_LinearCombo_sub(x_491, x_500); -x_523 = lean_ctor_get(x_518, 1); -lean_inc(x_523); -lean_dec(x_518); -x_524 = lean_array_get_size(x_523); -x_525 = lean_unsigned_to_nat(0u); -x_526 = lean_nat_dec_lt(x_525, x_524); -if (x_526 == 0) -{ -lean_object* x_527; -lean_dec(x_524); -lean_dec(x_523); -x_527 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_527, 0, x_521); -lean_ctor_set(x_527, 1, x_493); -lean_ctor_set(x_495, 1, x_527); -lean_ctor_set(x_495, 0, x_522); -return x_494; -} -else -{ -uint8_t x_528; -x_528 = lean_nat_dec_le(x_524, x_524); -if (x_528 == 0) -{ -lean_object* x_529; -lean_dec(x_524); -lean_dec(x_523); -x_529 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_529, 0, x_521); -lean_ctor_set(x_529, 1, x_493); -lean_ctor_set(x_495, 1, x_529); -lean_ctor_set(x_495, 0, x_522); -return x_494; +lean_inc(x_487); +x_501 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___boxed), 15, 4); +lean_closure_set(x_501, 0, x_487); +lean_closure_set(x_501, 1, x_496); +lean_closure_set(x_501, 2, x_488); +lean_closure_set(x_501, 3, x_499); +x_502 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; +x_503 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_503, 0, x_502); +lean_closure_set(x_503, 1, x_501); +x_504 = l_Lean_Omega_LinearCombo_sub(x_487, x_496); +x_505 = lean_ctor_get(x_500, 1); +lean_inc(x_505); +lean_dec(x_500); +x_506 = lean_array_get_size(x_505); +x_507 = lean_unsigned_to_nat(0u); +x_508 = lean_nat_dec_lt(x_507, x_506); +if (x_508 == 0) +{ +lean_dec(x_506); +lean_dec(x_505); +lean_ctor_set(x_492, 1, x_489); +lean_ctor_set(x_492, 0, x_503); +lean_ctor_set(x_491, 0, x_504); +return x_490; +} +else +{ +uint8_t x_509; +x_509 = lean_nat_dec_le(x_506, x_506); +if (x_509 == 0) +{ +lean_dec(x_506); +lean_dec(x_505); +lean_ctor_set(x_492, 1, x_489); +lean_ctor_set(x_492, 0, x_503); +lean_ctor_set(x_491, 0, x_504); +return x_490; +} +else +{ +size_t x_510; size_t x_511; lean_object* x_512; +x_510 = 0; +x_511 = lean_usize_of_nat(x_506); +lean_dec(x_506); +x_512 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_505, x_510, x_511, x_489); +lean_dec(x_505); +lean_ctor_set(x_492, 1, x_512); +lean_ctor_set(x_492, 0, x_503); +lean_ctor_set(x_491, 0, x_504); +return x_490; +} +} +} +else +{ +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; uint8_t x_522; +x_513 = lean_ctor_get(x_492, 0); +x_514 = lean_ctor_get(x_492, 1); +lean_inc(x_514); +lean_inc(x_513); +lean_dec(x_492); +lean_inc(x_496); +lean_inc(x_487); +x_515 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___boxed), 15, 4); +lean_closure_set(x_515, 0, x_487); +lean_closure_set(x_515, 1, x_496); +lean_closure_set(x_515, 2, x_488); +lean_closure_set(x_515, 3, x_513); +x_516 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; +x_517 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_517, 0, x_516); +lean_closure_set(x_517, 1, x_515); +x_518 = l_Lean_Omega_LinearCombo_sub(x_487, x_496); +x_519 = lean_ctor_get(x_514, 1); +lean_inc(x_519); +lean_dec(x_514); +x_520 = lean_array_get_size(x_519); +x_521 = lean_unsigned_to_nat(0u); +x_522 = lean_nat_dec_lt(x_521, x_520); +if (x_522 == 0) +{ +lean_object* x_523; +lean_dec(x_520); +lean_dec(x_519); +x_523 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_523, 0, x_517); +lean_ctor_set(x_523, 1, x_489); +lean_ctor_set(x_491, 1, x_523); +lean_ctor_set(x_491, 0, x_518); +return x_490; } else { -size_t x_530; size_t x_531; lean_object* x_532; lean_object* x_533; -x_530 = 0; -x_531 = lean_usize_of_nat(x_524); -lean_dec(x_524); -x_532 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_523, x_530, x_531, x_493); -lean_dec(x_523); -x_533 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_533, 0, x_521); -lean_ctor_set(x_533, 1, x_532); -lean_ctor_set(x_495, 1, x_533); -lean_ctor_set(x_495, 0, x_522); -return x_494; -} -} -} +uint8_t x_524; +x_524 = lean_nat_dec_le(x_520, x_520); +if (x_524 == 0) +{ +lean_object* x_525; +lean_dec(x_520); +lean_dec(x_519); +x_525 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_525, 0, x_517); +lean_ctor_set(x_525, 1, x_489); +lean_ctor_set(x_491, 1, x_525); +lean_ctor_set(x_491, 0, x_518); +return x_490; } else { -lean_object* x_534; 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; uint8_t x_545; -x_534 = lean_ctor_get(x_495, 0); -lean_inc(x_534); -lean_dec(x_495); -x_535 = lean_ctor_get(x_496, 0); -lean_inc(x_535); -x_536 = lean_ctor_get(x_496, 1); -lean_inc(x_536); -if (lean_is_exclusive(x_496)) { - lean_ctor_release(x_496, 0); - lean_ctor_release(x_496, 1); - x_537 = x_496; -} else { - lean_dec_ref(x_496); - x_537 = lean_box(0); -} -lean_inc(x_534); -lean_inc(x_491); -x_538 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___boxed), 15, 4); -lean_closure_set(x_538, 0, x_491); -lean_closure_set(x_538, 1, x_534); -lean_closure_set(x_538, 2, x_492); -lean_closure_set(x_538, 3, x_535); -x_539 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; -x_540 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_540, 0, x_539); -lean_closure_set(x_540, 1, x_538); -x_541 = l_Lean_Omega_LinearCombo_sub(x_491, x_534); -x_542 = lean_ctor_get(x_536, 1); -lean_inc(x_542); -lean_dec(x_536); -x_543 = lean_array_get_size(x_542); -x_544 = lean_unsigned_to_nat(0u); -x_545 = lean_nat_dec_lt(x_544, x_543); -if (x_545 == 0) -{ -lean_object* x_546; lean_object* x_547; -lean_dec(x_543); -lean_dec(x_542); -if (lean_is_scalar(x_537)) { - x_546 = lean_alloc_ctor(0, 2, 0); -} else { - x_546 = x_537; +size_t x_526; size_t x_527; lean_object* x_528; lean_object* x_529; +x_526 = 0; +x_527 = lean_usize_of_nat(x_520); +lean_dec(x_520); +x_528 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_519, x_526, x_527, x_489); +lean_dec(x_519); +x_529 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_529, 0, x_517); +lean_ctor_set(x_529, 1, x_528); +lean_ctor_set(x_491, 1, x_529); +lean_ctor_set(x_491, 0, x_518); +return x_490; } -lean_ctor_set(x_546, 0, x_540); -lean_ctor_set(x_546, 1, x_493); -x_547 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_547, 0, x_541); -lean_ctor_set(x_547, 1, x_546); -lean_ctor_set(x_494, 0, x_547); -return x_494; } -else -{ -uint8_t x_548; -x_548 = lean_nat_dec_le(x_543, x_543); -if (x_548 == 0) -{ -lean_object* x_549; lean_object* x_550; -lean_dec(x_543); -lean_dec(x_542); -if (lean_is_scalar(x_537)) { - x_549 = lean_alloc_ctor(0, 2, 0); -} else { - x_549 = x_537; } -lean_ctor_set(x_549, 0, x_540); -lean_ctor_set(x_549, 1, x_493); -x_550 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_550, 0, x_541); -lean_ctor_set(x_550, 1, x_549); -lean_ctor_set(x_494, 0, x_550); -return x_494; } else { -size_t x_551; size_t x_552; lean_object* x_553; lean_object* x_554; lean_object* x_555; -x_551 = 0; -x_552 = lean_usize_of_nat(x_543); -lean_dec(x_543); -x_553 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_542, x_551, x_552, x_493); -lean_dec(x_542); -if (lean_is_scalar(x_537)) { - x_554 = lean_alloc_ctor(0, 2, 0); -} else { - x_554 = x_537; -} -lean_ctor_set(x_554, 0, x_540); -lean_ctor_set(x_554, 1, x_553); -x_555 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_555, 0, x_541); -lean_ctor_set(x_555, 1, x_554); -lean_ctor_set(x_494, 0, x_555); -return x_494; +lean_object* x_530; lean_object* x_531; lean_object* x_532; lean_object* x_533; lean_object* x_534; lean_object* x_535; lean_object* x_536; lean_object* x_537; lean_object* x_538; lean_object* x_539; lean_object* x_540; uint8_t x_541; +x_530 = lean_ctor_get(x_491, 0); +lean_inc(x_530); +lean_dec(x_491); +x_531 = lean_ctor_get(x_492, 0); +lean_inc(x_531); +x_532 = lean_ctor_get(x_492, 1); +lean_inc(x_532); +if (lean_is_exclusive(x_492)) { + lean_ctor_release(x_492, 0); + lean_ctor_release(x_492, 1); + x_533 = x_492; +} else { + lean_dec_ref(x_492); + x_533 = lean_box(0); +} +lean_inc(x_530); +lean_inc(x_487); +x_534 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___boxed), 15, 4); +lean_closure_set(x_534, 0, x_487); +lean_closure_set(x_534, 1, x_530); +lean_closure_set(x_534, 2, x_488); +lean_closure_set(x_534, 3, x_531); +x_535 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; +x_536 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_536, 0, x_535); +lean_closure_set(x_536, 1, x_534); +x_537 = l_Lean_Omega_LinearCombo_sub(x_487, x_530); +x_538 = lean_ctor_get(x_532, 1); +lean_inc(x_538); +lean_dec(x_532); +x_539 = lean_array_get_size(x_538); +x_540 = lean_unsigned_to_nat(0u); +x_541 = lean_nat_dec_lt(x_540, x_539); +if (x_541 == 0) +{ +lean_object* x_542; lean_object* x_543; +lean_dec(x_539); +lean_dec(x_538); +if (lean_is_scalar(x_533)) { + x_542 = lean_alloc_ctor(0, 2, 0); +} else { + x_542 = x_533; +} +lean_ctor_set(x_542, 0, x_536); +lean_ctor_set(x_542, 1, x_489); +x_543 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_543, 0, x_537); +lean_ctor_set(x_543, 1, x_542); +lean_ctor_set(x_490, 0, x_543); +return x_490; +} +else +{ +uint8_t x_544; +x_544 = lean_nat_dec_le(x_539, x_539); +if (x_544 == 0) +{ +lean_object* x_545; lean_object* x_546; +lean_dec(x_539); +lean_dec(x_538); +if (lean_is_scalar(x_533)) { + x_545 = lean_alloc_ctor(0, 2, 0); +} else { + x_545 = x_533; +} +lean_ctor_set(x_545, 0, x_536); +lean_ctor_set(x_545, 1, x_489); +x_546 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_546, 0, x_537); +lean_ctor_set(x_546, 1, x_545); +lean_ctor_set(x_490, 0, x_546); +return x_490; +} +else +{ +size_t x_547; size_t x_548; lean_object* x_549; lean_object* x_550; lean_object* x_551; +x_547 = 0; +x_548 = lean_usize_of_nat(x_539); +lean_dec(x_539); +x_549 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_538, x_547, x_548, x_489); +lean_dec(x_538); +if (lean_is_scalar(x_533)) { + x_550 = lean_alloc_ctor(0, 2, 0); +} else { + x_550 = x_533; +} +lean_ctor_set(x_550, 0, x_536); +lean_ctor_set(x_550, 1, x_549); +x_551 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_551, 0, x_537); +lean_ctor_set(x_551, 1, x_550); +lean_ctor_set(x_490, 0, x_551); +return x_490; } } } } else { -lean_object* x_556; lean_object* x_557; lean_object* x_558; 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_object* x_567; lean_object* x_568; uint8_t x_569; -x_556 = lean_ctor_get(x_494, 1); -lean_inc(x_556); -lean_dec(x_494); -x_557 = lean_ctor_get(x_495, 0); -lean_inc(x_557); -if (lean_is_exclusive(x_495)) { - lean_ctor_release(x_495, 0); - lean_ctor_release(x_495, 1); - x_558 = x_495; +lean_object* x_552; lean_object* x_553; lean_object* x_554; lean_object* x_555; lean_object* x_556; lean_object* x_557; lean_object* x_558; lean_object* x_559; lean_object* x_560; lean_object* x_561; lean_object* x_562; lean_object* x_563; lean_object* x_564; uint8_t x_565; +x_552 = lean_ctor_get(x_490, 1); +lean_inc(x_552); +lean_dec(x_490); +x_553 = lean_ctor_get(x_491, 0); +lean_inc(x_553); +if (lean_is_exclusive(x_491)) { + lean_ctor_release(x_491, 0); + lean_ctor_release(x_491, 1); + x_554 = x_491; } else { - lean_dec_ref(x_495); - x_558 = lean_box(0); -} -x_559 = lean_ctor_get(x_496, 0); -lean_inc(x_559); -x_560 = lean_ctor_get(x_496, 1); -lean_inc(x_560); -if (lean_is_exclusive(x_496)) { - lean_ctor_release(x_496, 0); - lean_ctor_release(x_496, 1); - x_561 = x_496; + lean_dec_ref(x_491); + x_554 = lean_box(0); +} +x_555 = lean_ctor_get(x_492, 0); +lean_inc(x_555); +x_556 = lean_ctor_get(x_492, 1); +lean_inc(x_556); +if (lean_is_exclusive(x_492)) { + lean_ctor_release(x_492, 0); + lean_ctor_release(x_492, 1); + x_557 = x_492; +} else { + lean_dec_ref(x_492); + x_557 = lean_box(0); +} +lean_inc(x_553); +lean_inc(x_487); +x_558 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___boxed), 15, 4); +lean_closure_set(x_558, 0, x_487); +lean_closure_set(x_558, 1, x_553); +lean_closure_set(x_558, 2, x_488); +lean_closure_set(x_558, 3, x_555); +x_559 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; +x_560 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_560, 0, x_559); +lean_closure_set(x_560, 1, x_558); +x_561 = l_Lean_Omega_LinearCombo_sub(x_487, x_553); +x_562 = lean_ctor_get(x_556, 1); +lean_inc(x_562); +lean_dec(x_556); +x_563 = lean_array_get_size(x_562); +x_564 = lean_unsigned_to_nat(0u); +x_565 = lean_nat_dec_lt(x_564, x_563); +if (x_565 == 0) +{ +lean_object* x_566; lean_object* x_567; lean_object* x_568; +lean_dec(x_563); +lean_dec(x_562); +if (lean_is_scalar(x_557)) { + x_566 = lean_alloc_ctor(0, 2, 0); +} else { + x_566 = x_557; +} +lean_ctor_set(x_566, 0, x_560); +lean_ctor_set(x_566, 1, x_489); +if (lean_is_scalar(x_554)) { + x_567 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_496); - x_561 = lean_box(0); + x_567 = x_554; } -lean_inc(x_557); -lean_inc(x_491); -x_562 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___boxed), 15, 4); -lean_closure_set(x_562, 0, x_491); -lean_closure_set(x_562, 1, x_557); -lean_closure_set(x_562, 2, x_492); -lean_closure_set(x_562, 3, x_559); -x_563 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; -x_564 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_564, 0, x_563); -lean_closure_set(x_564, 1, x_562); -x_565 = l_Lean_Omega_LinearCombo_sub(x_491, x_557); -x_566 = lean_ctor_get(x_560, 1); -lean_inc(x_566); -lean_dec(x_560); -x_567 = lean_array_get_size(x_566); -x_568 = lean_unsigned_to_nat(0u); -x_569 = lean_nat_dec_lt(x_568, x_567); +lean_ctor_set(x_567, 0, x_561); +lean_ctor_set(x_567, 1, x_566); +x_568 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_568, 0, x_567); +lean_ctor_set(x_568, 1, x_552); +return x_568; +} +else +{ +uint8_t x_569; +x_569 = lean_nat_dec_le(x_563, x_563); if (x_569 == 0) { lean_object* x_570; lean_object* x_571; lean_object* x_572; -lean_dec(x_567); -lean_dec(x_566); -if (lean_is_scalar(x_561)) { +lean_dec(x_563); +lean_dec(x_562); +if (lean_is_scalar(x_557)) { x_570 = lean_alloc_ctor(0, 2, 0); } else { - x_570 = x_561; + x_570 = x_557; } -lean_ctor_set(x_570, 0, x_564); -lean_ctor_set(x_570, 1, x_493); -if (lean_is_scalar(x_558)) { +lean_ctor_set(x_570, 0, x_560); +lean_ctor_set(x_570, 1, x_489); +if (lean_is_scalar(x_554)) { x_571 = lean_alloc_ctor(0, 2, 0); } else { - x_571 = x_558; + x_571 = x_554; } -lean_ctor_set(x_571, 0, x_565); +lean_ctor_set(x_571, 0, x_561); lean_ctor_set(x_571, 1, x_570); x_572 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_572, 0, x_571); -lean_ctor_set(x_572, 1, x_556); +lean_ctor_set(x_572, 1, x_552); return x_572; } else { -uint8_t x_573; -x_573 = lean_nat_dec_le(x_567, x_567); -if (x_573 == 0) -{ -lean_object* x_574; lean_object* x_575; lean_object* x_576; -lean_dec(x_567); -lean_dec(x_566); -if (lean_is_scalar(x_561)) { - x_574 = lean_alloc_ctor(0, 2, 0); -} else { - x_574 = x_561; -} -lean_ctor_set(x_574, 0, x_564); -lean_ctor_set(x_574, 1, x_493); -if (lean_is_scalar(x_558)) { - x_575 = lean_alloc_ctor(0, 2, 0); -} else { - x_575 = x_558; -} -lean_ctor_set(x_575, 0, x_565); -lean_ctor_set(x_575, 1, x_574); -x_576 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_576, 0, x_575); -lean_ctor_set(x_576, 1, x_556); -return x_576; -} -else -{ -size_t x_577; size_t x_578; lean_object* x_579; lean_object* x_580; lean_object* x_581; lean_object* x_582; -x_577 = 0; -x_578 = lean_usize_of_nat(x_567); -lean_dec(x_567); -x_579 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_566, x_577, x_578, x_493); -lean_dec(x_566); -if (lean_is_scalar(x_561)) { - x_580 = lean_alloc_ctor(0, 2, 0); +size_t x_573; size_t x_574; lean_object* x_575; lean_object* x_576; lean_object* x_577; lean_object* x_578; +x_573 = 0; +x_574 = lean_usize_of_nat(x_563); +lean_dec(x_563); +x_575 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_562, x_573, x_574, x_489); +lean_dec(x_562); +if (lean_is_scalar(x_557)) { + x_576 = lean_alloc_ctor(0, 2, 0); } else { - x_580 = x_561; + x_576 = x_557; } -lean_ctor_set(x_580, 0, x_564); -lean_ctor_set(x_580, 1, x_579); -if (lean_is_scalar(x_558)) { - x_581 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_576, 0, x_560); +lean_ctor_set(x_576, 1, x_575); +if (lean_is_scalar(x_554)) { + x_577 = lean_alloc_ctor(0, 2, 0); } else { - x_581 = x_558; + x_577 = x_554; } -lean_ctor_set(x_581, 0, x_565); -lean_ctor_set(x_581, 1, x_580); -x_582 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_582, 0, x_581); -lean_ctor_set(x_582, 1, x_556); -return x_582; +lean_ctor_set(x_577, 0, x_561); +lean_ctor_set(x_577, 1, x_576); +x_578 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_578, 0, x_577); +lean_ctor_set(x_578, 1, x_552); +return x_578; } } } } else { -uint8_t x_583; -lean_dec(x_493); -lean_dec(x_492); -lean_dec(x_491); -x_583 = !lean_is_exclusive(x_494); -if (x_583 == 0) +uint8_t x_579; +lean_dec(x_489); +lean_dec(x_488); +lean_dec(x_487); +x_579 = !lean_is_exclusive(x_490); +if (x_579 == 0) { -return x_494; +return x_490; } else { -lean_object* x_584; lean_object* x_585; lean_object* x_586; -x_584 = lean_ctor_get(x_494, 0); -x_585 = lean_ctor_get(x_494, 1); -lean_inc(x_585); -lean_inc(x_584); -lean_dec(x_494); -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; +lean_object* x_580; lean_object* x_581; lean_object* x_582; +x_580 = lean_ctor_get(x_490, 0); +x_581 = lean_ctor_get(x_490, 1); +lean_inc(x_581); +lean_inc(x_580); +lean_dec(x_490); +x_582 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_582, 0, x_580); +lean_ctor_set(x_582, 1, x_581); +return x_582; } } } else { -uint8_t x_587; -lean_dec(x_486); +uint8_t x_583; +lean_dec(x_482); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -12106,23 +12147,23 @@ lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_587 = !lean_is_exclusive(x_487); -if (x_587 == 0) +x_583 = !lean_is_exclusive(x_483); +if (x_583 == 0) { -return x_487; +return x_483; } else { -lean_object* x_588; lean_object* x_589; lean_object* x_590; -x_588 = lean_ctor_get(x_487, 0); -x_589 = lean_ctor_get(x_487, 1); -lean_inc(x_589); -lean_inc(x_588); -lean_dec(x_487); -x_590 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_590, 0, x_588); -lean_ctor_set(x_590, 1, x_589); -return x_590; +lean_object* x_584; lean_object* x_585; lean_object* x_586; +x_584 = lean_ctor_get(x_483, 0); +x_585 = lean_ctor_get(x_483, 1); +lean_inc(x_585); +lean_inc(x_584); +lean_dec(x_483); +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; } } } @@ -12131,40 +12172,40 @@ return x_590; } else { -lean_object* x_591; uint8_t x_592; +lean_object* x_587; uint8_t x_588; lean_dec(x_21); -x_591 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__3; -x_592 = lean_string_dec_eq(x_20, x_591); +x_587 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__3; +x_588 = lean_string_dec_eq(x_20, x_587); lean_dec(x_20); -if (x_592 == 0) +if (x_588 == 0) { -lean_object* x_593; +lean_object* x_589; lean_dec(x_19); -x_593 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_593; +x_589 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_589; } else { -lean_object* x_594; lean_object* x_595; uint8_t x_596; -x_594 = lean_array_get_size(x_19); -x_595 = lean_unsigned_to_nat(6u); -x_596 = lean_nat_dec_eq(x_594, x_595); -lean_dec(x_594); -if (x_596 == 0) +lean_object* x_590; lean_object* x_591; uint8_t x_592; +x_590 = lean_array_get_size(x_19); +x_591 = lean_unsigned_to_nat(6u); +x_592 = lean_nat_dec_eq(x_590, x_591); +lean_dec(x_590); +if (x_592 == 0) { -lean_object* x_597; +lean_object* x_593; lean_dec(x_19); -x_597 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_597; +x_593 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_593; } else { -lean_object* x_598; lean_object* x_599; lean_object* x_600; lean_object* x_601; lean_object* x_602; +lean_object* x_594; lean_object* x_595; lean_object* x_596; lean_object* x_597; lean_object* x_598; lean_dec(x_1); -x_598 = lean_unsigned_to_nat(4u); -x_599 = lean_array_fget(x_19, x_598); -x_600 = lean_unsigned_to_nat(5u); -x_601 = lean_array_fget(x_19, x_600); +x_594 = lean_unsigned_to_nat(4u); +x_595 = lean_array_fget(x_19, x_594); +x_596 = lean_unsigned_to_nat(5u); +x_597 = lean_array_fget(x_19, x_596); lean_dec(x_19); lean_inc(x_11); lean_inc(x_10); @@ -12174,437 +12215,437 @@ lean_inc(x_7); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); -x_602 = l_Lean_Elab_Tactic_Omega_asLinearCombo(x_599, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_602) == 0) +x_598 = l_Lean_Elab_Tactic_Omega_asLinearCombo(x_595, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_598) == 0) { -lean_object* x_603; lean_object* x_604; lean_object* x_605; lean_object* x_606; lean_object* x_607; lean_object* x_608; lean_object* x_609; -x_603 = lean_ctor_get(x_602, 0); +lean_object* x_599; lean_object* x_600; lean_object* x_601; lean_object* x_602; lean_object* x_603; lean_object* x_604; lean_object* x_605; +x_599 = lean_ctor_get(x_598, 0); +lean_inc(x_599); +x_600 = lean_ctor_get(x_599, 1); +lean_inc(x_600); +x_601 = lean_ctor_get(x_598, 1); +lean_inc(x_601); +lean_dec(x_598); +x_602 = lean_ctor_get(x_599, 0); +lean_inc(x_602); +lean_dec(x_599); +x_603 = lean_ctor_get(x_600, 0); lean_inc(x_603); -x_604 = lean_ctor_get(x_603, 1); +x_604 = lean_ctor_get(x_600, 1); lean_inc(x_604); -x_605 = lean_ctor_get(x_602, 1); -lean_inc(x_605); -lean_dec(x_602); -x_606 = lean_ctor_get(x_603, 0); +lean_dec(x_600); +x_605 = l_Lean_Elab_Tactic_Omega_asLinearCombo(x_597, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_601); +if (lean_obj_tag(x_605) == 0) +{ +lean_object* x_606; lean_object* x_607; uint8_t x_608; +x_606 = lean_ctor_get(x_605, 0); lean_inc(x_606); -lean_dec(x_603); -x_607 = lean_ctor_get(x_604, 0); +x_607 = lean_ctor_get(x_606, 1); lean_inc(x_607); -x_608 = lean_ctor_get(x_604, 1); -lean_inc(x_608); -lean_dec(x_604); -x_609 = l_Lean_Elab_Tactic_Omega_asLinearCombo(x_601, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_605); -if (lean_obj_tag(x_609) == 0) +x_608 = !lean_is_exclusive(x_605); +if (x_608 == 0) +{ +lean_object* x_609; uint8_t x_610; +x_609 = lean_ctor_get(x_605, 0); +lean_dec(x_609); +x_610 = !lean_is_exclusive(x_606); +if (x_610 == 0) +{ +lean_object* x_611; lean_object* x_612; uint8_t x_613; +x_611 = lean_ctor_get(x_606, 0); +x_612 = lean_ctor_get(x_606, 1); +lean_dec(x_612); +x_613 = !lean_is_exclusive(x_607); +if (x_613 == 0) { -lean_object* x_610; lean_object* x_611; uint8_t x_612; -x_610 = lean_ctor_get(x_609, 0); -lean_inc(x_610); -x_611 = lean_ctor_get(x_610, 1); +lean_object* x_614; 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; uint8_t x_623; +x_614 = lean_ctor_get(x_607, 0); +x_615 = lean_ctor_get(x_607, 1); lean_inc(x_611); -x_612 = !lean_is_exclusive(x_609); -if (x_612 == 0) -{ -lean_object* x_613; uint8_t x_614; -x_613 = lean_ctor_get(x_609, 0); -lean_dec(x_613); -x_614 = !lean_is_exclusive(x_610); -if (x_614 == 0) -{ -lean_object* x_615; lean_object* x_616; uint8_t x_617; -x_615 = lean_ctor_get(x_610, 0); -x_616 = lean_ctor_get(x_610, 1); -lean_dec(x_616); -x_617 = !lean_is_exclusive(x_611); -if (x_617 == 0) -{ -lean_object* x_618; lean_object* x_619; lean_object* x_620; lean_object* x_621; lean_object* x_622; lean_object* x_623; lean_object* x_624; lean_object* x_625; lean_object* x_626; uint8_t x_627; -x_618 = lean_ctor_get(x_611, 0); -x_619 = lean_ctor_get(x_611, 1); -lean_inc(x_615); -lean_inc(x_606); -x_620 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___boxed), 15, 4); -lean_closure_set(x_620, 0, x_606); -lean_closure_set(x_620, 1, x_615); -lean_closure_set(x_620, 2, x_607); -lean_closure_set(x_620, 3, x_618); -x_621 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; -x_622 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_622, 0, x_621); -lean_closure_set(x_622, 1, x_620); -x_623 = l_Lean_Omega_LinearCombo_add(x_606, x_615); -x_624 = lean_ctor_get(x_619, 1); -lean_inc(x_624); -lean_dec(x_619); -x_625 = lean_array_get_size(x_624); -x_626 = lean_unsigned_to_nat(0u); -x_627 = lean_nat_dec_lt(x_626, x_625); -if (x_627 == 0) -{ -lean_dec(x_625); -lean_dec(x_624); -lean_ctor_set(x_611, 1, x_608); -lean_ctor_set(x_611, 0, x_622); -lean_ctor_set(x_610, 0, x_623); -return x_609; -} -else -{ -uint8_t x_628; -x_628 = lean_nat_dec_le(x_625, x_625); -if (x_628 == 0) -{ -lean_dec(x_625); -lean_dec(x_624); -lean_ctor_set(x_611, 1, x_608); -lean_ctor_set(x_611, 0, x_622); -lean_ctor_set(x_610, 0, x_623); -return x_609; -} -else -{ -size_t x_629; size_t x_630; lean_object* x_631; -x_629 = 0; -x_630 = lean_usize_of_nat(x_625); -lean_dec(x_625); -x_631 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_624, x_629, x_630, x_608); -lean_dec(x_624); -lean_ctor_set(x_611, 1, x_631); -lean_ctor_set(x_611, 0, x_622); -lean_ctor_set(x_610, 0, x_623); -return x_609; -} -} -} -else -{ -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; uint8_t x_641; -x_632 = lean_ctor_get(x_611, 0); -x_633 = lean_ctor_get(x_611, 1); -lean_inc(x_633); -lean_inc(x_632); -lean_dec(x_611); -lean_inc(x_615); -lean_inc(x_606); -x_634 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___boxed), 15, 4); -lean_closure_set(x_634, 0, x_606); -lean_closure_set(x_634, 1, x_615); -lean_closure_set(x_634, 2, x_607); -lean_closure_set(x_634, 3, x_632); -x_635 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; -x_636 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_636, 0, x_635); -lean_closure_set(x_636, 1, x_634); -x_637 = l_Lean_Omega_LinearCombo_add(x_606, x_615); -x_638 = lean_ctor_get(x_633, 1); -lean_inc(x_638); -lean_dec(x_633); -x_639 = lean_array_get_size(x_638); -x_640 = lean_unsigned_to_nat(0u); -x_641 = lean_nat_dec_lt(x_640, x_639); -if (x_641 == 0) -{ -lean_object* x_642; -lean_dec(x_639); -lean_dec(x_638); -x_642 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_642, 0, x_636); -lean_ctor_set(x_642, 1, x_608); -lean_ctor_set(x_610, 1, x_642); -lean_ctor_set(x_610, 0, x_637); -return x_609; -} -else -{ -uint8_t x_643; -x_643 = lean_nat_dec_le(x_639, x_639); -if (x_643 == 0) -{ -lean_object* x_644; -lean_dec(x_639); -lean_dec(x_638); -x_644 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_644, 0, x_636); -lean_ctor_set(x_644, 1, x_608); -lean_ctor_set(x_610, 1, x_644); -lean_ctor_set(x_610, 0, x_637); -return x_609; +lean_inc(x_602); +x_616 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___boxed), 15, 4); +lean_closure_set(x_616, 0, x_602); +lean_closure_set(x_616, 1, x_611); +lean_closure_set(x_616, 2, x_603); +lean_closure_set(x_616, 3, x_614); +x_617 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; +x_618 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_618, 0, x_617); +lean_closure_set(x_618, 1, x_616); +x_619 = l_Lean_Omega_LinearCombo_add(x_602, x_611); +x_620 = lean_ctor_get(x_615, 1); +lean_inc(x_620); +lean_dec(x_615); +x_621 = lean_array_get_size(x_620); +x_622 = lean_unsigned_to_nat(0u); +x_623 = lean_nat_dec_lt(x_622, x_621); +if (x_623 == 0) +{ +lean_dec(x_621); +lean_dec(x_620); +lean_ctor_set(x_607, 1, x_604); +lean_ctor_set(x_607, 0, x_618); +lean_ctor_set(x_606, 0, x_619); +return x_605; } else { -size_t x_645; size_t x_646; lean_object* x_647; lean_object* x_648; -x_645 = 0; -x_646 = lean_usize_of_nat(x_639); -lean_dec(x_639); -x_647 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_638, x_645, x_646, x_608); -lean_dec(x_638); -x_648 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_648, 0, x_636); -lean_ctor_set(x_648, 1, x_647); -lean_ctor_set(x_610, 1, x_648); -lean_ctor_set(x_610, 0, x_637); -return x_609; +uint8_t x_624; +x_624 = lean_nat_dec_le(x_621, x_621); +if (x_624 == 0) +{ +lean_dec(x_621); +lean_dec(x_620); +lean_ctor_set(x_607, 1, x_604); +lean_ctor_set(x_607, 0, x_618); +lean_ctor_set(x_606, 0, x_619); +return x_605; } +else +{ +size_t x_625; size_t x_626; lean_object* x_627; +x_625 = 0; +x_626 = lean_usize_of_nat(x_621); +lean_dec(x_621); +x_627 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_620, x_625, x_626, x_604); +lean_dec(x_620); +lean_ctor_set(x_607, 1, x_627); +lean_ctor_set(x_607, 0, x_618); +lean_ctor_set(x_606, 0, x_619); +return x_605; } } } else { -lean_object* x_649; 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_object* x_657; lean_object* x_658; lean_object* x_659; uint8_t x_660; -x_649 = lean_ctor_get(x_610, 0); -lean_inc(x_649); -lean_dec(x_610); -x_650 = lean_ctor_get(x_611, 0); -lean_inc(x_650); -x_651 = lean_ctor_get(x_611, 1); -lean_inc(x_651); -if (lean_is_exclusive(x_611)) { - lean_ctor_release(x_611, 0); - lean_ctor_release(x_611, 1); - x_652 = x_611; -} else { - lean_dec_ref(x_611); - x_652 = lean_box(0); -} -lean_inc(x_649); -lean_inc(x_606); -x_653 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___boxed), 15, 4); -lean_closure_set(x_653, 0, x_606); -lean_closure_set(x_653, 1, x_649); -lean_closure_set(x_653, 2, x_607); -lean_closure_set(x_653, 3, x_650); -x_654 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; -x_655 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_655, 0, x_654); -lean_closure_set(x_655, 1, x_653); -x_656 = l_Lean_Omega_LinearCombo_add(x_606, x_649); -x_657 = lean_ctor_get(x_651, 1); -lean_inc(x_657); -lean_dec(x_651); -x_658 = lean_array_get_size(x_657); -x_659 = lean_unsigned_to_nat(0u); -x_660 = lean_nat_dec_lt(x_659, x_658); -if (x_660 == 0) -{ -lean_object* x_661; lean_object* x_662; -lean_dec(x_658); -lean_dec(x_657); -if (lean_is_scalar(x_652)) { - x_661 = lean_alloc_ctor(0, 2, 0); -} else { - x_661 = x_652; -} -lean_ctor_set(x_661, 0, x_655); -lean_ctor_set(x_661, 1, x_608); -x_662 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_662, 0, x_656); -lean_ctor_set(x_662, 1, x_661); -lean_ctor_set(x_609, 0, x_662); -return x_609; +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; uint8_t x_637; +x_628 = lean_ctor_get(x_607, 0); +x_629 = lean_ctor_get(x_607, 1); +lean_inc(x_629); +lean_inc(x_628); +lean_dec(x_607); +lean_inc(x_611); +lean_inc(x_602); +x_630 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___boxed), 15, 4); +lean_closure_set(x_630, 0, x_602); +lean_closure_set(x_630, 1, x_611); +lean_closure_set(x_630, 2, x_603); +lean_closure_set(x_630, 3, x_628); +x_631 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; +x_632 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_632, 0, x_631); +lean_closure_set(x_632, 1, x_630); +x_633 = l_Lean_Omega_LinearCombo_add(x_602, x_611); +x_634 = lean_ctor_get(x_629, 1); +lean_inc(x_634); +lean_dec(x_629); +x_635 = lean_array_get_size(x_634); +x_636 = lean_unsigned_to_nat(0u); +x_637 = lean_nat_dec_lt(x_636, x_635); +if (x_637 == 0) +{ +lean_object* x_638; +lean_dec(x_635); +lean_dec(x_634); +x_638 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_638, 0, x_632); +lean_ctor_set(x_638, 1, x_604); +lean_ctor_set(x_606, 1, x_638); +lean_ctor_set(x_606, 0, x_633); +return x_605; } else { -uint8_t x_663; -x_663 = lean_nat_dec_le(x_658, x_658); -if (x_663 == 0) +uint8_t x_639; +x_639 = lean_nat_dec_le(x_635, x_635); +if (x_639 == 0) { -lean_object* x_664; lean_object* x_665; -lean_dec(x_658); -lean_dec(x_657); -if (lean_is_scalar(x_652)) { - x_664 = lean_alloc_ctor(0, 2, 0); -} else { - x_664 = x_652; +lean_object* x_640; +lean_dec(x_635); +lean_dec(x_634); +x_640 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_640, 0, x_632); +lean_ctor_set(x_640, 1, x_604); +lean_ctor_set(x_606, 1, x_640); +lean_ctor_set(x_606, 0, x_633); +return x_605; } -lean_ctor_set(x_664, 0, x_655); -lean_ctor_set(x_664, 1, x_608); -x_665 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_665, 0, x_656); -lean_ctor_set(x_665, 1, x_664); -lean_ctor_set(x_609, 0, x_665); -return x_609; +else +{ +size_t x_641; size_t x_642; lean_object* x_643; lean_object* x_644; +x_641 = 0; +x_642 = lean_usize_of_nat(x_635); +lean_dec(x_635); +x_643 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_634, x_641, x_642, x_604); +lean_dec(x_634); +x_644 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_644, 0, x_632); +lean_ctor_set(x_644, 1, x_643); +lean_ctor_set(x_606, 1, x_644); +lean_ctor_set(x_606, 0, x_633); +return x_605; +} +} +} +} +else +{ +lean_object* x_645; lean_object* x_646; lean_object* x_647; lean_object* x_648; lean_object* x_649; lean_object* x_650; lean_object* x_651; lean_object* x_652; lean_object* x_653; lean_object* x_654; lean_object* x_655; uint8_t x_656; +x_645 = lean_ctor_get(x_606, 0); +lean_inc(x_645); +lean_dec(x_606); +x_646 = lean_ctor_get(x_607, 0); +lean_inc(x_646); +x_647 = lean_ctor_get(x_607, 1); +lean_inc(x_647); +if (lean_is_exclusive(x_607)) { + lean_ctor_release(x_607, 0); + lean_ctor_release(x_607, 1); + x_648 = x_607; +} else { + lean_dec_ref(x_607); + x_648 = lean_box(0); +} +lean_inc(x_645); +lean_inc(x_602); +x_649 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___boxed), 15, 4); +lean_closure_set(x_649, 0, x_602); +lean_closure_set(x_649, 1, x_645); +lean_closure_set(x_649, 2, x_603); +lean_closure_set(x_649, 3, x_646); +x_650 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; +x_651 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_651, 0, x_650); +lean_closure_set(x_651, 1, x_649); +x_652 = l_Lean_Omega_LinearCombo_add(x_602, x_645); +x_653 = lean_ctor_get(x_647, 1); +lean_inc(x_653); +lean_dec(x_647); +x_654 = lean_array_get_size(x_653); +x_655 = lean_unsigned_to_nat(0u); +x_656 = lean_nat_dec_lt(x_655, x_654); +if (x_656 == 0) +{ +lean_object* x_657; lean_object* x_658; +lean_dec(x_654); +lean_dec(x_653); +if (lean_is_scalar(x_648)) { + x_657 = lean_alloc_ctor(0, 2, 0); +} else { + x_657 = x_648; +} +lean_ctor_set(x_657, 0, x_651); +lean_ctor_set(x_657, 1, x_604); +x_658 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_658, 0, x_652); +lean_ctor_set(x_658, 1, x_657); +lean_ctor_set(x_605, 0, x_658); +return x_605; +} +else +{ +uint8_t x_659; +x_659 = lean_nat_dec_le(x_654, x_654); +if (x_659 == 0) +{ +lean_object* x_660; lean_object* x_661; +lean_dec(x_654); +lean_dec(x_653); +if (lean_is_scalar(x_648)) { + x_660 = lean_alloc_ctor(0, 2, 0); +} else { + x_660 = x_648; +} +lean_ctor_set(x_660, 0, x_651); +lean_ctor_set(x_660, 1, x_604); +x_661 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_661, 0, x_652); +lean_ctor_set(x_661, 1, x_660); +lean_ctor_set(x_605, 0, x_661); +return x_605; } else { -size_t x_666; size_t x_667; lean_object* x_668; lean_object* x_669; lean_object* x_670; -x_666 = 0; -x_667 = lean_usize_of_nat(x_658); -lean_dec(x_658); -x_668 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_657, x_666, x_667, x_608); -lean_dec(x_657); -if (lean_is_scalar(x_652)) { - x_669 = lean_alloc_ctor(0, 2, 0); +size_t x_662; size_t x_663; lean_object* x_664; lean_object* x_665; lean_object* x_666; +x_662 = 0; +x_663 = lean_usize_of_nat(x_654); +lean_dec(x_654); +x_664 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_653, x_662, x_663, x_604); +lean_dec(x_653); +if (lean_is_scalar(x_648)) { + x_665 = lean_alloc_ctor(0, 2, 0); } else { - x_669 = x_652; + x_665 = x_648; } -lean_ctor_set(x_669, 0, x_655); -lean_ctor_set(x_669, 1, x_668); -x_670 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_670, 0, x_656); -lean_ctor_set(x_670, 1, x_669); -lean_ctor_set(x_609, 0, x_670); -return x_609; +lean_ctor_set(x_665, 0, x_651); +lean_ctor_set(x_665, 1, x_664); +x_666 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_666, 0, x_652); +lean_ctor_set(x_666, 1, x_665); +lean_ctor_set(x_605, 0, x_666); +return x_605; } } } } else { -lean_object* x_671; lean_object* x_672; 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; lean_object* x_681; lean_object* x_682; lean_object* x_683; uint8_t x_684; -x_671 = lean_ctor_get(x_609, 1); +lean_object* x_667; lean_object* x_668; lean_object* x_669; lean_object* x_670; lean_object* x_671; lean_object* x_672; 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; uint8_t x_680; +x_667 = lean_ctor_get(x_605, 1); +lean_inc(x_667); +lean_dec(x_605); +x_668 = lean_ctor_get(x_606, 0); +lean_inc(x_668); +if (lean_is_exclusive(x_606)) { + lean_ctor_release(x_606, 0); + lean_ctor_release(x_606, 1); + x_669 = x_606; +} else { + lean_dec_ref(x_606); + x_669 = lean_box(0); +} +x_670 = lean_ctor_get(x_607, 0); +lean_inc(x_670); +x_671 = lean_ctor_get(x_607, 1); lean_inc(x_671); -lean_dec(x_609); -x_672 = lean_ctor_get(x_610, 0); -lean_inc(x_672); -if (lean_is_exclusive(x_610)) { - lean_ctor_release(x_610, 0); - lean_ctor_release(x_610, 1); - x_673 = x_610; +if (lean_is_exclusive(x_607)) { + lean_ctor_release(x_607, 0); + lean_ctor_release(x_607, 1); + x_672 = x_607; +} else { + lean_dec_ref(x_607); + x_672 = lean_box(0); +} +lean_inc(x_668); +lean_inc(x_602); +x_673 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___boxed), 15, 4); +lean_closure_set(x_673, 0, x_602); +lean_closure_set(x_673, 1, x_668); +lean_closure_set(x_673, 2, x_603); +lean_closure_set(x_673, 3, x_670); +x_674 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46; +x_675 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); +lean_closure_set(x_675, 0, x_674); +lean_closure_set(x_675, 1, x_673); +x_676 = l_Lean_Omega_LinearCombo_add(x_602, x_668); +x_677 = lean_ctor_get(x_671, 1); +lean_inc(x_677); +lean_dec(x_671); +x_678 = lean_array_get_size(x_677); +x_679 = lean_unsigned_to_nat(0u); +x_680 = lean_nat_dec_lt(x_679, x_678); +if (x_680 == 0) +{ +lean_object* x_681; lean_object* x_682; lean_object* x_683; +lean_dec(x_678); +lean_dec(x_677); +if (lean_is_scalar(x_672)) { + x_681 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_610); - x_673 = lean_box(0); -} -x_674 = lean_ctor_get(x_611, 0); -lean_inc(x_674); -x_675 = lean_ctor_get(x_611, 1); -lean_inc(x_675); -if (lean_is_exclusive(x_611)) { - lean_ctor_release(x_611, 0); - lean_ctor_release(x_611, 1); - x_676 = x_611; + x_681 = x_672; +} +lean_ctor_set(x_681, 0, x_675); +lean_ctor_set(x_681, 1, x_604); +if (lean_is_scalar(x_669)) { + x_682 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_611); - x_676 = lean_box(0); + x_682 = x_669; } -lean_inc(x_672); -lean_inc(x_606); -x_677 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___boxed), 15, 4); -lean_closure_set(x_677, 0, x_606); -lean_closure_set(x_677, 1, x_672); -lean_closure_set(x_677, 2, x_607); -lean_closure_set(x_677, 3, x_674); -x_678 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46; -x_679 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_Omega_withoutModifyingState___spec__1___rarg___boxed), 12, 2); -lean_closure_set(x_679, 0, x_678); -lean_closure_set(x_679, 1, x_677); -x_680 = l_Lean_Omega_LinearCombo_add(x_606, x_672); -x_681 = lean_ctor_get(x_675, 1); -lean_inc(x_681); -lean_dec(x_675); -x_682 = lean_array_get_size(x_681); -x_683 = lean_unsigned_to_nat(0u); -x_684 = lean_nat_dec_lt(x_683, x_682); +lean_ctor_set(x_682, 0, x_676); +lean_ctor_set(x_682, 1, x_681); +x_683 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_683, 0, x_682); +lean_ctor_set(x_683, 1, x_667); +return x_683; +} +else +{ +uint8_t x_684; +x_684 = lean_nat_dec_le(x_678, x_678); if (x_684 == 0) { lean_object* x_685; lean_object* x_686; lean_object* x_687; -lean_dec(x_682); -lean_dec(x_681); -if (lean_is_scalar(x_676)) { +lean_dec(x_678); +lean_dec(x_677); +if (lean_is_scalar(x_672)) { x_685 = lean_alloc_ctor(0, 2, 0); } else { - x_685 = x_676; + x_685 = x_672; } -lean_ctor_set(x_685, 0, x_679); -lean_ctor_set(x_685, 1, x_608); -if (lean_is_scalar(x_673)) { +lean_ctor_set(x_685, 0, x_675); +lean_ctor_set(x_685, 1, x_604); +if (lean_is_scalar(x_669)) { x_686 = lean_alloc_ctor(0, 2, 0); } else { - x_686 = x_673; + x_686 = x_669; } -lean_ctor_set(x_686, 0, x_680); +lean_ctor_set(x_686, 0, x_676); lean_ctor_set(x_686, 1, x_685); x_687 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_687, 0, x_686); -lean_ctor_set(x_687, 1, x_671); +lean_ctor_set(x_687, 1, x_667); return x_687; } else { -uint8_t x_688; -x_688 = lean_nat_dec_le(x_682, x_682); -if (x_688 == 0) -{ -lean_object* x_689; lean_object* x_690; lean_object* x_691; -lean_dec(x_682); -lean_dec(x_681); -if (lean_is_scalar(x_676)) { - x_689 = lean_alloc_ctor(0, 2, 0); -} else { - x_689 = x_676; -} -lean_ctor_set(x_689, 0, x_679); -lean_ctor_set(x_689, 1, x_608); -if (lean_is_scalar(x_673)) { - x_690 = lean_alloc_ctor(0, 2, 0); -} else { - x_690 = x_673; -} -lean_ctor_set(x_690, 0, x_680); -lean_ctor_set(x_690, 1, x_689); -x_691 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_691, 0, x_690); -lean_ctor_set(x_691, 1, x_671); -return x_691; -} -else -{ -size_t x_692; size_t x_693; lean_object* x_694; lean_object* x_695; lean_object* x_696; lean_object* x_697; -x_692 = 0; -x_693 = lean_usize_of_nat(x_682); -lean_dec(x_682); -x_694 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_681, x_692, x_693, x_608); -lean_dec(x_681); -if (lean_is_scalar(x_676)) { - x_695 = lean_alloc_ctor(0, 2, 0); +size_t x_688; size_t x_689; lean_object* x_690; lean_object* x_691; lean_object* x_692; lean_object* x_693; +x_688 = 0; +x_689 = lean_usize_of_nat(x_678); +lean_dec(x_678); +x_690 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_Omega_asLinearComboImpl___spec__3(x_677, x_688, x_689, x_604); +lean_dec(x_677); +if (lean_is_scalar(x_672)) { + x_691 = lean_alloc_ctor(0, 2, 0); } else { - x_695 = x_676; + x_691 = x_672; } -lean_ctor_set(x_695, 0, x_679); -lean_ctor_set(x_695, 1, x_694); -if (lean_is_scalar(x_673)) { - x_696 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_691, 0, x_675); +lean_ctor_set(x_691, 1, x_690); +if (lean_is_scalar(x_669)) { + x_692 = lean_alloc_ctor(0, 2, 0); } else { - x_696 = x_673; + x_692 = x_669; } -lean_ctor_set(x_696, 0, x_680); -lean_ctor_set(x_696, 1, x_695); -x_697 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_697, 0, x_696); -lean_ctor_set(x_697, 1, x_671); -return x_697; +lean_ctor_set(x_692, 0, x_676); +lean_ctor_set(x_692, 1, x_691); +x_693 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_693, 0, x_692); +lean_ctor_set(x_693, 1, x_667); +return x_693; } } } } else { -uint8_t x_698; -lean_dec(x_608); -lean_dec(x_607); -lean_dec(x_606); -x_698 = !lean_is_exclusive(x_609); -if (x_698 == 0) +uint8_t x_694; +lean_dec(x_604); +lean_dec(x_603); +lean_dec(x_602); +x_694 = !lean_is_exclusive(x_605); +if (x_694 == 0) { -return x_609; +return x_605; } else { -lean_object* x_699; lean_object* x_700; lean_object* x_701; -x_699 = lean_ctor_get(x_609, 0); -x_700 = lean_ctor_get(x_609, 1); -lean_inc(x_700); -lean_inc(x_699); -lean_dec(x_609); -x_701 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_701, 0, x_699); -lean_ctor_set(x_701, 1, x_700); -return x_701; +lean_object* x_695; lean_object* x_696; lean_object* x_697; +x_695 = lean_ctor_get(x_605, 0); +x_696 = lean_ctor_get(x_605, 1); +lean_inc(x_696); +lean_inc(x_695); +lean_dec(x_605); +x_697 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_697, 0, x_695); +lean_ctor_set(x_697, 1, x_696); +return x_697; } } } else { -uint8_t x_702; -lean_dec(x_601); +uint8_t x_698; +lean_dec(x_597); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -12613,23 +12654,23 @@ lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_702 = !lean_is_exclusive(x_602); -if (x_702 == 0) +x_698 = !lean_is_exclusive(x_598); +if (x_698 == 0) { -return x_602; +return x_598; } else { -lean_object* x_703; lean_object* x_704; lean_object* x_705; -x_703 = lean_ctor_get(x_602, 0); -x_704 = lean_ctor_get(x_602, 1); -lean_inc(x_704); -lean_inc(x_703); -lean_dec(x_602); -x_705 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_705, 0, x_703); -lean_ctor_set(x_705, 1, x_704); -return x_705; +lean_object* x_699; lean_object* x_700; lean_object* x_701; +x_699 = lean_ctor_get(x_598, 0); +x_700 = lean_ctor_get(x_598, 1); +lean_inc(x_700); +lean_inc(x_699); +lean_dec(x_598); +x_701 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_701, 0, x_699); +lean_ctor_set(x_701, 1, x_700); +return x_701; } } } @@ -12638,84 +12679,84 @@ return x_705; } else { -lean_object* x_706; +lean_object* x_702; lean_dec(x_18); lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); -x_706 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_706; +x_702 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_702; } } else { -lean_object* x_707; +lean_object* x_703; lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); -x_707 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_707; +x_703 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_703; } } else { -lean_object* x_708; +lean_object* x_704; lean_dec(x_16); lean_dec(x_15); -x_708 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_708; +x_704 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_704; } } else { -lean_object* x_709; lean_object* x_710; +lean_object* x_705; lean_object* x_706; lean_inc(x_1); -x_709 = l_Lean_Expr_fvarId_x21(x_1); +x_705 = l_Lean_Expr_fvarId_x21(x_1); lean_inc(x_8); -x_710 = l_Lean_FVarId_getValue_x3f(x_709, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_710) == 0) +x_706 = l_Lean_FVarId_getValue_x3f(x_705, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_706) == 0) { -lean_object* x_711; -x_711 = lean_ctor_get(x_710, 0); -lean_inc(x_711); -if (lean_obj_tag(x_711) == 0) +lean_object* x_707; +x_707 = lean_ctor_get(x_706, 0); +lean_inc(x_707); +if (lean_obj_tag(x_707) == 0) { -lean_object* x_712; lean_object* x_713; -x_712 = lean_ctor_get(x_710, 1); -lean_inc(x_712); -lean_dec(x_710); -x_713 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_712); -return x_713; +lean_object* x_708; lean_object* x_709; +x_708 = lean_ctor_get(x_706, 1); +lean_inc(x_708); +lean_dec(x_706); +x_709 = l_Lean_Elab_Tactic_Omega_mkAtomLinearCombo(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_708); +return x_709; } else { -lean_object* x_714; lean_object* x_715; lean_object* x_716; -x_714 = lean_ctor_get(x_710, 1); -lean_inc(x_714); -lean_dec(x_710); -x_715 = lean_ctor_get(x_711, 0); -lean_inc(x_715); -lean_dec(x_711); +lean_object* x_710; lean_object* x_711; lean_object* x_712; +x_710 = lean_ctor_get(x_706, 1); +lean_inc(x_710); +lean_dec(x_706); +x_711 = lean_ctor_get(x_707, 0); +lean_inc(x_711); +lean_dec(x_707); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_1); -x_716 = l_Lean_Elab_Tactic_Omega_mkEqReflWithExpectedType(x_1, x_715, x_8, x_9, x_10, x_11, x_714); -if (lean_obj_tag(x_716) == 0) +x_712 = l_Lean_Elab_Tactic_Omega_mkEqReflWithExpectedType(x_1, x_711, x_8, x_9, x_10, x_11, x_710); +if (lean_obj_tag(x_712) == 0) { -lean_object* x_717; lean_object* x_718; lean_object* x_719; -x_717 = lean_ctor_get(x_716, 0); -lean_inc(x_717); -x_718 = lean_ctor_get(x_716, 1); -lean_inc(x_718); -lean_dec(x_716); -x_719 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_717, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_718); -return x_719; +lean_object* x_713; lean_object* x_714; lean_object* x_715; +x_713 = lean_ctor_get(x_712, 0); +lean_inc(x_713); +x_714 = lean_ctor_get(x_712, 1); +lean_inc(x_714); +lean_dec(x_712); +x_715 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite(x_1, x_713, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_714); +return x_715; } else { -uint8_t x_720; +uint8_t x_716; lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -12725,30 +12766,30 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_720 = !lean_is_exclusive(x_716); -if (x_720 == 0) +x_716 = !lean_is_exclusive(x_712); +if (x_716 == 0) { -return x_716; +return x_712; } else { -lean_object* x_721; lean_object* x_722; lean_object* x_723; -x_721 = lean_ctor_get(x_716, 0); -x_722 = lean_ctor_get(x_716, 1); -lean_inc(x_722); -lean_inc(x_721); -lean_dec(x_716); -x_723 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_723, 0, x_721); -lean_ctor_set(x_723, 1, x_722); -return x_723; +lean_object* x_717; lean_object* x_718; lean_object* x_719; +x_717 = lean_ctor_get(x_712, 0); +x_718 = lean_ctor_get(x_712, 1); +lean_inc(x_718); +lean_inc(x_717); +lean_dec(x_712); +x_719 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_719, 0, x_717); +lean_ctor_set(x_719, 1, x_718); +return x_719; } } } } else { -uint8_t x_724; +uint8_t x_720; lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -12758,30 +12799,30 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_724 = !lean_is_exclusive(x_710); -if (x_724 == 0) +x_720 = !lean_is_exclusive(x_706); +if (x_720 == 0) { -return x_710; +return x_706; } else { -lean_object* x_725; lean_object* x_726; lean_object* x_727; -x_725 = lean_ctor_get(x_710, 0); -x_726 = lean_ctor_get(x_710, 1); -lean_inc(x_726); -lean_inc(x_725); -lean_dec(x_710); -x_727 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_727, 0, x_725); -lean_ctor_set(x_727, 1, x_726); -return x_727; +lean_object* x_721; lean_object* x_722; lean_object* x_723; +x_721 = lean_ctor_get(x_706, 0); +x_722 = lean_ctor_get(x_706, 1); +lean_inc(x_722); +lean_inc(x_721); +lean_dec(x_706); +x_723 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_723, 0, x_721); +lean_ctor_set(x_723, 1, x_722); +return x_723; } } } } else { -lean_object* x_728; lean_object* x_729; lean_object* x_730; lean_object* x_731; lean_object* x_732; lean_object* x_733; lean_object* x_734; lean_object* x_735; +lean_object* x_724; lean_object* x_725; lean_object* x_726; lean_object* x_727; lean_object* x_728; lean_object* x_729; lean_object* x_730; lean_object* x_731; lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -12790,28 +12831,28 @@ lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_728 = lean_ctor_get(x_13, 0); -lean_inc(x_728); +x_724 = lean_ctor_get(x_13, 0); +lean_inc(x_724); lean_dec(x_13); -x_729 = lean_box(0); +x_725 = lean_box(0); +x_726 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_726, 0, x_724); +lean_ctor_set(x_726, 1, x_725); +lean_inc(x_726); +x_727 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_mkEvalRflProof___boxed), 12, 2); +lean_closure_set(x_727, 0, x_1); +lean_closure_set(x_727, 1, x_726); +x_728 = l_Lean_Elab_Tactic_Omega_MetaProblem_problem___default___closed__2; +x_729 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_729, 0, x_727); +lean_ctor_set(x_729, 1, x_728); x_730 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_730, 0, x_728); +lean_ctor_set(x_730, 0, x_726); lean_ctor_set(x_730, 1, x_729); -lean_inc(x_730); -x_731 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_Omega_mkEvalRflProof___boxed), 12, 2); -lean_closure_set(x_731, 0, x_1); -lean_closure_set(x_731, 1, x_730); -x_732 = l_Lean_Elab_Tactic_Omega_MetaProblem_problem___default___closed__2; -x_733 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_733, 0, x_731); -lean_ctor_set(x_733, 1, x_732); -x_734 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_734, 0, x_730); -lean_ctor_set(x_734, 1, x_733); -x_735 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_735, 0, x_734); -lean_ctor_set(x_735, 1, x_12); -return x_735; +x_731 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_731, 0, x_730); +lean_ctor_set(x_731, 1, x_12); +return x_731; } } } @@ -12849,7 +12890,7 @@ x_16 = lean_ctor_get(x_13, 1); lean_inc(x_16); lean_dec(x_13); x_17 = lean_box(0); -x_18 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8(x_1, x_17, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_16); +x_18 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10(x_1, x_17, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_16); return x_18; } else @@ -12878,7 +12919,7 @@ lean_inc(x_27); x_28 = lean_ctor_get(x_26, 1); lean_inc(x_28); lean_dec(x_26); -x_29 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8(x_1, x_27, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_28); +x_29 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10(x_1, x_27, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_28); return x_29; } else @@ -12903,7 +12944,7 @@ 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_Omega_asLinearComboImpl___lambda__8(x_1, x_37, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_38); +x_39 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10(x_1, x_37, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_38); return x_39; } } @@ -13406,7 +13447,7 @@ static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCa { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__15; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__15; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } @@ -13416,7 +13457,7 @@ static lean_object* _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCa { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__53; -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__30; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__30; x_3 = l_Lean_Expr_const___override(x_1, x_2); return x_3; } @@ -13580,12 +13621,12 @@ x_46 = lean_string_dec_eq(x_42, x_45); if (x_46 == 0) { lean_object* x_47; uint8_t x_48; -x_47 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__2; +x_47 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__2; x_48 = lean_string_dec_eq(x_42, x_47); if (x_48 == 0) { lean_object* x_49; uint8_t x_50; -x_49 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__4; +x_49 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__4; x_50 = lean_string_dec_eq(x_42, x_49); if (x_50 == 0) { @@ -13595,32 +13636,32 @@ x_52 = lean_string_dec_eq(x_42, x_51); if (x_52 == 0) { lean_object* x_53; uint8_t x_54; -x_53 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__3; +x_53 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__3; x_54 = lean_string_dec_eq(x_42, x_53); if (x_54 == 0) { lean_object* x_55; uint8_t x_56; -x_55 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__1; +x_55 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__1; x_56 = lean_string_dec_eq(x_42, x_55); if (x_56 == 0) { lean_object* x_57; uint8_t x_58; -x_57 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__7; +x_57 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__7; x_58 = lean_string_dec_eq(x_42, x_57); if (x_58 == 0) { lean_object* x_59; uint8_t x_60; -x_59 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8; +x_59 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__8; x_60 = lean_string_dec_eq(x_42, x_59); if (x_60 == 0) { lean_object* x_61; uint8_t x_62; -x_61 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__5; +x_61 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__5; x_62 = lean_string_dec_eq(x_42, x_61); if (x_62 == 0) { lean_object* x_63; uint8_t x_64; -x_63 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__6; +x_63 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__6; x_64 = lean_string_dec_eq(x_42, x_63); if (x_64 == 0) { @@ -13845,7 +13886,7 @@ else lean_object* x_128; uint8_t x_129; lean_dec(x_42); lean_dec(x_2); -x_128 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__20; +x_128 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__20; x_129 = lean_string_dec_eq(x_41, x_128); lean_dec(x_41); if (x_129 == 0) @@ -13890,7 +13931,7 @@ else lean_object* x_142; uint8_t x_143; lean_dec(x_42); lean_dec(x_2); -x_142 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__24; +x_142 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__24; x_143 = lean_string_dec_eq(x_41, x_142); lean_dec(x_41); if (x_143 == 0) @@ -13935,12 +13976,12 @@ else lean_object* x_156; uint8_t x_157; lean_dec(x_42); lean_dec(x_2); -x_156 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__9; +x_156 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__9; x_157 = lean_string_dec_eq(x_41, x_156); if (x_157 == 0) { lean_object* x_158; uint8_t x_159; -x_158 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__10; +x_158 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__10; x_159 = lean_string_dec_eq(x_41, x_158); lean_dec(x_41); if (x_159 == 0) @@ -14574,7 +14615,7 @@ else lean_object* x_272; uint8_t x_273; lean_dec(x_42); lean_dec(x_2); -x_272 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__16; +x_272 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__16; x_273 = lean_string_dec_eq(x_41, x_272); lean_dec(x_41); if (x_273 == 0) @@ -14634,7 +14675,7 @@ else lean_object* x_288; uint8_t x_289; lean_dec(x_42); lean_dec(x_2); -x_288 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__47; +x_288 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__47; x_289 = lean_string_dec_eq(x_41, x_288); lean_dec(x_41); if (x_289 == 0) @@ -14885,7 +14926,7 @@ else lean_object* x_329; uint8_t x_330; lean_dec(x_42); lean_dec(x_2); -x_329 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__39; +x_329 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__39; x_330 = lean_string_dec_eq(x_41, x_329); lean_dec(x_41); if (x_330 == 0) @@ -14973,7 +15014,7 @@ else lean_object* x_355; uint8_t x_356; lean_dec(x_42); lean_dec(x_2); -x_355 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__28; +x_355 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__28; x_356 = lean_string_dec_eq(x_41, x_355); lean_dec(x_41); if (x_356 == 0) @@ -15018,7 +15059,7 @@ else lean_object* x_369; uint8_t x_370; lean_dec(x_42); lean_dec(x_2); -x_369 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__45; +x_369 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__45; x_370 = lean_string_dec_eq(x_41, x_369); lean_dec(x_41); if (x_370 == 0) @@ -15482,12 +15523,12 @@ x_48 = lean_string_dec_eq(x_46, x_47); if (x_48 == 0) { lean_object* x_49; uint8_t x_50; -x_49 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__2; +x_49 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__2; x_50 = lean_string_dec_eq(x_46, x_49); if (x_50 == 0) { lean_object* x_51; uint8_t x_52; -x_51 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__1; +x_51 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__1; x_52 = lean_string_dec_eq(x_46, x_51); if (x_52 == 0) { @@ -15740,7 +15781,7 @@ else { lean_object* x_109; uint8_t x_110; lean_dec(x_46); -x_109 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__47; +x_109 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__47; x_110 = lean_string_dec_eq(x_45, x_109); lean_dec(x_45); if (x_110 == 0) @@ -15801,7 +15842,7 @@ else lean_object* x_124; uint8_t x_125; lean_dec(x_46); lean_dec(x_40); -x_124 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__45; +x_124 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__45; x_125 = lean_string_dec_eq(x_45, x_124); lean_dec(x_45); if (x_125 == 0) @@ -16088,29 +16129,50 @@ lean_dec(x_1); return x_7; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__1___boxed(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_2; lean_object* x_3; -x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__1(x_1); +uint8_t x_15; lean_object* x_16; +x_15 = lean_unbox(x_8); +lean_dec(x_8); +x_16 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_15, x_9, x_10, x_11, x_12, x_13, x_14); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_6); +lean_dec(x_6); +x_14 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__2(x_1, x_2, x_3, x_4, x_5, x_13, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_2); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___boxed(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; +x_2 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3(x_1); lean_dec(x_1); x_3 = lean_box(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_Elab_Tactic_Omega_asLinearComboImpl___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: { uint8_t x_10; lean_object* x_11; x_10 = lean_unbox(x_3); lean_dec(x_3); -x_11 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__2(x_1, x_2, x_10, x_4, x_5, x_6, x_7, x_8, x_9); +x_11 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4(x_1, x_2, x_10, x_4, x_5, x_6, x_7, x_8, x_9); lean_dec(x_4); lean_dec(x_2); return x_11; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -16135,64 +16197,64 @@ lean_object* x_19 = _args[18]; uint8_t x_20; lean_object* x_21; x_20 = lean_unbox(x_13); lean_dec(x_13); -x_21 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_20, x_14, x_15, x_16, x_17, x_18, x_19); +x_21 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_20, x_14, x_15, x_16, x_17, x_18, x_19); lean_dec(x_3); lean_dec(x_2); return x_21; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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: { uint8_t x_13; lean_object* x_14; x_13 = lean_unbox(x_6); lean_dec(x_6); -x_14 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4(x_1, x_2, x_3, x_4, x_5, x_13, x_7, x_8, x_9, x_10, x_11, x_12); +x_14 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6(x_1, x_2, x_3, x_4, x_5, x_13, x_7, x_8, x_9, x_10, x_11, x_12); return x_14; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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: { uint8_t x_14; lean_object* x_15; x_14 = lean_unbox(x_7); lean_dec(x_7); -x_15 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_14, x_8, x_9, x_10, x_11, x_12, x_13); +x_15 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7(x_1, x_2, x_3, x_4, x_5, x_6, x_14, x_8, x_9, x_10, x_11, x_12, x_13); lean_dec(x_1); return x_15; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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, lean_object* x_15) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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: { uint8_t x_16; lean_object* x_17; x_16 = lean_unbox(x_9); lean_dec(x_9); -x_17 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +x_17 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); lean_dec(x_2); lean_dec(x_1); return x_17; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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, lean_object* x_15) { _start: { uint8_t x_16; lean_object* x_17; x_16 = lean_unbox(x_9); lean_dec(x_9); -x_17 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +x_17 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); lean_dec(x_2); lean_dec(x_1); return x_17; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_asLinearComboImpl___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) { _start: { uint8_t x_13; lean_object* x_14; x_13 = lean_unbox(x_6); lean_dec(x_6); -x_14 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8(x_1, x_2, x_3, x_4, x_5, x_13, x_7, x_8, x_9, x_10, x_11, x_12); +x_14 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10(x_1, x_2, x_3, x_4, x_5, x_13, x_7, x_8, x_9, x_10, x_11, x_12); return x_14; } } @@ -17064,7 +17126,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality__ _start: { lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_13 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5; +x_13 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; x_14 = lean_array_push(x_13, x_1); x_15 = lean_array_push(x_14, x_2); x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality___lambda__1___closed__2; @@ -17905,7 +17967,7 @@ static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda_ 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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; -x_3 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8; +x_3 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__8; x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__5___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -17915,7 +17977,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__ _start: { lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_8 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__6; +x_8 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__6; x_9 = lean_array_push(x_8, x_1); x_10 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__5___closed__2; x_11 = l_Lean_Meta_mkAppM(x_10, x_9, x_3, x_4, x_5, x_6, x_7); @@ -18903,7 +18965,7 @@ static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8; +x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__8; x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__16; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; @@ -18996,7 +19058,7 @@ 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_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__2; +x_28 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__2; x_29 = l_Lean_Expr_isConstOf(x_25, x_28); if (x_29 == 0) { @@ -19858,31 +19920,81 @@ return x_39; } } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__1() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Ne", 2); -return x_1; +uint8_t x_15; +x_15 = lean_ctor_get_uint8(x_7, 0); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_3); +lean_dec(x_2); +x_16 = lean_unsigned_to_nat(0u); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_1); +lean_ctor_set(x_17, 1, 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_14); +return x_18; } +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_1, 1); +lean_inc(x_19); +x_20 = lean_ctor_get(x_1, 2); +lean_inc(x_20); +x_21 = l_List_elem___at_Lean_CollectLevelParams_visitExpr___spec__2(x_2, 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; +x_22 = lean_ctor_get(x_1, 3); +lean_inc(x_22); +lean_dec(x_1); +x_23 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_23, 0, x_2); +lean_ctor_set(x_23, 1, x_20); +x_24 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_24, 0, x_3); +lean_ctor_set(x_24, 1, x_19); +lean_ctor_set(x_24, 2, x_23); +lean_ctor_set(x_24, 3, x_22); +x_25 = lean_unsigned_to_nat(1u); +x_26 = lean_alloc_ctor(0, 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_14); +return x_27; } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__2() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Exists", 6); -return x_1; +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_2); +x_28 = lean_ctor_get(x_1, 3); +lean_inc(x_28); +lean_dec(x_1); +x_29 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_29, 0, x_3); +lean_ctor_set(x_29, 1, x_19); +lean_ctor_set(x_29, 2, x_20); +lean_ctor_set(x_29, 3, x_28); +x_30 = lean_unsigned_to_nat(1u); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_29); +lean_ctor_set(x_31, 1, 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_14); +return x_32; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Subtype", 7); -return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__4() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__1() { _start: { lean_object* x_1; @@ -19890,871 +20002,987 @@ x_1 = lean_mk_string_from_bytes("and_or_not_and_not_of_iff", 25); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__5() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; x_3 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__1; -x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__4; +x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__6() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__5; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__2; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__7() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("property", 8); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__8() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__3; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__7; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__8; +lean_inc(x_4); +x_16 = l_Lean_Expr_app___override(x_15, x_4); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__3; +x_18 = l_Lean_mkApp4(x_17, x_3, x_4, x_16, x_1); +x_19 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_18, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_19; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__9() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("choose_spec", 11); +x_1 = lean_mk_string_from_bytes("Subtype", 7); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__10() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__2; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__9; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__11() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__2() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("left", 4); +x_1 = lean_mk_string_from_bytes("property", 8); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__12() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__5; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__11; +x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__2; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__13() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__12; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__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_3); +x_15 = l_Lean_Meta_getLevel(x_3, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("right", 5); -return x_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; lean_object* x_22; lean_object* 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 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__3; +x_21 = l_Lean_Expr_const___override(x_20, x_19); +x_22 = l_Lean_mkApp3(x_21, x_3, x_4, x_1); +x_23 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_22, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_17); +return x_23; } +else +{ +uint8_t x_24; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +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_3); +lean_dec(x_2); +lean_dec(x_1); +x_24 = !lean_is_exclusive(x_15); +if (x_24 == 0) +{ +return x_15; } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__15() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__5; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__14; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_15, 0); +x_26 = lean_ctor_get(x_15, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(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_26); +return x_27; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___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_Omega_MetaProblem_addFact___lambda__1___closed__15; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__17() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("ofNat_congr", 11); +x_1 = lean_mk_string_from_bytes("Exists", 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__18() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; -x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; -x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__17; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("choose_spec", 11); +return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__19() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__18; -x_3 = l_Lean_Expr_const___override(x_2, x_1); +x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__2; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__20() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("sub_eq_zero_of_eq", 17); -return x_1; +lean_object* x_15; +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_3); +x_15 = l_Lean_Meta_getLevel(x_3, 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; lean_object* 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 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__3; +x_21 = l_Lean_Expr_const___override(x_20, x_19); +x_22 = l_Lean_mkApp3(x_21, x_3, x_4, x_1); +x_23 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_22, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_17); +return x_23; } +else +{ +uint8_t x_24; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +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_3); +lean_dec(x_2); +lean_dec(x_1); +x_24 = !lean_is_exclusive(x_15); +if (x_24 == 0) +{ +return x_15; } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__21() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__20; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_15, 0); +x_26 = lean_ctor_get(x_15, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(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_26); +return x_27; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__22() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__21; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__23() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("val_congr", 9); +x_1 = lean_mk_string_from_bytes("left", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__24() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__23; +x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__5; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__25() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__24; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__2; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__26() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("GT", 2); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__27() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("GE", 2); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__28() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__4() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("emod_eq_zero_of_dvd", 19); +x_1 = lean_mk_string_from_bytes("right", 5); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__29() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__28; +x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__5; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__4; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__30() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___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_Omega_MetaProblem_addFact___lambda__1___closed__29; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__5; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__31() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("mod_eq_zero_of_dvd", 18); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__32() { -_start: +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__3; +lean_inc(x_1); +lean_inc(x_4); +lean_inc(x_3); +x_16 = l_Lean_mkApp3(x_15, x_3, x_4, x_1); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_16, 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_17) == 0) { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__31; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__33() { -_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; +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_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__6; +x_23 = l_Lean_mkApp3(x_22, x_3, x_4, x_1); +x_24 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_20, x_23, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_19); +if (lean_obj_tag(x_24) == 0) { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__32; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__34() { -_start: +uint8_t x_25; +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("of_lex", 6); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__35() { -_start: +lean_object* x_26; uint8_t x_27; +x_26 = lean_ctor_get(x_24, 0); +x_27 = !lean_is_exclusive(x_26); +if (x_27 == 0) { -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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; -x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; -x_3 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8; -x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__34; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_26, 1); +x_29 = lean_nat_add(x_21, x_28); +lean_dec(x_28); +lean_dec(x_21); +lean_ctor_set(x_26, 1, x_29); +return x_24; } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__36() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("ge", 2); -return x_1; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_30 = lean_ctor_get(x_26, 0); +x_31 = lean_ctor_get(x_26, 1); +lean_inc(x_31); +lean_inc(x_30); +lean_dec(x_26); +x_32 = lean_nat_add(x_21, x_31); +lean_dec(x_31); +lean_dec(x_21); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_30); +lean_ctor_set(x_33, 1, x_32); +lean_ctor_set(x_24, 0, x_33); +return x_24; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__37() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("le_of_ge", 8); -return x_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; +x_34 = lean_ctor_get(x_24, 0); +x_35 = lean_ctor_get(x_24, 1); +lean_inc(x_35); +lean_inc(x_34); +lean_dec(x_24); +x_36 = lean_ctor_get(x_34, 0); +lean_inc(x_36); +x_37 = lean_ctor_get(x_34, 1); +lean_inc(x_37); +if (lean_is_exclusive(x_34)) { + lean_ctor_release(x_34, 0); + lean_ctor_release(x_34, 1); + x_38 = x_34; +} else { + lean_dec_ref(x_34); + x_38 = lean_box(0); } +x_39 = lean_nat_add(x_21, x_37); +lean_dec(x_37); +lean_dec(x_21); +if (lean_is_scalar(x_38)) { + x_40 = lean_alloc_ctor(0, 2, 0); +} else { + x_40 = x_38; } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__38() { -_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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; -x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; -x_3 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__37; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; +lean_ctor_set(x_40, 0, x_36); +lean_ctor_set(x_40, 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_35); +return x_41; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__39() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__38; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__40() { -_start: +uint8_t x_42; +lean_dec(x_21); +x_42 = !lean_is_exclusive(x_24); +if (x_42 == 0) { -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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; -x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; -x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__37; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} +return x_24; } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__41() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__40; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; -} +lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_43 = lean_ctor_get(x_24, 0); +x_44 = lean_ctor_get(x_24, 1); +lean_inc(x_44); +lean_inc(x_43); +lean_dec(x_24); +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_Omega_MetaProblem_addFact___lambda__1___closed__42() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("val_le_of_ge", 12); -return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__43() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__42; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; -} +uint8_t x_46; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +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_3); +lean_dec(x_1); +x_46 = !lean_is_exclusive(x_17); +if (x_46 == 0) +{ +return x_17; } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__44() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__43; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_17, 0); +x_48 = lean_ctor_get(x_17, 1); +lean_inc(x_48); +lean_inc(x_47); +lean_dec(x_17); +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; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__45() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("gt", 2); -return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__46() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("lt_of_gt", 8); +x_1 = lean_mk_string_from_bytes("of_lex", 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__47() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6___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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; -x_3 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__46; +x_3 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__8; +x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6___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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__48() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__47; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__49() { -_start: +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +lean_dec(x_3); +x_14 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__6; +x_15 = lean_array_push(x_14, x_1); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6___closed__2; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_17 = l_Lean_Meta_mkAppM(x_16, x_15, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_17) == 0) { -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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; -x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; -x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__46; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; +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); +x_20 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_19); +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_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_21 = !lean_is_exclusive(x_17); +if (x_21 == 0) +{ +return x_17; } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__50() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__49; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_17, 0); +x_23 = lean_ctor_get(x_17, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_17); +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; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__51() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("val_add_one_le_of_gt", 20); -return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__52() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__51; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; -} +lean_object* x_14; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_14 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot(x_1, x_3, 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); +lean_dec(x_8); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +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, 0); +lean_dec(x_17); +x_18 = lean_unsigned_to_nat(0u); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_2); +lean_ctor_set(x_19, 1, x_18); +lean_ctor_set(x_14, 0, x_19); +return x_14; } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__53() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__52; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_20 = lean_ctor_get(x_14, 1); +lean_inc(x_20); +lean_dec(x_14); +x_21 = lean_unsigned_to_nat(0u); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_2); +lean_ctor_set(x_22, 1, 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; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__54() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("ofNat_lt_of_lt", 14); -return x_1; +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_14, 1); +lean_inc(x_24); +lean_dec(x_14); +x_25 = lean_ctor_get(x_15, 0); +lean_inc(x_25); +lean_dec(x_15); +x_26 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_25, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_24); +return x_26; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__55() { -_start: +else { -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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; -x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; -x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__54; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} +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_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_27 = !lean_is_exclusive(x_14); +if (x_27 == 0) +{ +return x_14; } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__56() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__55; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_14, 0); +x_29 = lean_ctor_get(x_14, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_14); +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_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__57() { +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("add_one_le_of_lt", 16); +x_1 = lean_mk_string_from_bytes("mod_eq_zero_of_dvd", 18); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__58() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__57; +x_1 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__59() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__58; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__2; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__60() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_5); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__3; +x_17 = l_Lean_mkApp3(x_16, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("val_add_one_le_of_lt", 20); +x_1 = lean_mk_string_from_bytes("emod_eq_zero_of_dvd", 19); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__61() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__60; +x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__62() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__61; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__2; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__63() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("ofNat_le_of_le", 14); -return x_1; +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_5); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__3; +x_17 = l_Lean_mkApp3(x_16, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__64() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(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) { _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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; -x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; -x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__63; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; +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, 2, 0); +lean_ctor_set(x_14, 0, x_1); +lean_ctor_set(x_14, 1, 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_12); +return x_15; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__65() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__64; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; +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 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_3, x_11, x_12, x_13, 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 = l_Lean_Expr_cleanupAnnotations(x_17); +x_20 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__9___closed__2; +x_21 = l_Lean_Expr_isConstOf(x_19, x_20); +if (x_21 == 0) +{ +lean_object* x_22; uint8_t x_23; +x_22 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__10; +x_23 = l_Lean_Expr_isConstOf(x_19, x_22); +lean_dec(x_19); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_24 = lean_box(0); +x_25 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_24, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +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); +return x_25; +} +else +{ +lean_object* x_26; lean_object* x_27; +x_26 = lean_box(0); +x_27 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9(x_4, x_5, x_1, x_2, x_26, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_27; +} +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_19); +x_28 = lean_box(0); +x_29 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8(x_4, x_5, x_1, x_2, x_28, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_29; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__66() { +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("sub_nonneg_of_le", 16); -return x_1; +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_5); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__12___closed__2; +x_17 = l_Lean_mkApp3(x_16, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__67() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__66; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_5); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__11___closed__2; +x_17 = l_Lean_mkApp3(x_16, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__68() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__67; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; +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 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_3, x_11, x_12, x_13, 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 = l_Lean_Expr_cleanupAnnotations(x_17); +x_20 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__9___closed__2; +x_21 = l_Lean_Expr_isConstOf(x_19, x_20); +if (x_21 == 0) +{ +lean_object* x_22; uint8_t x_23; +x_22 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__10; +x_23 = l_Lean_Expr_isConstOf(x_19, x_22); +lean_dec(x_19); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_24 = lean_box(0); +x_25 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_24, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +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); +return x_25; +} +else +{ +lean_object* x_26; lean_object* x_27; +x_26 = lean_box(0); +x_27 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__13(x_4, x_5, x_1, x_2, x_26, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_27; +} +} +else +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_19); +x_28 = lean_box(0); +x_29 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__12(x_4, x_5, x_1, x_2, x_28, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_29; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__69() { +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("val_le_of_le", 12); +x_1 = lean_mk_string_from_bytes("val_le_of_ge", 12); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__70() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__69; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__71() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__70; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__2; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__72() { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__3; +x_17 = l_Lean_mkApp4(x_16, x_5, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("not_or_of_imp", 13); +x_1 = lean_mk_string_from_bytes("le_of_ge", 8); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__73() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__2() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__1; -x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__72; -x_3 = l_Lean_Name_mkStr2(x_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; +x_1 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; +x_3 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; +x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__74() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___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_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__73; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__2; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { _start: { +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_dec(x_5); -switch (lean_obj_tag(x_1)) { -case 5: -{ -lean_object* x_16; lean_object* x_17; -x_16 = l_Lean_Expr_getAppFnArgs(x_1); -x_17 = lean_ctor_get(x_16, 0); -lean_inc(x_17); -if (lean_obj_tag(x_17) == 1) -{ -lean_object* x_18; -x_18 = lean_ctor_get(x_17, 0); -lean_inc(x_18); -switch (lean_obj_tag(x_18)) { -case 0: -{ -uint8_t x_19; -x_19 = !lean_is_exclusive(x_16); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_20 = lean_ctor_get(x_16, 1); -x_21 = lean_ctor_get(x_16, 0); -lean_dec(x_21); -x_22 = lean_ctor_get(x_17, 1); -lean_inc(x_22); -lean_dec(x_17); -x_23 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___lambda__2___closed__1; -x_24 = lean_string_dec_eq(x_22, x_23); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__1; -x_26 = lean_string_dec_eq(x_22, x_25); -if (x_26 == 0) -{ -lean_object* x_27; uint8_t x_28; -x_27 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__1; -x_28 = lean_string_dec_eq(x_22, x_27); -if (x_28 == 0) -{ -lean_object* x_29; uint8_t x_30; -x_29 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__5; -x_30 = lean_string_dec_eq(x_22, x_29); -if (x_30 == 0) -{ -lean_object* x_31; uint8_t x_32; -x_31 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__2; -x_32 = lean_string_dec_eq(x_22, x_31); -if (x_32 == 0) -{ -lean_object* x_33; uint8_t x_34; -x_33 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__3; -x_34 = lean_string_dec_eq(x_22, x_33); -if (x_34 == 0) -{ -lean_object* x_35; uint8_t x_36; -x_35 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__3; -x_36 = lean_string_dec_eq(x_22, x_35); -if (x_36 == 0) -{ -lean_object* x_37; uint8_t x_38; -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_6); -x_37 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__1; -x_38 = lean_string_dec_eq(x_22, x_37); -lean_dec(x_22); -if (x_38 == 0) -{ -lean_object* x_39; lean_object* x_40; -lean_dec(x_20); -lean_dec(x_8); -lean_dec(x_4); -lean_dec(x_3); -x_39 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_39); -lean_ctor_set(x_16, 0, x_2); -x_40 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_40, 0, x_16); -lean_ctor_set(x_40, 1, x_15); -return x_40; +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__3; +x_17 = l_Lean_mkApp3(x_16, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } -else -{ -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_array_get_size(x_20); -lean_dec(x_20); -x_42 = lean_unsigned_to_nat(2u); -x_43 = lean_nat_dec_eq(x_41, x_42); -lean_dec(x_41); -if (x_43 == 0) -{ -lean_object* x_44; lean_object* x_45; -lean_dec(x_8); -lean_dec(x_4); -lean_dec(x_3); -x_44 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_44); -lean_ctor_set(x_16, 0, x_2); -x_45 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_45, 0, x_16); -lean_ctor_set(x_45, 1, x_15); -return x_45; } -else -{ -uint8_t x_46; -x_46 = lean_ctor_get_uint8(x_8, 0); -lean_dec(x_8); -if (x_46 == 0) +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17___closed__1() { +_start: { -lean_object* x_47; lean_object* x_48; -lean_dec(x_4); -lean_dec(x_3); -x_47 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_47); -lean_ctor_set(x_16, 0, x_2); -x_48 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_48, 0, x_16); -lean_ctor_set(x_48, 1, x_15); -return x_48; +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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; +x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; +x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__1; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } -else -{ -lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_49 = lean_ctor_get(x_2, 1); -lean_inc(x_49); -x_50 = lean_ctor_get(x_2, 2); -lean_inc(x_50); -x_51 = l_List_elem___at_Lean_CollectLevelParams_visitExpr___spec__2(x_3, 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; -x_52 = lean_ctor_get(x_2, 3); -lean_inc(x_52); -lean_dec(x_2); -x_53 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_53, 0, x_3); -lean_ctor_set(x_53, 1, x_50); -x_54 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_54, 0, x_4); -lean_ctor_set(x_54, 1, x_49); -lean_ctor_set(x_54, 2, x_53); -lean_ctor_set(x_54, 3, x_52); -x_55 = lean_unsigned_to_nat(1u); -lean_ctor_set(x_16, 1, x_55); -lean_ctor_set(x_16, 0, x_54); -x_56 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_56, 0, x_16); -lean_ctor_set(x_56, 1, x_15); -return x_56; } -else +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17___closed__2() { +_start: { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; -lean_dec(x_3); -x_57 = lean_ctor_get(x_2, 3); -lean_inc(x_57); -lean_dec(x_2); -x_58 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_58, 0, x_4); -lean_ctor_set(x_58, 1, x_49); -lean_ctor_set(x_58, 2, x_50); -lean_ctor_set(x_58, 3, x_57); -x_59 = lean_unsigned_to_nat(1u); -lean_ctor_set(x_16, 1, x_59); -lean_ctor_set(x_16, 0, x_58); -x_60 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_60, 0, x_16); -lean_ctor_set(x_60, 1, x_15); -return x_60; -} +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17___closed__1; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_5); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17___closed__2; +x_17 = l_Lean_mkApp3(x_16, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: { -lean_object* x_61; lean_object* x_62; uint8_t x_63; -lean_dec(x_22); -lean_dec(x_4); -x_61 = lean_array_get_size(x_20); -x_62 = lean_unsigned_to_nat(2u); -x_63 = lean_nat_dec_eq(x_61, x_62); -lean_dec(x_61); -if (x_63 == 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 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_3, x_11, x_12, x_13, 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 = l_Lean_Expr_cleanupAnnotations(x_17); +x_20 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__9___closed__2; +x_21 = l_Lean_Expr_isConstOf(x_19, x_20); +if (x_21 == 0) { -lean_object* x_64; lean_object* x_65; -lean_dec(x_20); +lean_object* x_22; uint8_t x_23; +x_22 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__10; +x_23 = l_Lean_Expr_isConstOf(x_19, x_22); +if (x_23 == 0) +{ +uint8_t x_24; +x_24 = l_Lean_Expr_isApp(x_19); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_19); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_25 = lean_box(0); +x_26 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_25, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -20763,47 +20991,25 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -x_64 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_64); -lean_ctor_set(x_16, 0, x_2); -x_65 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_65, 0, x_16); -lean_ctor_set(x_65, 1, x_15); -return x_65; +return x_26; } else { -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_free_object(x_16); -x_66 = lean_unsigned_to_nat(0u); -x_67 = lean_array_fget(x_20, x_66); -x_68 = lean_unsigned_to_nat(1u); -x_69 = lean_array_fget(x_20, x_68); -lean_dec(x_20); -x_70 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__8; -lean_inc(x_69); -x_71 = l_Lean_Expr_app___override(x_70, x_69); -x_72 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__6; -x_73 = l_Lean_mkApp4(x_72, x_67, x_69, x_71, x_3); -x_74 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_73, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_74; -} -} -} -else +lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_27 = l_Lean_Expr_appArg(x_19, lean_box(0)); +x_28 = l_Lean_Expr_appFnCleanup(x_19, lean_box(0)); +x_29 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__13___closed__1; +x_30 = l_Lean_Expr_isConstOf(x_28, x_29); +lean_dec(x_28); +if (x_30 == 0) { -lean_object* x_75; lean_object* x_76; uint8_t x_77; -lean_dec(x_22); +lean_object* x_31; lean_object* x_32; +lean_dec(x_27); +lean_dec(x_5); lean_dec(x_4); -x_75 = lean_array_get_size(x_20); -x_76 = lean_unsigned_to_nat(2u); -x_77 = lean_nat_dec_eq(x_75, x_76); -lean_dec(x_75); -if (x_77 == 0) -{ -lean_object* x_78; lean_object* x_79; -lean_dec(x_20); +lean_dec(x_1); +x_31 = lean_box(0); +x_32 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_31, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -20812,400 +21018,178 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -x_78 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_78); -lean_ctor_set(x_16, 0, x_2); -x_79 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_79, 0, x_16); -lean_ctor_set(x_79, 1, x_15); -return x_79; +return x_32; } else { -lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; -lean_free_object(x_16); -x_80 = lean_unsigned_to_nat(0u); -x_81 = lean_array_fget(x_20, x_80); -x_82 = lean_unsigned_to_nat(1u); -x_83 = lean_array_fget(x_20, x_82); -lean_dec(x_20); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_81); -x_84 = l_Lean_Meta_getLevel(x_81, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_84) == 0) -{ -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; -x_85 = lean_ctor_get(x_84, 0); -lean_inc(x_85); -x_86 = lean_ctor_get(x_84, 1); -lean_inc(x_86); -lean_dec(x_84); -x_87 = lean_box(0); -x_88 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_88, 0, x_85); -lean_ctor_set(x_88, 1, x_87); -x_89 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__8; -x_90 = l_Lean_Expr_const___override(x_89, x_88); -x_91 = l_Lean_mkApp3(x_90, x_81, x_83, x_3); -x_92 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_91, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_86); -return x_92; +lean_object* x_33; +x_33 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15(x_4, x_5, x_1, x_2, x_27, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_33; +} +} } else { -uint8_t x_93; -lean_dec(x_83); -lean_dec(x_81); -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_3); -lean_dec(x_2); -x_93 = !lean_is_exclusive(x_84); -if (x_93 == 0) -{ -return x_84; +lean_object* x_34; lean_object* x_35; +lean_dec(x_19); +x_34 = lean_box(0); +x_35 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17(x_4, x_5, x_1, x_2, x_34, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_35; +} } else { -lean_object* x_94; lean_object* x_95; lean_object* x_96; -x_94 = lean_ctor_get(x_84, 0); -x_95 = lean_ctor_get(x_84, 1); -lean_inc(x_95); -lean_inc(x_94); -lean_dec(x_84); -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_object* x_36; lean_object* x_37; +lean_dec(x_19); +x_36 = lean_box(0); +x_37 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16(x_4, x_5, x_1, x_2, x_36, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_37; } } } +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("val_add_one_le_of_gt", 20); +return x_1; } } -else -{ -lean_object* x_97; lean_object* x_98; uint8_t x_99; -lean_dec(x_22); -lean_dec(x_4); -x_97 = lean_array_get_size(x_20); -x_98 = lean_unsigned_to_nat(2u); -x_99 = lean_nat_dec_eq(x_97, x_98); -lean_dec(x_97); -if (x_99 == 0) +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__2() { +_start: { -lean_object* x_100; lean_object* x_101; -lean_dec(x_20); -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_3); -x_100 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_100); -lean_ctor_set(x_16, 0, x_2); -x_101 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_101, 0, x_16); -lean_ctor_set(x_101, 1, x_15); -return x_101; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__1; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; } -else +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__3() { +_start: { -lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; -lean_free_object(x_16); -x_102 = lean_unsigned_to_nat(0u); -x_103 = lean_array_fget(x_20, x_102); -x_104 = lean_unsigned_to_nat(1u); -x_105 = lean_array_fget(x_20, x_104); -lean_dec(x_20); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_103); -x_106 = l_Lean_Meta_getLevel(x_103, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_106) == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__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, 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) { +_start: { -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; -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 = lean_box(0); -x_110 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_110, 0, x_107); -lean_ctor_set(x_110, 1, x_109); -x_111 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__10; -x_112 = l_Lean_Expr_const___override(x_111, x_110); -x_113 = l_Lean_mkApp3(x_112, x_103, x_105, x_3); -x_114 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_113, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_108); -return x_114; +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__3; +x_17 = l_Lean_mkApp4(x_16, x_5, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } -else -{ -uint8_t x_115; -lean_dec(x_105); -lean_dec(x_103); -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_3); -lean_dec(x_2); -x_115 = !lean_is_exclusive(x_106); -if (x_115 == 0) -{ -return x_106; } -else +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__1() { +_start: { -lean_object* x_116; lean_object* x_117; lean_object* x_118; -x_116 = lean_ctor_get(x_106, 0); -x_117 = lean_ctor_get(x_106, 1); -lean_inc(x_117); -lean_inc(x_116); -lean_dec(x_106); -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; -} -} -} +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("lt_of_gt", 8); +return x_1; } } -else -{ -lean_object* x_119; lean_object* x_120; uint8_t x_121; -lean_dec(x_22); -lean_dec(x_4); -x_119 = lean_array_get_size(x_20); -x_120 = lean_unsigned_to_nat(2u); -x_121 = lean_nat_dec_eq(x_119, x_120); -lean_dec(x_119); -if (x_121 == 0) +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__2() { +_start: { -lean_object* x_122; lean_object* x_123; -lean_dec(x_20); -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_3); -x_122 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_122); -lean_ctor_set(x_16, 0, x_2); -x_123 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_123, 0, x_16); -lean_ctor_set(x_123, 1, x_15); -return x_123; +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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; +x_3 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; +x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__1; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } -else -{ -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_free_object(x_16); -x_124 = lean_unsigned_to_nat(0u); -x_125 = lean_array_fget(x_20, x_124); -x_126 = lean_unsigned_to_nat(1u); -x_127 = lean_array_fget(x_20, x_126); -lean_dec(x_20); -x_128 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__13; -lean_inc(x_3); -lean_inc(x_127); -lean_inc(x_125); -x_129 = l_Lean_mkApp3(x_128, x_125, x_127, x_3); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -x_130 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_129, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_130) == 0) -{ -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; -x_131 = lean_ctor_get(x_130, 0); -lean_inc(x_131); -x_132 = lean_ctor_get(x_130, 1); -lean_inc(x_132); -lean_dec(x_130); -x_133 = lean_ctor_get(x_131, 0); -lean_inc(x_133); -x_134 = lean_ctor_get(x_131, 1); -lean_inc(x_134); -lean_dec(x_131); -x_135 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__16; -x_136 = l_Lean_mkApp3(x_135, x_125, x_127, x_3); -x_137 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_133, x_136, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_132); -if (lean_obj_tag(x_137) == 0) -{ -uint8_t x_138; -x_138 = !lean_is_exclusive(x_137); -if (x_138 == 0) -{ -lean_object* x_139; uint8_t x_140; -x_139 = lean_ctor_get(x_137, 0); -x_140 = !lean_is_exclusive(x_139); -if (x_140 == 0) -{ -lean_object* x_141; lean_object* x_142; -x_141 = lean_ctor_get(x_139, 1); -x_142 = lean_nat_add(x_134, x_141); -lean_dec(x_141); -lean_dec(x_134); -lean_ctor_set(x_139, 1, x_142); -return x_137; } -else +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__3() { +_start: { -lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; -x_143 = lean_ctor_get(x_139, 0); -x_144 = lean_ctor_get(x_139, 1); -lean_inc(x_144); -lean_inc(x_143); -lean_dec(x_139); -x_145 = lean_nat_add(x_134, x_144); -lean_dec(x_144); -lean_dec(x_134); -x_146 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_146, 0, x_143); -lean_ctor_set(x_146, 1, x_145); -lean_ctor_set(x_137, 0, x_146); -return x_137; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: { -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; -x_147 = lean_ctor_get(x_137, 0); -x_148 = lean_ctor_get(x_137, 1); -lean_inc(x_148); -lean_inc(x_147); -lean_dec(x_137); -x_149 = lean_ctor_get(x_147, 0); -lean_inc(x_149); -x_150 = lean_ctor_get(x_147, 1); -lean_inc(x_150); -if (lean_is_exclusive(x_147)) { - lean_ctor_release(x_147, 0); - lean_ctor_release(x_147, 1); - x_151 = x_147; -} else { - lean_dec_ref(x_147); - x_151 = lean_box(0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_5); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__3; +x_17 = l_Lean_mkApp3(x_16, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } -x_152 = lean_nat_add(x_134, x_150); -lean_dec(x_150); -lean_dec(x_134); -if (lean_is_scalar(x_151)) { - x_153 = lean_alloc_ctor(0, 2, 0); -} else { - x_153 = x_151; } -lean_ctor_set(x_153, 0, x_149); -lean_ctor_set(x_153, 1, x_152); -x_154 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_154, 0, x_153); -lean_ctor_set(x_154, 1, x_148); -return x_154; +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21___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_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; +x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; +x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__1; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } } -else -{ -uint8_t x_155; -lean_dec(x_134); -x_155 = !lean_is_exclusive(x_137); -if (x_155 == 0) +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21___closed__2() { +_start: { -return x_137; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21___closed__1; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; } -else -{ -lean_object* x_156; lean_object* x_157; lean_object* x_158; -x_156 = lean_ctor_get(x_137, 0); -x_157 = lean_ctor_get(x_137, 1); -lean_inc(x_157); -lean_inc(x_156); -lean_dec(x_137); -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; } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_5); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21___closed__2; +x_17 = l_Lean_mkApp3(x_16, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: { -uint8_t x_159; -lean_dec(x_127); -lean_dec(x_125); -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_3); -x_159 = !lean_is_exclusive(x_130); -if (x_159 == 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 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_3, x_11, x_12, x_13, 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 = l_Lean_Expr_cleanupAnnotations(x_17); +x_20 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__9___closed__2; +x_21 = l_Lean_Expr_isConstOf(x_19, x_20); +if (x_21 == 0) { -return x_130; -} -else +lean_object* x_22; uint8_t x_23; +x_22 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__10; +x_23 = l_Lean_Expr_isConstOf(x_19, x_22); +if (x_23 == 0) { -lean_object* x_160; lean_object* x_161; lean_object* x_162; -x_160 = lean_ctor_get(x_130, 0); -x_161 = lean_ctor_get(x_130, 1); -lean_inc(x_161); -lean_inc(x_160); -lean_dec(x_130); -x_162 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_162, 0, x_160); -lean_ctor_set(x_162, 1, x_161); -return x_162; -} -} -} -} -} -else +uint8_t x_24; +x_24 = l_Lean_Expr_isApp(x_19); +if (x_24 == 0) { -lean_object* x_163; lean_object* x_164; uint8_t x_165; -lean_dec(x_22); +lean_object* x_25; lean_object* x_26; +lean_dec(x_19); +lean_dec(x_5); lean_dec(x_4); -x_163 = lean_array_get_size(x_20); -x_164 = lean_unsigned_to_nat(1u); -x_165 = lean_nat_dec_eq(x_163, x_164); -lean_dec(x_163); -if (x_165 == 0) -{ -lean_object* x_166; lean_object* x_167; -lean_dec(x_20); +lean_dec(x_1); +x_25 = lean_box(0); +x_26 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_25, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -21214,34 +21198,25 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -x_166 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_166); -lean_ctor_set(x_16, 0, x_2); -x_167 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_167, 0, x_16); -lean_ctor_set(x_167, 1, x_15); -return x_167; +return x_26; } else { -lean_object* x_168; lean_object* x_169; lean_object* x_170; -x_168 = lean_unsigned_to_nat(0u); -x_169 = lean_array_fget(x_20, x_168); -lean_dec(x_20); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -x_170 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot(x_3, x_169, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_170) == 0) -{ -lean_object* x_171; -x_171 = lean_ctor_get(x_170, 0); -lean_inc(x_171); -if (lean_obj_tag(x_171) == 0) +lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_27 = l_Lean_Expr_appArg(x_19, lean_box(0)); +x_28 = l_Lean_Expr_appFnCleanup(x_19, lean_box(0)); +x_29 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__13___closed__1; +x_30 = l_Lean_Expr_isConstOf(x_28, x_29); +lean_dec(x_28); +if (x_30 == 0) { -uint8_t x_172; +lean_object* x_31; lean_object* x_32; +lean_dec(x_27); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_31 = lean_box(0); +x_32 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_31, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -21250,419 +21225,184 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -x_172 = !lean_is_exclusive(x_170); -if (x_172 == 0) -{ -lean_object* x_173; -x_173 = lean_ctor_get(x_170, 0); -lean_dec(x_173); -lean_ctor_set(x_16, 1, x_168); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set(x_170, 0, x_16); -return x_170; +return x_32; } else { -lean_object* x_174; lean_object* x_175; -x_174 = lean_ctor_get(x_170, 1); -lean_inc(x_174); -lean_dec(x_170); -lean_ctor_set(x_16, 1, x_168); -lean_ctor_set(x_16, 0, x_2); -x_175 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_175, 0, x_16); -lean_ctor_set(x_175, 1, x_174); -return x_175; -} +lean_object* x_33; +x_33 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19(x_4, x_5, x_1, x_2, x_27, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_33; } -else -{ -lean_object* x_176; lean_object* x_177; lean_object* x_178; -lean_free_object(x_16); -x_176 = lean_ctor_get(x_170, 1); -lean_inc(x_176); -lean_dec(x_170); -x_177 = lean_ctor_get(x_171, 0); -lean_inc(x_177); -lean_dec(x_171); -x_178 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_177, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_176); -return x_178; } } else { -uint8_t x_179; -lean_free_object(x_16); -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_2); -x_179 = !lean_is_exclusive(x_170); -if (x_179 == 0) -{ -return x_170; +lean_object* x_34; lean_object* x_35; +lean_dec(x_19); +x_34 = lean_box(0); +x_35 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21(x_4, x_5, x_1, x_2, x_34, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_35; +} } else { -lean_object* x_180; lean_object* x_181; lean_object* x_182; -x_180 = lean_ctor_get(x_170, 0); -x_181 = lean_ctor_get(x_170, 1); -lean_inc(x_181); -lean_inc(x_180); -lean_dec(x_170); -x_182 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_182, 0, x_180); -lean_ctor_set(x_182, 1, x_181); -return x_182; +lean_object* x_36; lean_object* x_37; +lean_dec(x_19); +x_36 = lean_box(0); +x_37 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20(x_4, x_5, x_1, x_2, x_36, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_37; } } } -} -} -else -{ -lean_object* x_183; lean_object* x_184; uint8_t x_185; -lean_dec(x_22); -lean_dec(x_4); -x_183 = lean_array_get_size(x_20); -x_184 = lean_unsigned_to_nat(3u); -x_185 = lean_nat_dec_eq(x_183, x_184); -lean_dec(x_183); -if (x_185 == 0) +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__1() { +_start: { -lean_object* x_186; lean_object* x_187; -lean_dec(x_20); -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_3); -x_186 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_186); -lean_ctor_set(x_16, 0, x_2); -x_187 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_187, 0, x_16); -lean_ctor_set(x_187, 1, x_15); -return x_187; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("val_add_one_le_of_lt", 20); +return x_1; } -else -{ -lean_object* x_188; lean_object* x_189; -x_188 = lean_unsigned_to_nat(0u); -x_189 = lean_array_fget(x_20, x_188); -if (lean_obj_tag(x_189) == 4) -{ -lean_object* x_190; -x_190 = lean_ctor_get(x_189, 0); -lean_inc(x_190); -if (lean_obj_tag(x_190) == 1) -{ -lean_object* x_191; -x_191 = lean_ctor_get(x_190, 0); -lean_inc(x_191); -if (lean_obj_tag(x_191) == 0) -{ -lean_object* x_192; lean_object* x_193; lean_object* x_194; uint8_t x_195; -x_192 = lean_ctor_get(x_189, 1); -lean_inc(x_192); -lean_dec(x_189); -x_193 = lean_ctor_get(x_190, 1); -lean_inc(x_193); -lean_dec(x_190); -x_194 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_195 = lean_string_dec_eq(x_193, x_194); -if (x_195 == 0) -{ -lean_object* x_196; uint8_t x_197; -x_196 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_197 = lean_string_dec_eq(x_193, x_196); -lean_dec(x_193); -if (x_197 == 0) -{ -lean_object* x_198; -lean_dec(x_192); -lean_dec(x_20); -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_3); -lean_ctor_set(x_16, 1, x_188); -lean_ctor_set(x_16, 0, x_2); -x_198 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_198, 0, x_16); -lean_ctor_set(x_198, 1, x_15); -return x_198; } -else -{ -if (lean_obj_tag(x_192) == 0) +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__2() { +_start: { -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_free_object(x_16); -x_199 = lean_unsigned_to_nat(1u); -x_200 = lean_array_fget(x_20, x_199); -x_201 = lean_unsigned_to_nat(2u); -x_202 = lean_array_fget(x_20, x_201); -lean_dec(x_20); -x_203 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__11___closed__2; -x_204 = l_Lean_mkApp3(x_203, x_200, x_202, x_3); -x_205 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_204, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_205; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__1; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; } -else -{ -uint8_t x_206; -lean_dec(x_20); -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_3); -x_206 = !lean_is_exclusive(x_192); -if (x_206 == 0) -{ -lean_object* x_207; lean_object* x_208; -x_207 = lean_ctor_get(x_192, 1); -lean_dec(x_207); -x_208 = lean_ctor_get(x_192, 0); -lean_dec(x_208); -lean_ctor_set(x_16, 1, x_188); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_192, 0); -lean_ctor_set(x_192, 1, x_15); -lean_ctor_set(x_192, 0, x_16); -return x_192; } -else +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__3() { +_start: { -lean_object* x_209; -lean_dec(x_192); -lean_ctor_set(x_16, 1, x_188); -lean_ctor_set(x_16, 0, x_2); -x_209 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_209, 0, x_16); -lean_ctor_set(x_209, 1, x_15); -return x_209; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__3; +x_17 = l_Lean_mkApp4(x_16, x_5, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } } -else -{ -lean_dec(x_193); -if (lean_obj_tag(x_192) == 0) +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__1() { +_start: { -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_free_object(x_16); -x_210 = lean_unsigned_to_nat(1u); -x_211 = lean_array_fget(x_20, x_210); -x_212 = lean_unsigned_to_nat(2u); -x_213 = lean_array_fget(x_20, x_212); -lean_dec(x_20); -x_214 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__12___closed__2; -x_215 = l_Lean_mkApp3(x_214, x_211, x_213, x_3); -x_216 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_215, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_216; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("ofNat_lt_of_lt", 14); +return x_1; } -else -{ -uint8_t x_217; -lean_dec(x_20); -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_3); -x_217 = !lean_is_exclusive(x_192); -if (x_217 == 0) -{ -lean_object* x_218; lean_object* x_219; -x_218 = lean_ctor_get(x_192, 1); -lean_dec(x_218); -x_219 = lean_ctor_get(x_192, 0); -lean_dec(x_219); -lean_ctor_set(x_16, 1, x_188); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_192, 0); -lean_ctor_set(x_192, 1, x_15); -lean_ctor_set(x_192, 0, x_16); -return x_192; } -else +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__2() { +_start: { -lean_object* x_220; -lean_dec(x_192); -lean_ctor_set(x_16, 1, x_188); -lean_ctor_set(x_16, 0, x_2); -x_220 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_220, 0, x_16); -lean_ctor_set(x_220, 1, x_15); -return x_220; +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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; +x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; +x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___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_Tactic_Omega_MetaProblem_addFact___lambda__24___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_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: { -lean_object* x_221; -lean_dec(x_191); -lean_dec(x_190); -lean_dec(x_189); -lean_dec(x_20); -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_3); -lean_ctor_set(x_16, 1, x_188); -lean_ctor_set(x_16, 0, x_2); -x_221 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_221, 0, x_16); -lean_ctor_set(x_221, 1, x_15); -return x_221; +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_5); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__3; +x_17 = l_Lean_mkApp3(x_16, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } } -else +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__1() { +_start: { -lean_object* x_222; -lean_dec(x_190); -lean_dec(x_189); -lean_dec(x_20); -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_3); -lean_ctor_set(x_16, 1, x_188); -lean_ctor_set(x_16, 0, x_2); -x_222 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_222, 0, x_16); -lean_ctor_set(x_222, 1, x_15); -return x_222; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("add_one_le_of_lt", 16); +return x_1; } } -else +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__2() { +_start: { -lean_object* x_223; -lean_dec(x_189); -lean_dec(x_20); -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_3); -lean_ctor_set(x_16, 1, x_188); -lean_ctor_set(x_16, 0, x_2); -x_223 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_223, 0, x_16); -lean_ctor_set(x_223, 1, x_15); -return x_223; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__1; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; } } +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___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_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; } } -else -{ -lean_object* x_224; lean_object* x_225; uint8_t x_226; -lean_dec(x_22); -lean_dec(x_4); -x_224 = lean_array_get_size(x_20); -x_225 = lean_unsigned_to_nat(3u); -x_226 = lean_nat_dec_eq(x_224, x_225); -lean_dec(x_224); -if (x_226 == 0) +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: { -lean_object* x_227; lean_object* x_228; -lean_dec(x_20); -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_3); -x_227 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_227); -lean_ctor_set(x_16, 0, x_2); -x_228 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_228, 0, x_16); -lean_ctor_set(x_228, 1, x_15); -return x_228; +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_5); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__3; +x_17 = l_Lean_mkApp3(x_16, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } -else -{ -lean_object* x_229; lean_object* x_230; -x_229 = lean_unsigned_to_nat(0u); -x_230 = lean_array_fget(x_20, x_229); -switch (lean_obj_tag(x_230)) { -case 4: -{ -lean_object* x_231; -x_231 = lean_ctor_get(x_230, 0); -lean_inc(x_231); -if (lean_obj_tag(x_231) == 1) +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: { -lean_object* x_232; -x_232 = lean_ctor_get(x_231, 0); -lean_inc(x_232); -if (lean_obj_tag(x_232) == 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 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_3, x_11, x_12, x_13, 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 = l_Lean_Expr_cleanupAnnotations(x_17); +x_20 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__9___closed__2; +x_21 = l_Lean_Expr_isConstOf(x_19, x_20); +if (x_21 == 0) { -lean_object* x_233; lean_object* x_234; lean_object* x_235; uint8_t x_236; -x_233 = lean_ctor_get(x_230, 1); -lean_inc(x_233); -lean_dec(x_230); -x_234 = lean_ctor_get(x_231, 1); -lean_inc(x_234); -lean_dec(x_231); -x_235 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_236 = lean_string_dec_eq(x_234, x_235); -if (x_236 == 0) +lean_object* x_22; uint8_t x_23; +x_22 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__10; +x_23 = l_Lean_Expr_isConstOf(x_19, x_22); +if (x_23 == 0) { -lean_object* x_237; uint8_t x_238; -x_237 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_238 = lean_string_dec_eq(x_234, x_237); -lean_dec(x_234); -if (x_238 == 0) +uint8_t x_24; +x_24 = l_Lean_Expr_isApp(x_19); +if (x_24 == 0) { -lean_object* x_239; -lean_dec(x_233); -lean_dec(x_20); +lean_object* x_25; lean_object* x_26; +lean_dec(x_19); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_25 = lean_box(0); +x_26 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_25, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -21671,34 +21411,25 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -x_239 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_239, 0, x_16); -lean_ctor_set(x_239, 1, x_15); -return x_239; +return x_26; } else { -if (lean_obj_tag(x_233) == 0) -{ -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_free_object(x_16); -x_240 = lean_unsigned_to_nat(1u); -x_241 = lean_array_fget(x_20, x_240); -x_242 = lean_unsigned_to_nat(2u); -x_243 = lean_array_fget(x_20, x_242); -lean_dec(x_20); -x_244 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__19; -x_245 = l_Lean_mkApp3(x_244, x_241, x_243, x_3); -x_246 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_245, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_246; -} -else +lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_27 = l_Lean_Expr_appArg(x_19, lean_box(0)); +x_28 = l_Lean_Expr_appFnCleanup(x_19, lean_box(0)); +x_29 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__13___closed__1; +x_30 = l_Lean_Expr_isConstOf(x_28, x_29); +lean_dec(x_28); +if (x_30 == 0) { -uint8_t x_247; -lean_dec(x_20); +lean_object* x_31; lean_object* x_32; +lean_dec(x_27); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_31 = lean_box(0); +x_32 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_31, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -21707,261 +21438,269 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -x_247 = !lean_is_exclusive(x_233); -if (x_247 == 0) -{ -lean_object* x_248; lean_object* x_249; -x_248 = lean_ctor_get(x_233, 1); -lean_dec(x_248); -x_249 = lean_ctor_get(x_233, 0); -lean_dec(x_249); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_233, 0); -lean_ctor_set(x_233, 1, x_15); -lean_ctor_set(x_233, 0, x_16); -return x_233; +return x_32; } else { -lean_object* x_250; -lean_dec(x_233); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -x_250 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_250, 0, x_16); -lean_ctor_set(x_250, 1, x_15); -return x_250; -} +lean_object* x_33; +x_33 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23(x_4, x_5, x_1, x_2, x_27, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_33; } } } else { -lean_dec(x_234); -if (lean_obj_tag(x_233) == 0) -{ -lean_object* x_251; lean_object* x_252; lean_object* x_253; lean_object* x_254; lean_object* x_255; -x_251 = lean_unsigned_to_nat(1u); -x_252 = lean_array_fget(x_20, x_251); -x_253 = lean_unsigned_to_nat(2u); -x_254 = lean_array_fget(x_20, x_253); -lean_dec(x_20); -lean_inc(x_254); -x_255 = l_Lean_Expr_int_x3f(x_254); -if (lean_obj_tag(x_255) == 0) -{ -lean_object* x_256; lean_object* x_257; lean_object* x_258; -lean_free_object(x_16); -x_256 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__22; -x_257 = l_Lean_mkApp3(x_256, x_252, x_254, x_3); -x_258 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_257, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_258; +lean_object* x_34; lean_object* x_35; +lean_dec(x_19); +x_34 = lean_box(0); +x_35 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25(x_4, x_5, x_1, x_2, x_34, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_35; +} } else { -lean_object* x_259; lean_object* x_260; uint8_t x_261; -x_259 = lean_ctor_get(x_255, 0); -lean_inc(x_259); -lean_dec(x_255); -x_260 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__8; -x_261 = lean_int_dec_eq(x_259, x_260); -lean_dec(x_259); -if (x_261 == 0) +lean_object* x_36; lean_object* x_37; +lean_dec(x_19); +x_36 = lean_box(0); +x_37 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24(x_4, x_5, x_1, x_2, x_36, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_37; +} +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__1() { +_start: { -lean_object* x_262; lean_object* x_263; lean_object* x_264; -lean_free_object(x_16); -x_262 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__22; -x_263 = l_Lean_mkApp3(x_262, x_252, x_254, x_3); -x_264 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_263, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_264; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("val_le_of_le", 12); +return x_1; } -else +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__2() { +_start: { -lean_object* x_265; -lean_dec(x_254); -x_265 = l_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality(x_2, x_3, x_252, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_265) == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__1; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__3() { +_start: { -uint8_t x_266; -x_266 = !lean_is_exclusive(x_265); -if (x_266 == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: { -lean_object* x_267; -x_267 = lean_ctor_get(x_265, 0); -lean_ctor_set(x_16, 1, x_251); -lean_ctor_set(x_16, 0, x_267); -lean_ctor_set(x_265, 0, x_16); -return x_265; +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__3; +x_17 = l_Lean_mkApp4(x_16, x_5, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } -else +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__1() { +_start: { -lean_object* x_268; lean_object* x_269; lean_object* x_270; -x_268 = lean_ctor_get(x_265, 0); -x_269 = lean_ctor_get(x_265, 1); -lean_inc(x_269); -lean_inc(x_268); -lean_dec(x_265); -lean_ctor_set(x_16, 1, x_251); -lean_ctor_set(x_16, 0, x_268); -x_270 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_270, 0, x_16); -lean_ctor_set(x_270, 1, x_269); -return x_270; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("ofNat_le_of_le", 14); +return x_1; } } -else +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__2() { +_start: { -uint8_t x_271; -lean_free_object(x_16); -x_271 = !lean_is_exclusive(x_265); -if (x_271 == 0) +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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; +x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; +x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___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_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__3() { +_start: { -return x_265; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; } -else +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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) { +_start: { -lean_object* x_272; lean_object* x_273; lean_object* x_274; -x_272 = lean_ctor_get(x_265, 0); -x_273 = lean_ctor_get(x_265, 1); -lean_inc(x_273); -lean_inc(x_272); -lean_dec(x_265); -x_274 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_274, 0, x_272); -lean_ctor_set(x_274, 1, x_273); -return x_274; +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_5); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__3; +x_17 = l_Lean_mkApp3(x_16, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("sub_nonneg_of_le", 16); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__1; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; } } +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___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_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__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, 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) { +_start: +{ +lean_object* x_16; +lean_dec(x_5); +lean_inc(x_1); +x_16 = l_Lean_Expr_int_x3f(x_1); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__3; +x_18 = l_Lean_mkApp3(x_17, x_2, x_1, x_3); +x_19 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_18, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_19; } else { -uint8_t x_275; +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_16, 0); +lean_inc(x_20); +lean_dec(x_16); +x_21 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__8; +x_22 = lean_int_dec_eq(x_20, x_21); lean_dec(x_20); -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_3); -x_275 = !lean_is_exclusive(x_233); -if (x_275 == 0) +if (x_22 == 0) { -lean_object* x_276; lean_object* x_277; -x_276 = lean_ctor_get(x_233, 1); -lean_dec(x_276); -x_277 = lean_ctor_get(x_233, 0); -lean_dec(x_277); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_233, 0); -lean_ctor_set(x_233, 1, x_15); -lean_ctor_set(x_233, 0, x_16); -return x_233; +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__3; +x_24 = l_Lean_mkApp3(x_23, x_2, x_1, x_3); +x_25 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_24, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_25; } else { -lean_object* x_278; -lean_dec(x_233); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -x_278 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_278, 0, x_16); -lean_ctor_set(x_278, 1, x_15); -return x_278; -} +lean_object* x_26; +lean_dec(x_1); +x_26 = l_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality(x_4, x_3, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +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_unsigned_to_nat(1u); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_28); +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_unsigned_to_nat(1u); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_31); +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 { -lean_object* x_279; -lean_dec(x_232); -lean_dec(x_231); -lean_dec(x_230); -lean_dec(x_20); -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_3); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -x_279 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_279, 0, x_16); -lean_ctor_set(x_279, 1, x_15); -return x_279; -} +uint8_t x_36; +x_36 = !lean_is_exclusive(x_26); +if (x_36 == 0) +{ +return x_26; } else { -lean_object* x_280; -lean_dec(x_231); -lean_dec(x_230); -lean_dec(x_20); -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_3); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -x_280 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_280, 0, x_16); -lean_ctor_set(x_280, 1, x_15); -return x_280; +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; } } -case 5: +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__30(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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_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_281; -x_281 = lean_ctor_get(x_230, 0); -lean_inc(x_281); -if (lean_obj_tag(x_281) == 4) +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 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_3, x_11, x_12, x_13, 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 = l_Lean_Expr_cleanupAnnotations(x_17); +x_20 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__9___closed__2; +x_21 = l_Lean_Expr_isConstOf(x_19, x_20); +if (x_21 == 0) { -lean_object* x_282; -x_282 = lean_ctor_get(x_281, 0); -lean_inc(x_282); -if (lean_obj_tag(x_282) == 1) +lean_object* x_22; uint8_t x_23; +x_22 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__10; +x_23 = l_Lean_Expr_isConstOf(x_19, x_22); +if (x_23 == 0) { -lean_object* x_283; -x_283 = lean_ctor_get(x_282, 0); -lean_inc(x_283); -if (lean_obj_tag(x_283) == 0) +uint8_t x_24; +x_24 = l_Lean_Expr_isApp(x_19); +if (x_24 == 0) { -lean_object* x_284; lean_object* x_285; lean_object* x_286; lean_object* x_287; uint8_t x_288; -x_284 = lean_ctor_get(x_230, 1); -lean_inc(x_284); -lean_dec(x_230); -x_285 = lean_ctor_get(x_281, 1); -lean_inc(x_285); -lean_dec(x_281); -x_286 = lean_ctor_get(x_282, 1); -lean_inc(x_286); -lean_dec(x_282); -x_287 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_288 = lean_string_dec_eq(x_286, x_287); -lean_dec(x_286); -if (x_288 == 0) -{ -lean_object* x_289; -lean_dec(x_285); -lean_dec(x_284); -lean_dec(x_20); +lean_object* x_25; lean_object* x_26; +lean_dec(x_19); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_25 = lean_box(0); +x_26 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_25, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -21970,35 +21709,25 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -x_289 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_289, 0, x_16); -lean_ctor_set(x_289, 1, x_15); -return x_289; +return x_26; } else { -if (lean_obj_tag(x_285) == 0) -{ -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_free_object(x_16); -x_290 = lean_unsigned_to_nat(1u); -x_291 = lean_array_fget(x_20, x_290); -x_292 = lean_unsigned_to_nat(2u); -x_293 = lean_array_fget(x_20, x_292); -lean_dec(x_20); -x_294 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__25; -x_295 = l_Lean_mkApp4(x_294, x_284, x_291, x_293, x_3); -x_296 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_295, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_296; -} -else +lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_27 = l_Lean_Expr_appArg(x_19, lean_box(0)); +x_28 = l_Lean_Expr_appFnCleanup(x_19, lean_box(0)); +x_29 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__13___closed__1; +x_30 = l_Lean_Expr_isConstOf(x_28, x_29); +lean_dec(x_28); +if (x_30 == 0) { -uint8_t x_297; -lean_dec(x_284); -lean_dec(x_20); +lean_object* x_31; lean_object* x_32; +lean_dec(x_27); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_31 = lean_box(0); +x_32 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_31, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -22007,314 +21736,269 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -x_297 = !lean_is_exclusive(x_285); -if (x_297 == 0) -{ -lean_object* x_298; lean_object* x_299; -x_298 = lean_ctor_get(x_285, 1); -lean_dec(x_298); -x_299 = lean_ctor_get(x_285, 0); -lean_dec(x_299); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_285, 0); -lean_ctor_set(x_285, 1, x_15); -lean_ctor_set(x_285, 0, x_16); -return x_285; +return x_32; } else { -lean_object* x_300; -lean_dec(x_285); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -x_300 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_300, 0, x_16); -lean_ctor_set(x_300, 1, x_15); -return x_300; +lean_object* x_33; +x_33 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27(x_4, x_5, x_1, x_2, x_27, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_33; +} } } +else +{ +lean_object* x_34; lean_object* x_35; +lean_dec(x_19); +x_34 = lean_box(0); +x_35 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29(x_4, x_5, x_1, x_2, x_34, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_35; } } else { -lean_object* x_301; -lean_dec(x_283); -lean_dec(x_282); -lean_dec(x_281); -lean_dec(x_230); -lean_dec(x_20); -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_3); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -x_301 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_301, 0, x_16); -lean_ctor_set(x_301, 1, x_15); -return x_301; +lean_object* x_36; lean_object* x_37; +lean_dec(x_19); +x_36 = lean_box(0); +x_37 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28(x_4, x_5, x_1, x_2, x_36, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_37; } } -else +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__1() { +_start: { -lean_object* x_302; -lean_dec(x_282); -lean_dec(x_281); -lean_dec(x_230); -lean_dec(x_20); -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_3); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -x_302 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_302, 0, x_16); -lean_ctor_set(x_302, 1, x_15); -return x_302; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("val_congr", 9); +return x_1; } } -else +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__2() { +_start: { -lean_object* x_303; -lean_dec(x_281); -lean_dec(x_230); -lean_dec(x_20); -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_3); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -x_303 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_303, 0, x_16); -lean_ctor_set(x_303, 1, x_15); -return x_303; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__1; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; } } -default: +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__3() { +_start: { -lean_object* x_304; -lean_dec(x_230); -lean_dec(x_20); -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_3); -lean_ctor_set(x_16, 1, x_229); -lean_ctor_set(x_16, 0, x_2); -x_304 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_304, 0, x_16); -lean_ctor_set(x_304, 1, x_15); -return x_304; -} +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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_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_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__3; +x_17 = l_Lean_mkApp4(x_16, x_5, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; } } -else +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__1() { +_start: { -lean_object* x_305; lean_object* x_306; lean_object* x_307; uint8_t x_308; -x_305 = lean_ctor_get(x_16, 1); -lean_inc(x_305); -lean_dec(x_16); -x_306 = lean_ctor_get(x_17, 1); -lean_inc(x_306); -lean_dec(x_17); -x_307 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___lambda__2___closed__1; -x_308 = lean_string_dec_eq(x_306, x_307); -if (x_308 == 0) +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("ofNat_congr", 11); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__2() { +_start: { -lean_object* x_309; uint8_t x_310; -x_309 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__1; -x_310 = lean_string_dec_eq(x_306, x_309); -if (x_310 == 0) +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_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; +x_3 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; +x_4 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___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_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__3() { +_start: { -lean_object* x_311; uint8_t x_312; -x_311 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__1; -x_312 = lean_string_dec_eq(x_306, x_311); -if (x_312 == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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_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_313; uint8_t x_314; -x_313 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__5; -x_314 = lean_string_dec_eq(x_306, x_313); -if (x_314 == 0) +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_5); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__3; +x_17 = l_Lean_mkApp3(x_16, x_1, x_2, x_3); +x_18 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_18; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__1() { +_start: { -lean_object* x_315; uint8_t x_316; -x_315 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__2; -x_316 = lean_string_dec_eq(x_306, x_315); -if (x_316 == 0) +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("sub_eq_zero_of_eq", 17); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__2() { +_start: { -lean_object* x_317; uint8_t x_318; -x_317 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__3; -x_318 = lean_string_dec_eq(x_306, x_317); -if (x_318 == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__1; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__3() { +_start: { -lean_object* x_319; uint8_t x_320; -x_319 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__3; -x_320 = lean_string_dec_eq(x_306, x_319); -if (x_320 == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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_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_321; uint8_t x_322; -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_6); -x_321 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__1; -x_322 = lean_string_dec_eq(x_306, x_321); -lean_dec(x_306); -if (x_322 == 0) +lean_object* x_16; +lean_dec(x_5); +lean_inc(x_1); +x_16 = l_Lean_Expr_int_x3f(x_1); +if (lean_obj_tag(x_16) == 0) { -lean_object* x_323; lean_object* x_324; lean_object* x_325; -lean_dec(x_305); -lean_dec(x_8); -lean_dec(x_4); -lean_dec(x_3); -x_323 = lean_unsigned_to_nat(0u); -x_324 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_324, 0, x_2); -lean_ctor_set(x_324, 1, x_323); -x_325 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_325, 0, x_324); -lean_ctor_set(x_325, 1, x_15); -return x_325; +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__3; +x_18 = l_Lean_mkApp3(x_17, x_2, x_1, x_3); +x_19 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_18, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_19; } else { -lean_object* x_326; lean_object* x_327; uint8_t x_328; -x_326 = lean_array_get_size(x_305); -lean_dec(x_305); -x_327 = lean_unsigned_to_nat(2u); -x_328 = lean_nat_dec_eq(x_326, x_327); -lean_dec(x_326); -if (x_328 == 0) +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_16, 0); +lean_inc(x_20); +lean_dec(x_16); +x_21 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__8; +x_22 = lean_int_dec_eq(x_20, x_21); +lean_dec(x_20); +if (x_22 == 0) { -lean_object* x_329; lean_object* x_330; lean_object* x_331; -lean_dec(x_8); -lean_dec(x_4); -lean_dec(x_3); -x_329 = lean_unsigned_to_nat(0u); -x_330 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_330, 0, x_2); -lean_ctor_set(x_330, 1, x_329); -x_331 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_331, 0, x_330); -lean_ctor_set(x_331, 1, x_15); -return x_331; +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__3; +x_24 = l_Lean_mkApp3(x_23, x_2, x_1, x_3); +x_25 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_4, x_24, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +return x_25; } else { -uint8_t x_332; -x_332 = lean_ctor_get_uint8(x_8, 0); -lean_dec(x_8); -if (x_332 == 0) +lean_object* x_26; +lean_dec(x_1); +x_26 = l_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality(x_4, x_3, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_26) == 0) { -lean_object* x_333; lean_object* x_334; lean_object* x_335; -lean_dec(x_4); -lean_dec(x_3); -x_333 = lean_unsigned_to_nat(0u); -x_334 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_334, 0, x_2); -lean_ctor_set(x_334, 1, x_333); -x_335 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_335, 0, x_334); -lean_ctor_set(x_335, 1, x_15); -return x_335; +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_unsigned_to_nat(1u); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +lean_ctor_set(x_26, 0, x_30); +return x_26; } else { -lean_object* x_336; lean_object* x_337; uint8_t x_338; -x_336 = lean_ctor_get(x_2, 1); -lean_inc(x_336); -x_337 = lean_ctor_get(x_2, 2); -lean_inc(x_337); -x_338 = l_List_elem___at_Lean_CollectLevelParams_visitExpr___spec__2(x_3, x_337); -if (x_338 == 0) +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_unsigned_to_nat(1u); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_31); +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 { -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_339 = lean_ctor_get(x_2, 3); -lean_inc(x_339); -lean_dec(x_2); -x_340 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_340, 0, x_3); -lean_ctor_set(x_340, 1, x_337); -x_341 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_341, 0, x_4); -lean_ctor_set(x_341, 1, x_336); -lean_ctor_set(x_341, 2, x_340); -lean_ctor_set(x_341, 3, x_339); -x_342 = lean_unsigned_to_nat(1u); -x_343 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_343, 0, x_341); -lean_ctor_set(x_343, 1, x_342); -x_344 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_344, 0, x_343); -lean_ctor_set(x_344, 1, x_15); -return x_344; -} -else -{ -lean_object* x_345; lean_object* x_346; lean_object* x_347; lean_object* x_348; lean_object* x_349; -lean_dec(x_3); -x_345 = lean_ctor_get(x_2, 3); -lean_inc(x_345); -lean_dec(x_2); -x_346 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_346, 0, x_4); -lean_ctor_set(x_346, 1, x_336); -lean_ctor_set(x_346, 2, x_337); -lean_ctor_set(x_346, 3, x_345); -x_347 = lean_unsigned_to_nat(1u); -x_348 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_348, 0, x_346); -lean_ctor_set(x_348, 1, x_347); -x_349 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_349, 0, x_348); -lean_ctor_set(x_349, 1, x_15); -return x_349; +uint8_t x_36; +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 +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__34(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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_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_350; lean_object* x_351; uint8_t x_352; -lean_dec(x_306); -lean_dec(x_4); -x_350 = lean_array_get_size(x_305); -x_351 = lean_unsigned_to_nat(2u); -x_352 = lean_nat_dec_eq(x_350, x_351); -lean_dec(x_350); -if (x_352 == 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 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_3, x_11, x_12, x_13, 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 = l_Lean_Expr_cleanupAnnotations(x_17); +x_20 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__9___closed__2; +x_21 = l_Lean_Expr_isConstOf(x_19, x_20); +if (x_21 == 0) { -lean_object* x_353; lean_object* x_354; lean_object* x_355; -lean_dec(x_305); +lean_object* x_22; uint8_t x_23; +x_22 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__10; +x_23 = l_Lean_Expr_isConstOf(x_19, x_22); +if (x_23 == 0) +{ +uint8_t x_24; +x_24 = l_Lean_Expr_isApp(x_19); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_19); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_25 = lean_box(0); +x_26 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_25, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -22323,47 +22007,25 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -x_353 = lean_unsigned_to_nat(0u); -x_354 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_354, 0, x_2); -lean_ctor_set(x_354, 1, x_353); -x_355 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_355, 0, x_354); -lean_ctor_set(x_355, 1, x_15); -return x_355; -} -else -{ -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_356 = lean_unsigned_to_nat(0u); -x_357 = lean_array_fget(x_305, x_356); -x_358 = lean_unsigned_to_nat(1u); -x_359 = lean_array_fget(x_305, x_358); -lean_dec(x_305); -x_360 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__8; -lean_inc(x_359); -x_361 = l_Lean_Expr_app___override(x_360, x_359); -x_362 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__6; -x_363 = l_Lean_mkApp4(x_362, x_357, x_359, x_361, x_3); -x_364 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_363, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_364; -} -} +return x_26; } else { -lean_object* x_365; lean_object* x_366; uint8_t x_367; -lean_dec(x_306); -lean_dec(x_4); -x_365 = lean_array_get_size(x_305); -x_366 = lean_unsigned_to_nat(2u); -x_367 = lean_nat_dec_eq(x_365, x_366); -lean_dec(x_365); -if (x_367 == 0) +lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_27 = l_Lean_Expr_appArg(x_19, lean_box(0)); +x_28 = l_Lean_Expr_appFnCleanup(x_19, lean_box(0)); +x_29 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__13___closed__1; +x_30 = l_Lean_Expr_isConstOf(x_28, x_29); +lean_dec(x_28); +if (x_30 == 0) { -lean_object* x_368; lean_object* x_369; lean_object* x_370; -lean_dec(x_305); +lean_object* x_31; lean_object* x_32; +lean_dec(x_27); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_31 = lean_box(0); +x_32 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_31, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -22372,381 +22034,177 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -x_368 = lean_unsigned_to_nat(0u); -x_369 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_369, 0, x_2); -lean_ctor_set(x_369, 1, x_368); -x_370 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_370, 0, x_369); -lean_ctor_set(x_370, 1, x_15); -return x_370; -} -else -{ -lean_object* x_371; lean_object* x_372; lean_object* x_373; lean_object* x_374; lean_object* x_375; -x_371 = lean_unsigned_to_nat(0u); -x_372 = lean_array_fget(x_305, x_371); -x_373 = lean_unsigned_to_nat(1u); -x_374 = lean_array_fget(x_305, x_373); -lean_dec(x_305); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_372); -x_375 = l_Lean_Meta_getLevel(x_372, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_375) == 0) -{ -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; -x_376 = lean_ctor_get(x_375, 0); -lean_inc(x_376); -x_377 = lean_ctor_get(x_375, 1); -lean_inc(x_377); -lean_dec(x_375); -x_378 = lean_box(0); -x_379 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_379, 0, x_376); -lean_ctor_set(x_379, 1, x_378); -x_380 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__8; -x_381 = l_Lean_Expr_const___override(x_380, x_379); -x_382 = l_Lean_mkApp3(x_381, x_372, x_374, x_3); -x_383 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_382, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_377); -return x_383; -} -else -{ -lean_object* x_384; lean_object* x_385; lean_object* x_386; lean_object* x_387; -lean_dec(x_374); -lean_dec(x_372); -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_3); -lean_dec(x_2); -x_384 = lean_ctor_get(x_375, 0); -lean_inc(x_384); -x_385 = lean_ctor_get(x_375, 1); -lean_inc(x_385); -if (lean_is_exclusive(x_375)) { - lean_ctor_release(x_375, 0); - lean_ctor_release(x_375, 1); - x_386 = x_375; -} else { - lean_dec_ref(x_375); - x_386 = lean_box(0); +return x_32; } -if (lean_is_scalar(x_386)) { - x_387 = lean_alloc_ctor(1, 2, 0); -} else { - x_387 = x_386; +else +{ +lean_object* x_33; +x_33 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31(x_4, x_5, x_1, x_2, x_27, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_33; } -lean_ctor_set(x_387, 0, x_384); -lean_ctor_set(x_387, 1, x_385); -return x_387; } } +else +{ +lean_object* x_34; lean_object* x_35; +lean_dec(x_19); +x_34 = lean_box(0); +x_35 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33(x_5, x_4, x_1, x_2, x_34, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_35; } } else { -lean_object* x_388; lean_object* x_389; uint8_t x_390; -lean_dec(x_306); -lean_dec(x_4); -x_388 = lean_array_get_size(x_305); -x_389 = lean_unsigned_to_nat(2u); -x_390 = lean_nat_dec_eq(x_388, x_389); -lean_dec(x_388); -if (x_390 == 0) +lean_object* x_36; lean_object* x_37; +lean_dec(x_19); +x_36 = lean_box(0); +x_37 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32(x_4, x_5, x_1, x_2, x_36, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_37; +} +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__1() { +_start: { -lean_object* x_391; lean_object* x_392; lean_object* x_393; -lean_dec(x_305); -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_3); -x_391 = lean_unsigned_to_nat(0u); -x_392 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_392, 0, x_2); -lean_ctor_set(x_392, 1, x_391); -x_393 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_393, 0, x_392); -lean_ctor_set(x_393, 1, x_15); -return x_393; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; } -else +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__2() { +_start: { -lean_object* x_394; lean_object* x_395; lean_object* x_396; lean_object* x_397; lean_object* x_398; -x_394 = lean_unsigned_to_nat(0u); -x_395 = lean_array_fget(x_305, x_394); -x_396 = lean_unsigned_to_nat(1u); -x_397 = lean_array_fget(x_305, x_396); -lean_dec(x_305); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_395); -x_398 = l_Lean_Meta_getLevel(x_395, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_398) == 0) -{ -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; -x_399 = lean_ctor_get(x_398, 0); -lean_inc(x_399); -x_400 = lean_ctor_get(x_398, 1); -lean_inc(x_400); -lean_dec(x_398); -x_401 = lean_box(0); -x_402 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_402, 0, x_399); -lean_ctor_set(x_402, 1, x_401); -x_403 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__10; -x_404 = l_Lean_Expr_const___override(x_403, x_402); -x_405 = l_Lean_mkApp3(x_404, x_395, x_397, x_3); -x_406 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_405, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_400); -return x_406; -} -else -{ -lean_object* x_407; lean_object* x_408; lean_object* x_409; lean_object* x_410; -lean_dec(x_397); -lean_dec(x_395); -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_3); -lean_dec(x_2); -x_407 = lean_ctor_get(x_398, 0); -lean_inc(x_407); -x_408 = lean_ctor_get(x_398, 1); -lean_inc(x_408); -if (lean_is_exclusive(x_398)) { - lean_ctor_release(x_398, 0); - lean_ctor_release(x_398, 1); - x_409 = x_398; -} else { - lean_dec_ref(x_398); - x_409 = lean_box(0); +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; } -if (lean_is_scalar(x_409)) { - x_410 = lean_alloc_ctor(1, 2, 0); -} else { - x_410 = x_409; } -lean_ctor_set(x_410, 0, x_407); -lean_ctor_set(x_410, 1, x_408); -return x_410; +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Ne", 2); +return x_1; } } +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___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_Omega_MetaProblem_addFact___lambda__35___closed__3; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; } } -else +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__5() { +_start: { -lean_object* x_411; lean_object* x_412; uint8_t x_413; -lean_dec(x_306); -lean_dec(x_4); -x_411 = lean_array_get_size(x_305); -x_412 = lean_unsigned_to_nat(2u); -x_413 = lean_nat_dec_eq(x_411, x_412); -lean_dec(x_411); -if (x_413 == 0) +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("GE", 2); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__6() { +_start: { -lean_object* x_414; lean_object* x_415; lean_object* x_416; -lean_dec(x_305); -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_3); -x_414 = lean_unsigned_to_nat(0u); -x_415 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_415, 0, x_2); -lean_ctor_set(x_415, 1, x_414); -x_416 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_416, 0, x_415); -lean_ctor_set(x_416, 1, x_15); -return x_416; -} -else -{ -lean_object* x_417; lean_object* x_418; lean_object* x_419; lean_object* x_420; lean_object* x_421; lean_object* x_422; lean_object* x_423; -x_417 = lean_unsigned_to_nat(0u); -x_418 = lean_array_fget(x_305, x_417); -x_419 = lean_unsigned_to_nat(1u); -x_420 = lean_array_fget(x_305, x_419); -lean_dec(x_305); -x_421 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__13; -lean_inc(x_3); -lean_inc(x_420); -lean_inc(x_418); -x_422 = l_Lean_mkApp3(x_421, x_418, x_420, x_3); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -x_423 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_422, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_423) == 0) +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("ge", 2); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__7() { +_start: { -lean_object* x_424; lean_object* x_425; lean_object* x_426; lean_object* x_427; lean_object* x_428; lean_object* x_429; lean_object* x_430; -x_424 = lean_ctor_get(x_423, 0); -lean_inc(x_424); -x_425 = lean_ctor_get(x_423, 1); -lean_inc(x_425); -lean_dec(x_423); -x_426 = lean_ctor_get(x_424, 0); -lean_inc(x_426); -x_427 = lean_ctor_get(x_424, 1); -lean_inc(x_427); -lean_dec(x_424); -x_428 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__16; -x_429 = l_Lean_mkApp3(x_428, x_418, x_420, x_3); -x_430 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_426, x_429, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_425); -if (lean_obj_tag(x_430) == 0) -{ -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; -x_431 = lean_ctor_get(x_430, 0); -lean_inc(x_431); -x_432 = lean_ctor_get(x_430, 1); -lean_inc(x_432); -if (lean_is_exclusive(x_430)) { - lean_ctor_release(x_430, 0); - lean_ctor_release(x_430, 1); - x_433 = x_430; -} else { - lean_dec_ref(x_430); - x_433 = lean_box(0); -} -x_434 = lean_ctor_get(x_431, 0); -lean_inc(x_434); -x_435 = lean_ctor_get(x_431, 1); -lean_inc(x_435); -if (lean_is_exclusive(x_431)) { - lean_ctor_release(x_431, 0); - lean_ctor_release(x_431, 1); - x_436 = x_431; -} else { - lean_dec_ref(x_431); - x_436 = lean_box(0); -} -x_437 = lean_nat_add(x_427, x_435); -lean_dec(x_435); -lean_dec(x_427); -if (lean_is_scalar(x_436)) { - x_438 = lean_alloc_ctor(0, 2, 0); -} else { - x_438 = x_436; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__5; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__6; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; } -lean_ctor_set(x_438, 0, x_434); -lean_ctor_set(x_438, 1, x_437); -if (lean_is_scalar(x_433)) { - x_439 = lean_alloc_ctor(0, 2, 0); -} else { - x_439 = x_433; } -lean_ctor_set(x_439, 0, x_438); -lean_ctor_set(x_439, 1, x_432); -return x_439; +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__8() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("GT", 2); +return x_1; } -else +} +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__9() { +_start: { -lean_object* x_440; lean_object* x_441; lean_object* x_442; lean_object* x_443; -lean_dec(x_427); -x_440 = lean_ctor_get(x_430, 0); -lean_inc(x_440); -x_441 = lean_ctor_get(x_430, 1); -lean_inc(x_441); -if (lean_is_exclusive(x_430)) { - lean_ctor_release(x_430, 0); - lean_ctor_release(x_430, 1); - x_442 = x_430; -} else { - lean_dec_ref(x_430); - x_442 = lean_box(0); +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("gt", 2); +return x_1; } -if (lean_is_scalar(x_442)) { - x_443 = lean_alloc_ctor(1, 2, 0); -} else { - x_443 = x_442; } -lean_ctor_set(x_443, 0, x_440); -lean_ctor_set(x_443, 1, x_441); -return x_443; +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__8; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__9; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; } } -else +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__11() { +_start: { -lean_object* x_444; lean_object* x_445; lean_object* x_446; lean_object* x_447; -lean_dec(x_420); -lean_dec(x_418); -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_3); -x_444 = lean_ctor_get(x_423, 0); -lean_inc(x_444); -x_445 = lean_ctor_get(x_423, 1); -lean_inc(x_445); -if (lean_is_exclusive(x_423)) { - lean_ctor_release(x_423, 0); - lean_ctor_release(x_423, 1); - x_446 = x_423; -} else { - lean_dec_ref(x_423); - x_446 = lean_box(0); +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("not_or_of_imp", 13); +return x_1; } -if (lean_is_scalar(x_446)) { - x_447 = lean_alloc_ctor(1, 2, 0); -} else { - x_447 = x_446; } -lean_ctor_set(x_447, 0, x_444); -lean_ctor_set(x_447, 1, x_445); -return x_447; +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__11; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; } } +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__13() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__12; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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_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_448; lean_object* x_449; uint8_t x_450; -lean_dec(x_306); -lean_dec(x_4); -x_448 = lean_array_get_size(x_305); -x_449 = lean_unsigned_to_nat(1u); -x_450 = lean_nat_dec_eq(x_448, x_449); -lean_dec(x_448); -if (x_450 == 0) +lean_dec(x_5); +switch (lean_obj_tag(x_1)) { +case 5: { -lean_object* x_451; lean_object* x_452; lean_object* x_453; -lean_dec(x_305); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_16 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_1, x_11, x_12, x_13, 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 = l_Lean_Expr_cleanupAnnotations(x_17); +x_20 = l_Lean_Expr_isApp(x_19); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; +lean_dec(x_19); +lean_dec(x_4); +lean_dec(x_3); +x_21 = lean_box(0); +x_22 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_21, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -22755,35 +22213,28 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -x_451 = lean_unsigned_to_nat(0u); -x_452 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_452, 0, x_2); -lean_ctor_set(x_452, 1, x_451); -x_453 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_453, 0, x_452); -lean_ctor_set(x_453, 1, x_15); -return x_453; +return x_22; } else { -lean_object* x_454; lean_object* x_455; lean_object* x_456; -x_454 = lean_unsigned_to_nat(0u); -x_455 = lean_array_fget(x_305, x_454); -lean_dec(x_305); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -x_456 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot(x_3, x_455, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_456) == 0) +lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_23 = l_Lean_Expr_appArg(x_19, lean_box(0)); +x_24 = l_Lean_Expr_appFnCleanup(x_19, lean_box(0)); +x_25 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__2; +x_26 = l_Lean_Expr_isConstOf(x_24, x_25); +if (x_26 == 0) { -lean_object* x_457; -x_457 = lean_ctor_get(x_456, 0); -lean_inc(x_457); -if (lean_obj_tag(x_457) == 0) +uint8_t x_27; +x_27 = l_Lean_Expr_isApp(x_24); +if (x_27 == 0) { -lean_object* x_458; lean_object* x_459; lean_object* x_460; lean_object* x_461; +lean_object* x_28; lean_object* x_29; +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_4); +lean_dec(x_3); +x_28 = lean_box(0); +x_29 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_28, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -22792,44 +22243,49 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -x_458 = lean_ctor_get(x_456, 1); -lean_inc(x_458); -if (lean_is_exclusive(x_456)) { - lean_ctor_release(x_456, 0); - lean_ctor_release(x_456, 1); - x_459 = x_456; -} else { - lean_dec_ref(x_456); - x_459 = lean_box(0); -} -x_460 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_460, 0, x_2); -lean_ctor_set(x_460, 1, x_454); -if (lean_is_scalar(x_459)) { - x_461 = lean_alloc_ctor(0, 2, 0); -} else { - x_461 = x_459; -} -lean_ctor_set(x_461, 0, x_460); -lean_ctor_set(x_461, 1, x_458); -return x_461; +return x_29; } else { -lean_object* x_462; lean_object* x_463; lean_object* x_464; -x_462 = lean_ctor_get(x_456, 1); -lean_inc(x_462); -lean_dec(x_456); -x_463 = lean_ctor_get(x_457, 0); -lean_inc(x_463); -lean_dec(x_457); -x_464 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_463, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_462); -return x_464; -} -} -else +lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_30 = l_Lean_Expr_appArg(x_24, lean_box(0)); +x_31 = l_Lean_Expr_appFnCleanup(x_24, lean_box(0)); +x_32 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__2; +x_33 = l_Lean_Expr_isConstOf(x_31, x_32); +if (x_33 == 0) { -lean_object* x_465; lean_object* x_466; lean_object* x_467; lean_object* x_468; +lean_object* x_34; uint8_t x_35; +lean_dec(x_4); +x_34 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__4; +x_35 = l_Lean_Expr_isConstOf(x_31, x_34); +if (x_35 == 0) +{ +lean_object* x_36; uint8_t x_37; +x_36 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__1; +x_37 = l_Lean_Expr_isConstOf(x_31, x_36); +if (x_37 == 0) +{ +lean_object* x_38; uint8_t x_39; +x_38 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__2; +x_39 = l_Lean_Expr_isConstOf(x_31, x_38); +if (x_39 == 0) +{ +lean_object* x_40; uint8_t x_41; +x_40 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__6; +x_41 = l_Lean_Expr_isConstOf(x_31, x_40); +if (x_41 == 0) +{ +uint8_t x_42; +x_42 = l_Lean_Expr_isApp(x_31); +if (x_42 == 0) +{ +lean_object* x_43; lean_object* x_44; +lean_dec(x_31); +lean_dec(x_30); +lean_dec(x_23); +lean_dec(x_3); +x_43 = lean_box(0); +x_44 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_43, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -22838,44 +22294,34 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_2); -x_465 = lean_ctor_get(x_456, 0); -lean_inc(x_465); -x_466 = lean_ctor_get(x_456, 1); -lean_inc(x_466); -if (lean_is_exclusive(x_456)) { - lean_ctor_release(x_456, 0); - lean_ctor_release(x_456, 1); - x_467 = x_456; -} else { - lean_dec_ref(x_456); - x_467 = lean_box(0); -} -if (lean_is_scalar(x_467)) { - x_468 = lean_alloc_ctor(1, 2, 0); -} else { - x_468 = x_467; -} -lean_ctor_set(x_468, 0, x_465); -lean_ctor_set(x_468, 1, x_466); -return x_468; -} -} -} +return x_44; } else { -lean_object* x_469; lean_object* x_470; uint8_t x_471; -lean_dec(x_306); -lean_dec(x_4); -x_469 = lean_array_get_size(x_305); -x_470 = lean_unsigned_to_nat(3u); -x_471 = lean_nat_dec_eq(x_469, x_470); -lean_dec(x_469); -if (x_471 == 0) +lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_45 = l_Lean_Expr_appArg(x_31, lean_box(0)); +x_46 = l_Lean_Expr_appFnCleanup(x_31, lean_box(0)); +x_47 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__4; +x_48 = l_Lean_Expr_isConstOf(x_46, x_47); +if (x_48 == 0) { -lean_object* x_472; lean_object* x_473; lean_object* x_474; -lean_dec(x_305); +lean_object* x_49; uint8_t x_50; +x_49 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___lambda__2___closed__2; +x_50 = l_Lean_Expr_isConstOf(x_46, x_49); +if (x_50 == 0) +{ +uint8_t x_51; +lean_dec(x_45); +x_51 = l_Lean_Expr_isApp(x_46); +if (x_51 == 0) +{ +lean_object* x_52; lean_object* x_53; +lean_dec(x_46); +lean_dec(x_30); +lean_dec(x_23); +lean_dec(x_3); +x_52 = lean_box(0); +x_53 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_52, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -22884,53 +22330,49 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -x_472 = lean_unsigned_to_nat(0u); -x_473 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_473, 0, x_2); -lean_ctor_set(x_473, 1, x_472); -x_474 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_474, 0, x_473); -lean_ctor_set(x_474, 1, x_15); -return x_474; +return x_53; } else { -lean_object* x_475; lean_object* x_476; -x_475 = lean_unsigned_to_nat(0u); -x_476 = lean_array_fget(x_305, x_475); -if (lean_obj_tag(x_476) == 4) +lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; +x_54 = l_Lean_Expr_appArg(x_46, lean_box(0)); +x_55 = l_Lean_Expr_appFnCleanup(x_46, lean_box(0)); +x_56 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__9; +x_57 = l_Lean_Expr_isConstOf(x_55, x_56); +if (x_57 == 0) { -lean_object* x_477; -x_477 = lean_ctor_get(x_476, 0); -lean_inc(x_477); -if (lean_obj_tag(x_477) == 1) +lean_object* x_58; uint8_t x_59; +x_58 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__7; +x_59 = l_Lean_Expr_isConstOf(x_55, x_58); +if (x_59 == 0) { -lean_object* x_478; -x_478 = lean_ctor_get(x_477, 0); -lean_inc(x_478); -if (lean_obj_tag(x_478) == 0) -{ -lean_object* x_479; lean_object* x_480; lean_object* x_481; uint8_t x_482; -x_479 = lean_ctor_get(x_476, 1); -lean_inc(x_479); -lean_dec(x_476); -x_480 = lean_ctor_get(x_477, 1); -lean_inc(x_480); -lean_dec(x_477); -x_481 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_482 = lean_string_dec_eq(x_480, x_481); -if (x_482 == 0) -{ -lean_object* x_483; uint8_t x_484; -x_483 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_484 = lean_string_dec_eq(x_480, x_483); -lean_dec(x_480); -if (x_484 == 0) -{ -lean_object* x_485; lean_object* x_486; -lean_dec(x_479); -lean_dec(x_305); +lean_object* x_60; uint8_t x_61; +x_60 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__10; +x_61 = l_Lean_Expr_isConstOf(x_55, x_60); +if (x_61 == 0) +{ +lean_object* x_62; uint8_t x_63; +x_62 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__15; +x_63 = l_Lean_Expr_isConstOf(x_55, x_62); +if (x_63 == 0) +{ +lean_object* x_64; uint8_t x_65; +x_64 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__12; +x_65 = l_Lean_Expr_isConstOf(x_55, x_64); +if (x_65 == 0) +{ +uint8_t x_66; +lean_dec(x_54); +lean_dec(x_30); +lean_dec(x_23); +x_66 = l_Lean_Expr_isApp(x_55); +if (x_66 == 0) +{ +lean_object* x_67; lean_object* x_68; +lean_dec(x_55); +lean_dec(x_3); +x_67 = lean_box(0); +x_68 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_67, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -22939,34 +22381,20 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -x_485 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_485, 0, x_2); -lean_ctor_set(x_485, 1, x_475); -x_486 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_486, 0, x_485); -lean_ctor_set(x_486, 1, x_15); -return x_486; +return x_68; } else { -if (lean_obj_tag(x_479) == 0) -{ -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; -x_487 = lean_unsigned_to_nat(1u); -x_488 = lean_array_fget(x_305, x_487); -x_489 = lean_unsigned_to_nat(2u); -x_490 = lean_array_fget(x_305, x_489); -lean_dec(x_305); -x_491 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__11___closed__2; -x_492 = l_Lean_mkApp3(x_491, x_488, x_490, x_3); -x_493 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_492, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_493; -} -else +lean_object* x_69; uint8_t x_70; +x_69 = l_Lean_Expr_appFnCleanup(x_55, lean_box(0)); +x_70 = l_Lean_Expr_isApp(x_69); +if (x_70 == 0) { -lean_object* x_494; lean_object* x_495; lean_object* x_496; -lean_dec(x_305); +lean_object* x_71; lean_object* x_72; +lean_dec(x_69); +lean_dec(x_3); +x_71 = lean_box(0); +x_72 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_71, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -22975,50 +22403,21 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -if (lean_is_exclusive(x_479)) { - lean_ctor_release(x_479, 0); - lean_ctor_release(x_479, 1); - x_494 = x_479; -} else { - lean_dec_ref(x_479); - x_494 = lean_box(0); -} -x_495 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_495, 0, x_2); -lean_ctor_set(x_495, 1, x_475); -if (lean_is_scalar(x_494)) { - x_496 = lean_alloc_ctor(0, 2, 0); -} else { - x_496 = x_494; - lean_ctor_set_tag(x_496, 0); -} -lean_ctor_set(x_496, 0, x_495); -lean_ctor_set(x_496, 1, x_15); -return x_496; -} -} +return x_72; } else { -lean_dec(x_480); -if (lean_obj_tag(x_479) == 0) -{ -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; -x_497 = lean_unsigned_to_nat(1u); -x_498 = lean_array_fget(x_305, x_497); -x_499 = lean_unsigned_to_nat(2u); -x_500 = lean_array_fget(x_305, x_499); -lean_dec(x_305); -x_501 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__12___closed__2; -x_502 = l_Lean_mkApp3(x_501, x_498, x_500, x_3); -x_503 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_502, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_503; -} -else +lean_object* x_73; lean_object* x_74; uint8_t x_75; +x_73 = l_Lean_Expr_appFnCleanup(x_69, lean_box(0)); +x_74 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__17; +x_75 = l_Lean_Expr_isConstOf(x_73, x_74); +lean_dec(x_73); +if (x_75 == 0) { -lean_object* x_504; lean_object* x_505; lean_object* x_506; -lean_dec(x_305); +lean_object* x_76; lean_object* x_77; +lean_dec(x_3); +x_76 = lean_box(0); +x_77 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_2, x_76, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -23027,342 +22426,116 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -if (lean_is_exclusive(x_479)) { - lean_ctor_release(x_479, 0); - lean_ctor_release(x_479, 1); - x_504 = x_479; -} else { - lean_dec_ref(x_479); - x_504 = lean_box(0); -} -x_505 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_505, 0, x_2); -lean_ctor_set(x_505, 1, x_475); -if (lean_is_scalar(x_504)) { - x_506 = lean_alloc_ctor(0, 2, 0); -} else { - x_506 = x_504; - lean_ctor_set_tag(x_506, 0); +return x_77; +} +else +{ +lean_object* x_78; lean_object* x_79; +x_78 = lean_box(0); +x_79 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6(x_3, x_2, x_78, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_79; } -lean_ctor_set(x_506, 0, x_505); -lean_ctor_set(x_506, 1, x_15); -return x_506; } } } else { -lean_object* x_507; lean_object* x_508; -lean_dec(x_478); -lean_dec(x_477); -lean_dec(x_476); -lean_dec(x_305); -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_3); -x_507 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_507, 0, x_2); -lean_ctor_set(x_507, 1, x_475); -x_508 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_508, 0, x_507); -lean_ctor_set(x_508, 1, x_15); -return x_508; +lean_object* x_80; +lean_dec(x_55); +x_80 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__30(x_3, x_2, x_54, x_30, x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_80; } } else { -lean_object* x_509; lean_object* x_510; -lean_dec(x_477); -lean_dec(x_476); -lean_dec(x_305); -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_3); -x_509 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_509, 0, x_2); -lean_ctor_set(x_509, 1, x_475); -x_510 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_510, 0, x_509); -lean_ctor_set(x_510, 1, x_15); -return x_510; +lean_object* x_81; +lean_dec(x_55); +x_81 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__26(x_3, x_2, x_54, x_30, x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_81; } } else { -lean_object* x_511; lean_object* x_512; -lean_dec(x_476); -lean_dec(x_305); -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_3); -x_511 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_511, 0, x_2); -lean_ctor_set(x_511, 1, x_475); -x_512 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_512, 0, x_511); -lean_ctor_set(x_512, 1, x_15); -return x_512; -} -} +lean_object* x_82; +lean_dec(x_55); +x_82 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__22(x_3, x_2, x_54, x_30, x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_82; } } else { -lean_object* x_513; lean_object* x_514; uint8_t x_515; -lean_dec(x_306); -lean_dec(x_4); -x_513 = lean_array_get_size(x_305); -x_514 = lean_unsigned_to_nat(3u); -x_515 = lean_nat_dec_eq(x_513, x_514); -lean_dec(x_513); -if (x_515 == 0) -{ -lean_object* x_516; lean_object* x_517; lean_object* x_518; -lean_dec(x_305); -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_3); -x_516 = lean_unsigned_to_nat(0u); -x_517 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_517, 0, x_2); -lean_ctor_set(x_517, 1, x_516); -x_518 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_518, 0, x_517); -lean_ctor_set(x_518, 1, x_15); -return x_518; -} -else -{ -lean_object* x_519; lean_object* x_520; -x_519 = lean_unsigned_to_nat(0u); -x_520 = lean_array_fget(x_305, x_519); -switch (lean_obj_tag(x_520)) { -case 4: -{ -lean_object* x_521; -x_521 = lean_ctor_get(x_520, 0); -lean_inc(x_521); -if (lean_obj_tag(x_521) == 1) -{ -lean_object* x_522; -x_522 = lean_ctor_get(x_521, 0); -lean_inc(x_522); -if (lean_obj_tag(x_522) == 0) -{ -lean_object* x_523; lean_object* x_524; lean_object* x_525; uint8_t x_526; -x_523 = lean_ctor_get(x_520, 1); -lean_inc(x_523); -lean_dec(x_520); -x_524 = lean_ctor_get(x_521, 1); -lean_inc(x_524); -lean_dec(x_521); -x_525 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_526 = lean_string_dec_eq(x_524, x_525); -if (x_526 == 0) -{ -lean_object* x_527; uint8_t x_528; -x_527 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_528 = lean_string_dec_eq(x_524, x_527); -lean_dec(x_524); -if (x_528 == 0) -{ -lean_object* x_529; lean_object* x_530; -lean_dec(x_523); -lean_dec(x_305); -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_3); -x_529 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_529, 0, x_2); -lean_ctor_set(x_529, 1, x_519); -x_530 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_530, 0, x_529); -lean_ctor_set(x_530, 1, x_15); -return x_530; +lean_object* x_83; +lean_dec(x_55); +x_83 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__18(x_3, x_2, x_54, x_30, x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_83; } -else -{ -if (lean_obj_tag(x_523) == 0) -{ -lean_object* x_531; lean_object* x_532; lean_object* x_533; lean_object* x_534; lean_object* x_535; lean_object* x_536; lean_object* x_537; -x_531 = lean_unsigned_to_nat(1u); -x_532 = lean_array_fget(x_305, x_531); -x_533 = lean_unsigned_to_nat(2u); -x_534 = lean_array_fget(x_305, x_533); -lean_dec(x_305); -x_535 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__19; -x_536 = l_Lean_mkApp3(x_535, x_532, x_534, x_3); -x_537 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_536, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_537; } else { -lean_object* x_538; lean_object* x_539; lean_object* x_540; -lean_dec(x_305); -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_3); -if (lean_is_exclusive(x_523)) { - lean_ctor_release(x_523, 0); - lean_ctor_release(x_523, 1); - x_538 = x_523; -} else { - lean_dec_ref(x_523); - x_538 = lean_box(0); -} -x_539 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_539, 0, x_2); -lean_ctor_set(x_539, 1, x_519); -if (lean_is_scalar(x_538)) { - x_540 = lean_alloc_ctor(0, 2, 0); -} else { - x_540 = x_538; - lean_ctor_set_tag(x_540, 0); -} -lean_ctor_set(x_540, 0, x_539); -lean_ctor_set(x_540, 1, x_15); -return x_540; +lean_object* x_84; +lean_dec(x_55); +x_84 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__11(x_3, x_2, x_54, x_30, x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_84; } } } else { -lean_dec(x_524); -if (lean_obj_tag(x_523) == 0) -{ -lean_object* x_541; lean_object* x_542; lean_object* x_543; lean_object* x_544; lean_object* x_545; -x_541 = lean_unsigned_to_nat(1u); -x_542 = lean_array_fget(x_305, x_541); -x_543 = lean_unsigned_to_nat(2u); -x_544 = lean_array_fget(x_305, x_543); -lean_dec(x_305); -lean_inc(x_544); -x_545 = l_Lean_Expr_int_x3f(x_544); -if (lean_obj_tag(x_545) == 0) -{ -lean_object* x_546; lean_object* x_547; lean_object* x_548; -x_546 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__22; -x_547 = l_Lean_mkApp3(x_546, x_542, x_544, x_3); -x_548 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_547, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_548; +lean_object* x_85; +lean_dec(x_46); +x_85 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__34(x_3, x_2, x_45, x_30, x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_85; +} } else { -lean_object* x_549; lean_object* x_550; uint8_t x_551; -x_549 = lean_ctor_get(x_545, 0); -lean_inc(x_549); -lean_dec(x_545); -x_550 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__8; -x_551 = lean_int_dec_eq(x_549, x_550); -lean_dec(x_549); -if (x_551 == 0) -{ -lean_object* x_552; lean_object* x_553; lean_object* x_554; -x_552 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__22; -x_553 = l_Lean_mkApp3(x_552, x_542, x_544, x_3); -x_554 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_553, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_554; +lean_object* x_86; +lean_dec(x_46); +x_86 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__14(x_3, x_2, x_45, x_30, x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_86; +} +} } else { -lean_object* x_555; -lean_dec(x_544); -x_555 = l_Lean_Elab_Tactic_Omega_MetaProblem_addIntEquality(x_2, x_3, x_542, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_555) == 0) -{ -lean_object* x_556; lean_object* x_557; lean_object* x_558; lean_object* x_559; lean_object* x_560; -x_556 = lean_ctor_get(x_555, 0); -lean_inc(x_556); -x_557 = lean_ctor_get(x_555, 1); -lean_inc(x_557); -if (lean_is_exclusive(x_555)) { - lean_ctor_release(x_555, 0); - lean_ctor_release(x_555, 1); - x_558 = x_555; -} else { - lean_dec_ref(x_555); - x_558 = lean_box(0); -} -x_559 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_559, 0, x_556); -lean_ctor_set(x_559, 1, x_541); -if (lean_is_scalar(x_558)) { - x_560 = lean_alloc_ctor(0, 2, 0); -} else { - x_560 = x_558; +lean_object* x_87; +lean_dec(x_31); +x_87 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5(x_3, x_2, x_30, x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_87; } -lean_ctor_set(x_560, 0, x_559); -lean_ctor_set(x_560, 1, x_557); -return x_560; } else { -lean_object* x_561; lean_object* x_562; lean_object* x_563; lean_object* x_564; -x_561 = lean_ctor_get(x_555, 0); -lean_inc(x_561); -x_562 = lean_ctor_get(x_555, 1); -lean_inc(x_562); -if (lean_is_exclusive(x_555)) { - lean_ctor_release(x_555, 0); - lean_ctor_release(x_555, 1); - x_563 = x_555; -} else { - lean_dec_ref(x_555); - x_563 = lean_box(0); +lean_object* x_88; +lean_dec(x_31); +x_88 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4(x_3, x_2, x_30, x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_88; } -if (lean_is_scalar(x_563)) { - x_564 = lean_alloc_ctor(1, 2, 0); -} else { - x_564 = x_563; } -lean_ctor_set(x_564, 0, x_561); -lean_ctor_set(x_564, 1, x_562); -return x_564; +else +{ +lean_object* x_89; +lean_dec(x_31); +x_89 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3(x_3, x_2, x_30, x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_89; } } +else +{ +lean_object* x_90; +lean_dec(x_31); +x_90 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2(x_3, x_2, x_30, x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_90; } } else { -lean_object* x_565; lean_object* x_566; lean_object* x_567; -lean_dec(x_305); +lean_object* x_91; lean_object* x_92; +lean_dec(x_31); +lean_dec(x_30); +lean_dec(x_23); +x_91 = lean_box(0); +x_92 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1(x_2, x_3, x_4, x_91, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -23371,61 +22544,59 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_3); -if (lean_is_exclusive(x_523)) { - lean_ctor_release(x_523, 0); - lean_ctor_release(x_523, 1); - x_565 = x_523; -} else { - lean_dec_ref(x_523); - x_565 = lean_box(0); -} -x_566 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_566, 0, x_2); -lean_ctor_set(x_566, 1, x_519); -if (lean_is_scalar(x_565)) { - x_567 = lean_alloc_ctor(0, 2, 0); -} else { - x_567 = x_565; - lean_ctor_set_tag(x_567, 0); -} -lean_ctor_set(x_567, 0, x_566); -lean_ctor_set(x_567, 1, x_15); -return x_567; +return x_92; } } } else { -lean_object* x_568; lean_object* x_569; -lean_dec(x_522); -lean_dec(x_521); -lean_dec(x_520); -lean_dec(x_305); -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_3); -x_568 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_568, 0, x_2); -lean_ctor_set(x_568, 1, x_519); -x_569 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_569, 0, x_568); -lean_ctor_set(x_569, 1, x_15); -return x_569; +lean_object* x_93; +lean_dec(x_24); +lean_dec(x_4); +x_93 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__7(x_3, x_2, x_23, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +return x_93; } } -else +} +case 7: { -lean_object* x_570; lean_object* x_571; -lean_dec(x_521); -lean_dec(x_520); -lean_dec(x_305); +lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_dec(x_4); +x_94 = lean_ctor_get(x_1, 1); +lean_inc(x_94); +x_95 = lean_ctor_get(x_1, 2); +lean_inc(x_95); +lean_dec(x_1); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_94); +x_96 = l_Lean_Meta_isProp(x_94, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_96) == 0) +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; +x_97 = lean_ctor_get(x_96, 0); +lean_inc(x_97); +x_98 = lean_ctor_get(x_96, 1); +lean_inc(x_98); +lean_dec(x_96); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_95); +x_99 = l_Lean_Meta_isProp(x_95, x_11, x_12, x_13, x_14, x_98); +if (lean_obj_tag(x_99) == 0) +{ +uint8_t x_100; +x_100 = lean_unbox(x_97); +lean_dec(x_97); +if (x_100 == 0) +{ +uint8_t x_101; +lean_dec(x_95); +lean_dec(x_94); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -23435,51 +22606,47 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_3); -x_570 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_570, 0, x_2); -lean_ctor_set(x_570, 1, x_519); -x_571 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_571, 0, x_570); -lean_ctor_set(x_571, 1, x_15); -return x_571; -} +x_101 = !lean_is_exclusive(x_99); +if (x_101 == 0) +{ +lean_object* x_102; lean_object* x_103; lean_object* x_104; +x_102 = lean_ctor_get(x_99, 0); +lean_dec(x_102); +x_103 = lean_unsigned_to_nat(0u); +x_104 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_104, 0, x_2); +lean_ctor_set(x_104, 1, x_103); +lean_ctor_set(x_99, 0, x_104); +return x_99; } -case 5: +else { -lean_object* x_572; -x_572 = lean_ctor_get(x_520, 0); -lean_inc(x_572); -if (lean_obj_tag(x_572) == 4) -{ -lean_object* x_573; -x_573 = lean_ctor_get(x_572, 0); -lean_inc(x_573); -if (lean_obj_tag(x_573) == 1) -{ -lean_object* x_574; -x_574 = lean_ctor_get(x_573, 0); -lean_inc(x_574); -if (lean_obj_tag(x_574) == 0) +lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; +x_105 = lean_ctor_get(x_99, 1); +lean_inc(x_105); +lean_dec(x_99); +x_106 = lean_unsigned_to_nat(0u); +x_107 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_107, 0, x_2); +lean_ctor_set(x_107, 1, x_106); +x_108 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_108, 0, x_107); +lean_ctor_set(x_108, 1, x_105); +return x_108; +} +} +else { -lean_object* x_575; lean_object* x_576; lean_object* x_577; lean_object* x_578; uint8_t x_579; -x_575 = lean_ctor_get(x_520, 1); -lean_inc(x_575); -lean_dec(x_520); -x_576 = lean_ctor_get(x_572, 1); -lean_inc(x_576); -lean_dec(x_572); -x_577 = lean_ctor_get(x_573, 1); -lean_inc(x_577); -lean_dec(x_573); -x_578 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_579 = lean_string_dec_eq(x_577, x_578); -lean_dec(x_577); -if (x_579 == 0) +lean_object* x_109; uint8_t x_110; +x_109 = lean_ctor_get(x_99, 0); +lean_inc(x_109); +x_110 = lean_unbox(x_109); +lean_dec(x_109); +if (x_110 == 0) { -lean_object* x_580; lean_object* x_581; -lean_dec(x_576); -lean_dec(x_575); -lean_dec(x_305); +uint8_t x_111; +lean_dec(x_95); +lean_dec(x_94); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -23489,74 +22656,57 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_3); -x_580 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_580, 0, x_2); -lean_ctor_set(x_580, 1, x_519); -x_581 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_581, 0, x_580); -lean_ctor_set(x_581, 1, x_15); -return x_581; +x_111 = !lean_is_exclusive(x_99); +if (x_111 == 0) +{ +lean_object* x_112; lean_object* x_113; lean_object* x_114; +x_112 = lean_ctor_get(x_99, 0); +lean_dec(x_112); +x_113 = lean_unsigned_to_nat(0u); +x_114 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_114, 0, x_2); +lean_ctor_set(x_114, 1, x_113); +lean_ctor_set(x_99, 0, x_114); +return x_99; } else { -if (lean_obj_tag(x_576) == 0) -{ -lean_object* x_582; lean_object* x_583; lean_object* x_584; lean_object* x_585; lean_object* x_586; lean_object* x_587; lean_object* x_588; -x_582 = lean_unsigned_to_nat(1u); -x_583 = lean_array_fget(x_305, x_582); -x_584 = lean_unsigned_to_nat(2u); -x_585 = lean_array_fget(x_305, x_584); -lean_dec(x_305); -x_586 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__25; -x_587 = l_Lean_mkApp4(x_586, x_575, x_583, x_585, x_3); -x_588 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_587, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_588; +lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; +x_115 = lean_ctor_get(x_99, 1); +lean_inc(x_115); +lean_dec(x_99); +x_116 = lean_unsigned_to_nat(0u); +x_117 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_117, 0, x_2); +lean_ctor_set(x_117, 1, x_116); +x_118 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_118, 0, x_117); +lean_ctor_set(x_118, 1, x_115); +return x_118; +} } else { -lean_object* x_589; lean_object* x_590; lean_object* x_591; -lean_dec(x_575); -lean_dec(x_305); -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_3); -if (lean_is_exclusive(x_576)) { - lean_ctor_release(x_576, 0); - lean_ctor_release(x_576, 1); - x_589 = x_576; -} else { - lean_dec_ref(x_576); - x_589 = lean_box(0); -} -x_590 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_590, 0, x_2); -lean_ctor_set(x_590, 1, x_519); -if (lean_is_scalar(x_589)) { - x_591 = lean_alloc_ctor(0, 2, 0); -} else { - x_591 = x_589; - lean_ctor_set_tag(x_591, 0); -} -lean_ctor_set(x_591, 0, x_590); -lean_ctor_set(x_591, 1, x_15); -return x_591; +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_119 = lean_ctor_get(x_99, 1); +lean_inc(x_119); +lean_dec(x_99); +x_120 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__8; +lean_inc(x_94); +x_121 = l_Lean_Expr_app___override(x_120, x_94); +x_122 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__13; +x_123 = l_Lean_mkApp4(x_122, x_94, x_95, x_121, x_3); +x_124 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_123, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_119); +return x_124; } } } else { -lean_object* x_592; lean_object* x_593; -lean_dec(x_574); -lean_dec(x_573); -lean_dec(x_572); -lean_dec(x_520); -lean_dec(x_305); +uint8_t x_125; +lean_dec(x_97); +lean_dec(x_95); +lean_dec(x_94); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -23566,46 +22716,32 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_3); -x_592 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_592, 0, x_2); -lean_ctor_set(x_592, 1, x_519); -x_593 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_593, 0, x_592); -lean_ctor_set(x_593, 1, x_15); -return x_593; -} +lean_dec(x_2); +x_125 = !lean_is_exclusive(x_99); +if (x_125 == 0) +{ +return x_99; } else { -lean_object* x_594; lean_object* x_595; -lean_dec(x_573); -lean_dec(x_572); -lean_dec(x_520); -lean_dec(x_305); -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_3); -x_594 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_594, 0, x_2); -lean_ctor_set(x_594, 1, x_519); -x_595 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_595, 0, x_594); -lean_ctor_set(x_595, 1, x_15); -return x_595; +lean_object* x_126; lean_object* x_127; lean_object* x_128; +x_126 = lean_ctor_get(x_99, 0); +x_127 = lean_ctor_get(x_99, 1); +lean_inc(x_127); +lean_inc(x_126); +lean_dec(x_99); +x_128 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_128, 0, x_126); +lean_ctor_set(x_128, 1, x_127); +return x_128; +} } } else { -lean_object* x_596; lean_object* x_597; -lean_dec(x_572); -lean_dec(x_520); -lean_dec(x_305); +uint8_t x_129; +lean_dec(x_95); +lean_dec(x_94); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -23615,20 +22751,30 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_3); -x_596 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_596, 0, x_2); -lean_ctor_set(x_596, 1, x_519); -x_597 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_597, 0, x_596); -lean_ctor_set(x_597, 1, x_15); -return x_597; +lean_dec(x_2); +x_129 = !lean_is_exclusive(x_96); +if (x_129 == 0) +{ +return x_96; +} +else +{ +lean_object* x_130; lean_object* x_131; lean_object* x_132; +x_130 = lean_ctor_get(x_96, 0); +x_131 = lean_ctor_get(x_96, 1); +lean_inc(x_131); +lean_inc(x_130); +lean_dec(x_96); +x_132 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_132, 0, x_130); +lean_ctor_set(x_132, 1, x_131); +return x_132; +} } } default: { -lean_object* x_598; lean_object* x_599; -lean_dec(x_520); -lean_dec(x_305); +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -23637,5593 +22783,693 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); +lean_dec(x_4); lean_dec(x_3); -x_598 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_598, 0, x_2); -lean_ctor_set(x_598, 1, x_519); -x_599 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_599, 0, x_598); -lean_ctor_set(x_599, 1, x_15); -return x_599; +lean_dec(x_1); +x_133 = lean_unsigned_to_nat(0u); +x_134 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_134, 0, x_2); +lean_ctor_set(x_134, 1, 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_15); +return x_135; } } } } +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("adding fact: ", 13); +return x_1; } } -case 1: -{ -lean_object* x_600; -lean_dec(x_4); -x_600 = lean_ctor_get(x_18, 0); -lean_inc(x_600); -if (lean_obj_tag(x_600) == 0) -{ -uint8_t x_601; -x_601 = !lean_is_exclusive(x_16); -if (x_601 == 0) -{ -lean_object* x_602; lean_object* x_603; lean_object* x_604; lean_object* x_605; lean_object* x_606; uint8_t x_607; -x_602 = lean_ctor_get(x_16, 1); -x_603 = lean_ctor_get(x_16, 0); -lean_dec(x_603); -x_604 = lean_ctor_get(x_17, 1); -lean_inc(x_604); -lean_dec(x_17); -x_605 = lean_ctor_get(x_18, 1); -lean_inc(x_605); -lean_dec(x_18); -x_606 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__10; -x_607 = lean_string_dec_eq(x_605, x_606); -if (x_607 == 0) -{ -lean_object* x_608; uint8_t x_609; -x_608 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__13; -x_609 = lean_string_dec_eq(x_605, x_608); -if (x_609 == 0) -{ -lean_object* x_610; uint8_t x_611; -x_610 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__26; -x_611 = lean_string_dec_eq(x_605, x_610); -if (x_611 == 0) -{ -lean_object* x_612; uint8_t x_613; -x_612 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__27; -x_613 = lean_string_dec_eq(x_605, x_612); -if (x_613 == 0) +static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__2() { +_start: { -lean_object* x_614; uint8_t x_615; -x_614 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8; -x_615 = lean_string_dec_eq(x_605, x_614); -if (x_615 == 0) +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(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) { +_start: { -lean_object* x_616; uint8_t x_617; -x_616 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__7; -x_617 = lean_string_dec_eq(x_605, x_616); -lean_dec(x_605); -if (x_617 == 0) +lean_object* x_13; uint8_t x_14; +x_13 = lean_ctor_get(x_1, 0); +lean_inc(x_13); +x_14 = lean_ctor_get_uint8(x_13, sizeof(void*)*7); +if (x_14 == 0) { -lean_object* x_618; lean_object* x_619; -lean_dec(x_604); -lean_dec(x_602); -lean_dec(x_14); +lean_object* x_15; lean_object* x_16; lean_object* 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); lean_dec(x_7); -lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); lean_dec(x_3); -x_618 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_618); -lean_ctor_set(x_16, 0, x_2); -x_619 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_619, 0, x_16); -lean_ctor_set(x_619, 1, x_15); -return x_619; +lean_dec(x_2); +x_15 = lean_unsigned_to_nat(0u); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_1); +lean_ctor_set(x_16, 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_12); +return x_17; } else { -lean_object* x_620; uint8_t x_621; -x_620 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__8; -x_621 = lean_string_dec_eq(x_604, x_620); -lean_dec(x_604); -if (x_621 == 0) +lean_object* x_18; +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_2); +x_18 = lean_infer_type(x_2, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_18) == 0) { -lean_object* x_622; lean_object* x_623; -lean_dec(x_602); -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_3); -x_622 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_622); -lean_ctor_set(x_16, 0, x_2); -x_623 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_623, 0, x_16); -lean_ctor_set(x_623, 1, x_15); -return x_623; -} -else +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_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_21 = l_Lean_Meta_whnfR(x_19, x_8, x_9, x_10, x_11, x_20); +if (lean_obj_tag(x_21) == 0) { -lean_object* x_624; lean_object* x_625; uint8_t x_626; -x_624 = lean_array_get_size(x_602); -x_625 = lean_unsigned_to_nat(4u); -x_626 = lean_nat_dec_eq(x_624, x_625); -lean_dec(x_624); -if (x_626 == 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_instantiateMVars___at_Lean_Elab_Tactic_Omega_MetaProblem_addFact___spec__1(x_22, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_23); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) { -lean_object* x_627; lean_object* x_628; -lean_dec(x_602); -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_3); -x_627 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_627); -lean_ctor_set(x_16, 0, x_2); -x_628 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_628, 0, x_16); -lean_ctor_set(x_628, 1, x_15); -return x_628; -} -else -{ -lean_object* x_629; lean_object* x_630; -x_629 = lean_unsigned_to_nat(0u); -x_630 = lean_array_fget(x_602, x_629); -if (lean_obj_tag(x_630) == 4) -{ -lean_object* x_631; -x_631 = lean_ctor_get(x_630, 0); -lean_inc(x_631); -if (lean_obj_tag(x_631) == 1) -{ -lean_object* x_632; -x_632 = lean_ctor_get(x_631, 0); -lean_inc(x_632); -if (lean_obj_tag(x_632) == 0) -{ -lean_object* x_633; lean_object* x_634; lean_object* x_635; uint8_t x_636; -x_633 = lean_ctor_get(x_630, 1); -lean_inc(x_633); -lean_dec(x_630); -x_634 = lean_ctor_get(x_631, 1); -lean_inc(x_634); -lean_dec(x_631); -x_635 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_636 = lean_string_dec_eq(x_634, x_635); -if (x_636 == 0) -{ -lean_object* x_637; uint8_t x_638; -x_637 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_638 = lean_string_dec_eq(x_634, x_637); -lean_dec(x_634); -if (x_638 == 0) +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; +x_26 = lean_ctor_get(x_24, 0); +x_27 = lean_ctor_get(x_24, 1); +x_28 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__2; +x_29 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_Omega_lookup___spec__3(x_28, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_27); +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +x_31 = lean_unbox(x_30); +lean_dec(x_30); +if (x_31 == 0) { -lean_object* x_639; -lean_dec(x_633); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_629); -lean_ctor_set(x_16, 0, x_2); -x_639 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_639, 0, x_16); -lean_ctor_set(x_639, 1, x_15); -return x_639; +lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_free_object(x_24); +x_32 = lean_ctor_get(x_29, 1); +lean_inc(x_32); +lean_dec(x_29); +x_33 = lean_box(0); +x_34 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35(x_26, x_1, x_2, x_13, x_33, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_32); +return x_34; } else { -if (lean_obj_tag(x_633) == 0) +uint8_t x_35; +x_35 = !lean_is_exclusive(x_29); +if (x_35 == 0) { -lean_object* x_640; lean_object* x_641; lean_object* x_642; lean_object* x_643; lean_object* x_644; lean_object* x_645; lean_object* x_646; -lean_free_object(x_16); -x_640 = lean_unsigned_to_nat(2u); -x_641 = lean_array_fget(x_602, x_640); -x_642 = lean_unsigned_to_nat(3u); -x_643 = lean_array_fget(x_602, x_642); -lean_dec(x_602); -x_644 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__30; -x_645 = l_Lean_mkApp3(x_644, x_641, x_643, x_3); -x_646 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_645, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_646; +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_36 = lean_ctor_get(x_29, 1); +x_37 = lean_ctor_get(x_29, 0); +lean_dec(x_37); +lean_inc(x_26); +x_38 = l_Lean_MessageData_ofExpr(x_26); +x_39 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__2; +lean_ctor_set_tag(x_29, 7); +lean_ctor_set(x_29, 1, x_38); +lean_ctor_set(x_29, 0, x_39); +x_40 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__9; +lean_ctor_set_tag(x_24, 7); +lean_ctor_set(x_24, 1, x_40); +lean_ctor_set(x_24, 0, x_29); +x_41 = l_Lean_addTrace___at_Lean_Elab_Tactic_Omega_lookup___spec__14(x_28, x_24, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, 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_Omega_MetaProblem_addFact___lambda__35(x_26, x_1, x_2, x_13, x_42, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_43); +return x_44; } else { -uint8_t x_647; -lean_dec(x_602); -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_3); -x_647 = !lean_is_exclusive(x_633); -if (x_647 == 0) -{ -lean_object* x_648; lean_object* x_649; -x_648 = lean_ctor_get(x_633, 1); -lean_dec(x_648); -x_649 = lean_ctor_get(x_633, 0); -lean_dec(x_649); -lean_ctor_set(x_16, 1, x_629); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_633, 0); -lean_ctor_set(x_633, 1, x_15); -lean_ctor_set(x_633, 0, x_16); -return x_633; -} -else -{ -lean_object* x_650; -lean_dec(x_633); -lean_ctor_set(x_16, 1, x_629); -lean_ctor_set(x_16, 0, x_2); -x_650 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_650, 0, x_16); -lean_ctor_set(x_650, 1, x_15); -return x_650; -} +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_29, 1); +lean_inc(x_45); +lean_dec(x_29); +lean_inc(x_26); +x_46 = l_Lean_MessageData_ofExpr(x_26); +x_47 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__2; +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_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__9; +lean_ctor_set_tag(x_24, 7); +lean_ctor_set(x_24, 1, x_49); +lean_ctor_set(x_24, 0, x_48); +x_50 = l_Lean_addTrace___at_Lean_Elab_Tactic_Omega_lookup___spec__14(x_28, x_24, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, 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); +x_53 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35(x_26, x_1, x_2, x_13, x_51, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_52); +return x_53; } } } else { -lean_dec(x_634); -if (lean_obj_tag(x_633) == 0) +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_24, 0); +x_55 = lean_ctor_get(x_24, 1); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_24); +x_56 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__2; +x_57 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_Omega_lookup___spec__3(x_56, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_55); +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_651; lean_object* x_652; lean_object* x_653; lean_object* x_654; lean_object* x_655; lean_object* x_656; lean_object* x_657; -lean_free_object(x_16); -x_651 = lean_unsigned_to_nat(2u); -x_652 = lean_array_fget(x_602, x_651); -x_653 = lean_unsigned_to_nat(3u); -x_654 = lean_array_fget(x_602, x_653); -lean_dec(x_602); -x_655 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__33; -x_656 = l_Lean_mkApp3(x_655, x_652, x_654, x_3); -x_657 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_656, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_657; +lean_object* x_60; lean_object* x_61; lean_object* x_62; +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_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35(x_54, x_1, x_2, x_13, x_61, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_60); +return x_62; } else { -uint8_t x_658; -lean_dec(x_602); -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_3); -x_658 = !lean_is_exclusive(x_633); -if (x_658 == 0) -{ -lean_object* x_659; lean_object* x_660; -x_659 = lean_ctor_get(x_633, 1); -lean_dec(x_659); -x_660 = lean_ctor_get(x_633, 0); -lean_dec(x_660); -lean_ctor_set(x_16, 1, x_629); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_633, 0); -lean_ctor_set(x_633, 1, x_15); -lean_ctor_set(x_633, 0, x_16); -return x_633; -} -else -{ -lean_object* x_661; -lean_dec(x_633); -lean_ctor_set(x_16, 1, x_629); -lean_ctor_set(x_16, 0, x_2); -x_661 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_661, 0, x_16); -lean_ctor_set(x_661, 1, x_15); -return x_661; +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_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_54); +x_65 = l_Lean_MessageData_ofExpr(x_54); +x_66 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__2; +if (lean_is_scalar(x_64)) { + x_67 = lean_alloc_ctor(7, 2, 0); +} else { + x_67 = x_64; + 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 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__9; +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_Tactic_Omega_lookup___spec__14(x_56, x_69, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, 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); +x_73 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35(x_54, x_1, x_2, x_13, x_71, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_72); +return x_73; } } } else { -lean_object* x_662; -lean_dec(x_632); -lean_dec(x_631); -lean_dec(x_630); -lean_dec(x_602); -lean_dec(x_14); +uint8_t x_74; 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_ctor_set(x_16, 1, x_629); -lean_ctor_set(x_16, 0, x_2); -x_662 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_662, 0, x_16); -lean_ctor_set(x_662, 1, x_15); -return x_662; -} +lean_dec(x_2); +lean_dec(x_1); +x_74 = !lean_is_exclusive(x_21); +if (x_74 == 0) +{ +return x_21; } else { -lean_object* x_663; -lean_dec(x_631); -lean_dec(x_630); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_629); -lean_ctor_set(x_16, 0, x_2); -x_663 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_663, 0, x_16); -lean_ctor_set(x_663, 1, x_15); -return x_663; +lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_75 = lean_ctor_get(x_21, 0); +x_76 = lean_ctor_get(x_21, 1); +lean_inc(x_76); +lean_inc(x_75); +lean_dec(x_21); +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 { -lean_object* x_664; -lean_dec(x_630); -lean_dec(x_602); -lean_dec(x_14); +uint8_t x_78; 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_ctor_set(x_16, 1, x_629); -lean_ctor_set(x_16, 0, x_2); -x_664 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_664, 0, x_16); -lean_ctor_set(x_664, 1, x_15); -return x_664; +lean_dec(x_2); +lean_dec(x_1); +x_78 = !lean_is_exclusive(x_18); +if (x_78 == 0) +{ +return x_18; +} +else +{ +lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_79 = lean_ctor_get(x_18, 0); +x_80 = lean_ctor_get(x_18, 1); +lean_inc(x_80); +lean_inc(x_79); +lean_dec(x_18); +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_665; uint8_t x_666; -lean_dec(x_605); -lean_dec(x_602); -x_665 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__16; -x_666 = lean_string_dec_eq(x_604, x_665); -lean_dec(x_604); -if (x_666 == 0) +LEAN_EXPORT lean_object* l_Lean_instantiateMVars___at_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_667; lean_object* x_668; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); +uint8_t x_12; lean_object* x_13; +x_12 = lean_unbox(x_5); +lean_dec(x_5); +x_13 = l_Lean_instantiateMVars___at_Lean_Elab_Tactic_Omega_MetaProblem_addFact___spec__1(x_1, x_2, x_3, x_4, x_12, 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_4); lean_dec(x_3); -x_667 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_667); -lean_ctor_set(x_16, 0, x_2); -x_668 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_668, 0, x_16); -lean_ctor_set(x_668, 1, x_15); -return x_668; +lean_dec(x_2); +return x_13; } -else -{ -lean_object* x_669; lean_object* x_670; lean_object* x_671; lean_object* x_672; -lean_free_object(x_16); -x_669 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__6; -x_670 = lean_array_push(x_669, x_3); -x_671 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__35; -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -x_672 = l_Lean_Meta_mkAppM(x_671, x_670, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_672) == 0) -{ -lean_object* x_673; lean_object* x_674; lean_object* x_675; -x_673 = lean_ctor_get(x_672, 0); -lean_inc(x_673); -x_674 = lean_ctor_get(x_672, 1); -lean_inc(x_674); -lean_dec(x_672); -x_675 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_673, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_674); -return x_675; } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_676; -lean_dec(x_14); +uint8_t x_15; lean_object* x_16; +x_15 = lean_unbox(x_8); +lean_dec(x_8); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_15, 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_8); +lean_dec(x_9); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_2); -x_676 = !lean_is_exclusive(x_672); -if (x_676 == 0) +lean_dec(x_5); +lean_dec(x_4); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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: { -return x_672; +uint8_t x_15; lean_object* x_16; +x_15 = lean_unbox(x_8); +lean_dec(x_8); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_15, x_9, x_10, x_11, x_12, x_13, x_14); +return x_16; } -else +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_677; lean_object* x_678; lean_object* x_679; -x_677 = lean_ctor_get(x_672, 0); -x_678 = lean_ctor_get(x_672, 1); -lean_inc(x_678); -lean_inc(x_677); -lean_dec(x_672); -x_679 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_679, 0, x_677); -lean_ctor_set(x_679, 1, x_678); -return x_679; +uint8_t x_15; lean_object* x_16; +x_15 = lean_unbox(x_8); +lean_dec(x_8); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_15, x_9, x_10, x_11, x_12, x_13, x_14); +return x_16; +} } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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) { +_start: +{ +uint8_t x_15; lean_object* x_16; +x_15 = lean_unbox(x_8); +lean_dec(x_8); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_15, x_9, x_10, x_11, x_12, x_13, x_14); +return x_16; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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) { +_start: +{ +uint8_t x_15; lean_object* x_16; +x_15 = lean_unbox(x_8); +lean_dec(x_8); +x_16 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_15, x_9, x_10, x_11, x_12, x_13, x_14); +return x_16; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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: { -lean_object* x_680; uint8_t x_681; -lean_dec(x_605); -x_680 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__36; -x_681 = lean_string_dec_eq(x_604, x_680); -lean_dec(x_604); -if (x_681 == 0) +uint8_t x_14; lean_object* x_15; +x_14 = lean_unbox(x_7); +lean_dec(x_7); +x_15 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_14, x_8, x_9, x_10, x_11, x_12, x_13); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_682; lean_object* x_683; -lean_dec(x_602); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_8); +uint8_t x_14; lean_object* x_15; +x_14 = lean_unbox(x_7); lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_3); -x_682 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_682); -lean_ctor_set(x_16, 0, x_2); -x_683 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_683, 0, x_16); -lean_ctor_set(x_683, 1, x_15); -return x_683; +x_15 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__7(x_1, x_2, x_3, x_4, x_5, x_6, x_14, x_8, x_9, x_10, x_11, x_12, x_13); +return x_15; } -else +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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: { -lean_object* x_684; lean_object* x_685; uint8_t x_686; -x_684 = lean_array_get_size(x_602); -x_685 = lean_unsigned_to_nat(4u); -x_686 = lean_nat_dec_eq(x_684, x_685); -lean_dec(x_684); -if (x_686 == 0) -{ -lean_object* x_687; lean_object* x_688; -lean_dec(x_602); -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_3); -x_687 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_687); -lean_ctor_set(x_16, 0, x_2); -x_688 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_688, 0, x_16); -lean_ctor_set(x_688, 1, x_15); -return x_688; -} -else -{ -lean_object* x_689; lean_object* x_690; -x_689 = lean_unsigned_to_nat(0u); -x_690 = lean_array_fget(x_602, x_689); -switch (lean_obj_tag(x_690)) { -case 4: -{ -lean_object* x_691; -x_691 = lean_ctor_get(x_690, 0); -lean_inc(x_691); -if (lean_obj_tag(x_691) == 1) -{ -lean_object* x_692; -x_692 = lean_ctor_get(x_691, 0); -lean_inc(x_692); -if (lean_obj_tag(x_692) == 0) -{ -lean_object* x_693; lean_object* x_694; lean_object* x_695; uint8_t x_696; -x_693 = lean_ctor_get(x_690, 1); -lean_inc(x_693); -lean_dec(x_690); -x_694 = lean_ctor_get(x_691, 1); -lean_inc(x_694); -lean_dec(x_691); -x_695 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_696 = lean_string_dec_eq(x_694, x_695); -if (x_696 == 0) -{ -lean_object* x_697; uint8_t x_698; -x_697 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_698 = lean_string_dec_eq(x_694, x_697); -lean_dec(x_694); -if (x_698 == 0) -{ -lean_object* x_699; -lean_dec(x_693); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -x_699 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_699, 0, x_16); -lean_ctor_set(x_699, 1, x_15); -return x_699; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } -else -{ -if (lean_obj_tag(x_693) == 0) +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, lean_object* x_15) { +_start: { -lean_object* x_700; lean_object* x_701; lean_object* x_702; lean_object* x_703; lean_object* x_704; lean_object* x_705; lean_object* x_706; -lean_free_object(x_16); -x_700 = lean_unsigned_to_nat(2u); -x_701 = lean_array_fget(x_602, x_700); -x_702 = lean_unsigned_to_nat(3u); -x_703 = lean_array_fget(x_602, x_702); -lean_dec(x_602); -x_704 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__39; -x_705 = l_Lean_mkApp3(x_704, x_701, x_703, x_3); -x_706 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_705, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_706; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } -else +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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) { +_start: { -uint8_t x_707; -lean_dec(x_602); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); +uint8_t x_13; lean_object* x_14; +x_13 = lean_unbox(x_6); +lean_dec(x_6); +x_14 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__10(x_1, x_2, x_3, x_4, x_5, x_13, 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); -x_707 = !lean_is_exclusive(x_693); -if (x_707 == 0) -{ -lean_object* x_708; lean_object* x_709; -x_708 = lean_ctor_get(x_693, 1); -lean_dec(x_708); -x_709 = lean_ctor_get(x_693, 0); -lean_dec(x_709); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_693, 0); -lean_ctor_set(x_693, 1, x_15); -lean_ctor_set(x_693, 0, x_16); -return x_693; +lean_dec(x_2); +return x_14; } -else +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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) { +_start: { -lean_object* x_710; -lean_dec(x_693); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -x_710 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_710, 0, x_16); -lean_ctor_set(x_710, 1, x_15); -return x_710; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__11(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, lean_object* x_15) { +_start: +{ +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__12(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -else -{ -lean_dec(x_694); -if (lean_obj_tag(x_693) == 0) +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +_start: { -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_free_object(x_16); -x_711 = lean_unsigned_to_nat(2u); -x_712 = lean_array_fget(x_602, x_711); -x_713 = lean_unsigned_to_nat(3u); -x_714 = lean_array_fget(x_602, x_713); -lean_dec(x_602); -x_715 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__41; -x_716 = l_Lean_mkApp3(x_715, x_712, x_714, x_3); -x_717 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_716, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_717; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__13(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } -else -{ -uint8_t x_718; -lean_dec(x_602); -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_3); -x_718 = !lean_is_exclusive(x_693); -if (x_718 == 0) -{ -lean_object* x_719; lean_object* x_720; -x_719 = lean_ctor_get(x_693, 1); -lean_dec(x_719); -x_720 = lean_ctor_get(x_693, 0); -lean_dec(x_720); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_693, 0); -lean_ctor_set(x_693, 1, x_15); -lean_ctor_set(x_693, 0, x_16); -return x_693; } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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) { +_start: { -lean_object* x_721; -lean_dec(x_693); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -x_721 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_721, 0, x_16); -lean_ctor_set(x_721, 1, x_15); -return x_721; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__14(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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) { +_start: +{ +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, lean_object* x_14, lean_object* x_15) { +_start: { -lean_object* x_722; -lean_dec(x_692); -lean_dec(x_691); -lean_dec(x_690); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -x_722 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_722, 0, x_16); -lean_ctor_set(x_722, 1, x_15); -return x_722; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +_start: { -lean_object* x_723; -lean_dec(x_691); -lean_dec(x_690); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -x_723 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_723, 0, x_16); -lean_ctor_set(x_723, 1, x_15); -return x_723; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -case 5: -{ -lean_object* x_724; -x_724 = lean_ctor_get(x_690, 0); -lean_inc(x_724); -if (lean_obj_tag(x_724) == 4) -{ -lean_object* x_725; -x_725 = lean_ctor_get(x_724, 0); -lean_inc(x_725); -if (lean_obj_tag(x_725) == 1) +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, 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_726; -x_726 = lean_ctor_get(x_725, 0); -lean_inc(x_726); -if (lean_obj_tag(x_726) == 0) -{ -lean_object* x_727; lean_object* x_728; lean_object* x_729; lean_object* x_730; uint8_t x_731; -x_727 = lean_ctor_get(x_690, 1); -lean_inc(x_727); -lean_dec(x_690); -x_728 = lean_ctor_get(x_724, 1); -lean_inc(x_728); -lean_dec(x_724); -x_729 = lean_ctor_get(x_725, 1); -lean_inc(x_729); -lean_dec(x_725); -x_730 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_731 = lean_string_dec_eq(x_729, x_730); -lean_dec(x_729); -if (x_731 == 0) -{ -lean_object* x_732; -lean_dec(x_728); -lean_dec(x_727); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -x_732 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_732, 0, x_16); -lean_ctor_set(x_732, 1, x_15); -return x_732; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__18(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } -else -{ -if (lean_obj_tag(x_728) == 0) -{ -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_free_object(x_16); -x_733 = lean_unsigned_to_nat(2u); -x_734 = lean_array_fget(x_602, x_733); -x_735 = lean_unsigned_to_nat(3u); -x_736 = lean_array_fget(x_602, x_735); -lean_dec(x_602); -x_737 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__44; -x_738 = l_Lean_mkApp4(x_737, x_727, x_734, x_736, x_3); -x_739 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_738, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_739; } -else -{ -uint8_t x_740; -lean_dec(x_727); -lean_dec(x_602); -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_3); -x_740 = !lean_is_exclusive(x_728); -if (x_740 == 0) +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__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, lean_object* x_8, lean_object* x_9, 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_741; lean_object* x_742; -x_741 = lean_ctor_get(x_728, 1); -lean_dec(x_741); -x_742 = lean_ctor_get(x_728, 0); -lean_dec(x_742); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_728, 0); -lean_ctor_set(x_728, 1, x_15); -lean_ctor_set(x_728, 0, x_16); -return x_728; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } -else +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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) { +_start: { -lean_object* x_743; -lean_dec(x_728); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -x_743 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_743, 0, x_16); -lean_ctor_set(x_743, 1, x_15); -return x_743; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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) { +_start: +{ +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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) { +_start: { -lean_object* x_744; -lean_dec(x_726); -lean_dec(x_725); -lean_dec(x_724); -lean_dec(x_690); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -x_744 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_744, 0, x_16); -lean_ctor_set(x_744, 1, x_15); -return x_744; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__22(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__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, lean_object* x_9, 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_745; -lean_dec(x_725); -lean_dec(x_724); -lean_dec(x_690); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -x_745 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_745, 0, x_16); -lean_ctor_set(x_745, 1, x_15); -return x_745; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, lean_object* x_8, lean_object* x_9, 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_746; -lean_dec(x_724); -lean_dec(x_690); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -x_746 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_746, 0, x_16); -lean_ctor_set(x_746, 1, x_15); -return x_746; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -default: +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +_start: { -lean_object* x_747; -lean_dec(x_690); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_689); -lean_ctor_set(x_16, 0, x_2); -x_747 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_747, 0, x_16); -lean_ctor_set(x_747, 1, x_15); -return x_747; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -} -} -} -} -else -{ -lean_object* x_748; uint8_t x_749; -lean_dec(x_605); -x_748 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__45; -x_749 = lean_string_dec_eq(x_604, x_748); -lean_dec(x_604); -if (x_749 == 0) -{ -lean_object* x_750; lean_object* x_751; -lean_dec(x_602); -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_3); -x_750 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_750); -lean_ctor_set(x_16, 0, x_2); -x_751 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_751, 0, x_16); -lean_ctor_set(x_751, 1, x_15); -return x_751; -} -else -{ -lean_object* x_752; lean_object* x_753; uint8_t x_754; -x_752 = lean_array_get_size(x_602); -x_753 = lean_unsigned_to_nat(4u); -x_754 = lean_nat_dec_eq(x_752, x_753); -lean_dec(x_752); -if (x_754 == 0) -{ -lean_object* x_755; lean_object* x_756; -lean_dec(x_602); -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_3); -x_755 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_755); -lean_ctor_set(x_16, 0, x_2); -x_756 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_756, 0, x_16); -lean_ctor_set(x_756, 1, x_15); -return x_756; -} -else -{ -lean_object* x_757; lean_object* x_758; -x_757 = lean_unsigned_to_nat(0u); -x_758 = lean_array_fget(x_602, x_757); -switch (lean_obj_tag(x_758)) { -case 4: -{ -lean_object* x_759; -x_759 = lean_ctor_get(x_758, 0); -lean_inc(x_759); -if (lean_obj_tag(x_759) == 1) -{ -lean_object* x_760; -x_760 = lean_ctor_get(x_759, 0); -lean_inc(x_760); -if (lean_obj_tag(x_760) == 0) -{ -lean_object* x_761; lean_object* x_762; lean_object* x_763; uint8_t x_764; -x_761 = lean_ctor_get(x_758, 1); -lean_inc(x_761); -lean_dec(x_758); -x_762 = lean_ctor_get(x_759, 1); -lean_inc(x_762); -lean_dec(x_759); -x_763 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_764 = lean_string_dec_eq(x_762, x_763); -if (x_764 == 0) -{ -lean_object* x_765; uint8_t x_766; -x_765 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_766 = lean_string_dec_eq(x_762, x_765); -lean_dec(x_762); -if (x_766 == 0) -{ -lean_object* x_767; -lean_dec(x_761); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -x_767 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_767, 0, x_16); -lean_ctor_set(x_767, 1, x_15); -return x_767; -} -else -{ -if (lean_obj_tag(x_761) == 0) -{ -lean_object* x_768; lean_object* x_769; lean_object* x_770; lean_object* x_771; lean_object* x_772; lean_object* x_773; lean_object* x_774; -lean_free_object(x_16); -x_768 = lean_unsigned_to_nat(2u); -x_769 = lean_array_fget(x_602, x_768); -x_770 = lean_unsigned_to_nat(3u); -x_771 = lean_array_fget(x_602, x_770); -lean_dec(x_602); -x_772 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__48; -x_773 = l_Lean_mkApp3(x_772, x_769, x_771, x_3); -x_774 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_773, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_774; -} -else -{ -uint8_t x_775; -lean_dec(x_602); -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_3); -x_775 = !lean_is_exclusive(x_761); -if (x_775 == 0) -{ -lean_object* x_776; lean_object* x_777; -x_776 = lean_ctor_get(x_761, 1); -lean_dec(x_776); -x_777 = lean_ctor_get(x_761, 0); -lean_dec(x_777); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_761, 0); -lean_ctor_set(x_761, 1, x_15); -lean_ctor_set(x_761, 0, x_16); -return x_761; -} -else -{ -lean_object* x_778; -lean_dec(x_761); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -x_778 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_778, 0, x_16); -lean_ctor_set(x_778, 1, x_15); -return x_778; -} -} -} -} -else -{ -lean_dec(x_762); -if (lean_obj_tag(x_761) == 0) -{ -lean_object* x_779; lean_object* x_780; lean_object* x_781; lean_object* x_782; lean_object* x_783; lean_object* x_784; lean_object* x_785; -lean_free_object(x_16); -x_779 = lean_unsigned_to_nat(2u); -x_780 = lean_array_fget(x_602, x_779); -x_781 = lean_unsigned_to_nat(3u); -x_782 = lean_array_fget(x_602, x_781); -lean_dec(x_602); -x_783 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__50; -x_784 = l_Lean_mkApp3(x_783, x_780, x_782, x_3); -x_785 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_784, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_785; -} -else -{ -uint8_t x_786; -lean_dec(x_602); -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_3); -x_786 = !lean_is_exclusive(x_761); -if (x_786 == 0) -{ -lean_object* x_787; lean_object* x_788; -x_787 = lean_ctor_get(x_761, 1); -lean_dec(x_787); -x_788 = lean_ctor_get(x_761, 0); -lean_dec(x_788); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_761, 0); -lean_ctor_set(x_761, 1, x_15); -lean_ctor_set(x_761, 0, x_16); -return x_761; -} -else -{ -lean_object* x_789; -lean_dec(x_761); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -x_789 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_789, 0, x_16); -lean_ctor_set(x_789, 1, x_15); -return x_789; -} -} -} -} -else -{ -lean_object* x_790; -lean_dec(x_760); -lean_dec(x_759); -lean_dec(x_758); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -x_790 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_790, 0, x_16); -lean_ctor_set(x_790, 1, x_15); -return x_790; -} -} -else -{ -lean_object* x_791; -lean_dec(x_759); -lean_dec(x_758); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -x_791 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_791, 0, x_16); -lean_ctor_set(x_791, 1, x_15); -return x_791; -} -} -case 5: -{ -lean_object* x_792; -x_792 = lean_ctor_get(x_758, 0); -lean_inc(x_792); -if (lean_obj_tag(x_792) == 4) -{ -lean_object* x_793; -x_793 = lean_ctor_get(x_792, 0); -lean_inc(x_793); -if (lean_obj_tag(x_793) == 1) -{ -lean_object* x_794; -x_794 = lean_ctor_get(x_793, 0); -lean_inc(x_794); -if (lean_obj_tag(x_794) == 0) -{ -lean_object* x_795; lean_object* x_796; lean_object* x_797; lean_object* x_798; uint8_t x_799; -x_795 = lean_ctor_get(x_758, 1); -lean_inc(x_795); -lean_dec(x_758); -x_796 = lean_ctor_get(x_792, 1); -lean_inc(x_796); -lean_dec(x_792); -x_797 = lean_ctor_get(x_793, 1); -lean_inc(x_797); -lean_dec(x_793); -x_798 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_799 = lean_string_dec_eq(x_797, x_798); -lean_dec(x_797); -if (x_799 == 0) -{ -lean_object* x_800; -lean_dec(x_796); -lean_dec(x_795); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -x_800 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_800, 0, x_16); -lean_ctor_set(x_800, 1, x_15); -return x_800; -} -else -{ -if (lean_obj_tag(x_796) == 0) -{ -lean_object* x_801; 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_free_object(x_16); -x_801 = lean_unsigned_to_nat(2u); -x_802 = lean_array_fget(x_602, x_801); -x_803 = lean_unsigned_to_nat(3u); -x_804 = lean_array_fget(x_602, x_803); -lean_dec(x_602); -x_805 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__53; -x_806 = l_Lean_mkApp4(x_805, x_795, x_802, x_804, x_3); -x_807 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_806, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_807; -} -else -{ -uint8_t x_808; -lean_dec(x_795); -lean_dec(x_602); -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_3); -x_808 = !lean_is_exclusive(x_796); -if (x_808 == 0) -{ -lean_object* x_809; lean_object* x_810; -x_809 = lean_ctor_get(x_796, 1); -lean_dec(x_809); -x_810 = lean_ctor_get(x_796, 0); -lean_dec(x_810); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_796, 0); -lean_ctor_set(x_796, 1, x_15); -lean_ctor_set(x_796, 0, x_16); -return x_796; -} -else -{ -lean_object* x_811; -lean_dec(x_796); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -x_811 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_811, 0, x_16); -lean_ctor_set(x_811, 1, x_15); -return x_811; -} -} -} -} -else -{ -lean_object* x_812; -lean_dec(x_794); -lean_dec(x_793); -lean_dec(x_792); -lean_dec(x_758); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -x_812 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_812, 0, x_16); -lean_ctor_set(x_812, 1, x_15); -return x_812; -} -} -else -{ -lean_object* x_813; -lean_dec(x_793); -lean_dec(x_792); -lean_dec(x_758); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -x_813 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_813, 0, x_16); -lean_ctor_set(x_813, 1, x_15); -return x_813; -} -} -else -{ -lean_object* x_814; -lean_dec(x_792); -lean_dec(x_758); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -x_814 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_814, 0, x_16); -lean_ctor_set(x_814, 1, x_15); -return x_814; -} -} -default: -{ -lean_object* x_815; -lean_dec(x_758); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_757); -lean_ctor_set(x_16, 0, x_2); -x_815 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_815, 0, x_16); -lean_ctor_set(x_815, 1, x_15); -return x_815; -} -} -} -} -} -} -else -{ -lean_object* x_816; uint8_t x_817; -lean_dec(x_605); -x_816 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__14; -x_817 = lean_string_dec_eq(x_604, x_816); -lean_dec(x_604); -if (x_817 == 0) -{ -lean_object* x_818; lean_object* x_819; -lean_dec(x_602); -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_3); -x_818 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_818); -lean_ctor_set(x_16, 0, x_2); -x_819 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_819, 0, x_16); -lean_ctor_set(x_819, 1, x_15); -return x_819; -} -else -{ -lean_object* x_820; lean_object* x_821; uint8_t x_822; -x_820 = lean_array_get_size(x_602); -x_821 = lean_unsigned_to_nat(4u); -x_822 = lean_nat_dec_eq(x_820, x_821); -lean_dec(x_820); -if (x_822 == 0) -{ -lean_object* x_823; lean_object* x_824; -lean_dec(x_602); -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_3); -x_823 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_823); -lean_ctor_set(x_16, 0, x_2); -x_824 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_824, 0, x_16); -lean_ctor_set(x_824, 1, x_15); -return x_824; -} -else -{ -lean_object* x_825; lean_object* x_826; -x_825 = lean_unsigned_to_nat(0u); -x_826 = lean_array_fget(x_602, x_825); -switch (lean_obj_tag(x_826)) { -case 4: -{ -lean_object* x_827; -x_827 = lean_ctor_get(x_826, 0); -lean_inc(x_827); -if (lean_obj_tag(x_827) == 1) -{ -lean_object* x_828; -x_828 = lean_ctor_get(x_827, 0); -lean_inc(x_828); -if (lean_obj_tag(x_828) == 0) -{ -lean_object* x_829; lean_object* x_830; lean_object* x_831; uint8_t x_832; -x_829 = lean_ctor_get(x_826, 1); -lean_inc(x_829); -lean_dec(x_826); -x_830 = lean_ctor_get(x_827, 1); -lean_inc(x_830); -lean_dec(x_827); -x_831 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_832 = lean_string_dec_eq(x_830, x_831); -if (x_832 == 0) -{ -lean_object* x_833; uint8_t x_834; -x_833 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_834 = lean_string_dec_eq(x_830, x_833); -lean_dec(x_830); -if (x_834 == 0) -{ -lean_object* x_835; -lean_dec(x_829); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -x_835 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_835, 0, x_16); -lean_ctor_set(x_835, 1, x_15); -return x_835; -} -else -{ -if (lean_obj_tag(x_829) == 0) -{ -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_free_object(x_16); -x_836 = lean_unsigned_to_nat(2u); -x_837 = lean_array_fget(x_602, x_836); -x_838 = lean_unsigned_to_nat(3u); -x_839 = lean_array_fget(x_602, x_838); -lean_dec(x_602); -x_840 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__56; -x_841 = l_Lean_mkApp3(x_840, x_837, x_839, x_3); -x_842 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_841, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_842; -} -else -{ -uint8_t x_843; -lean_dec(x_602); -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_3); -x_843 = !lean_is_exclusive(x_829); -if (x_843 == 0) -{ -lean_object* x_844; lean_object* x_845; -x_844 = lean_ctor_get(x_829, 1); -lean_dec(x_844); -x_845 = lean_ctor_get(x_829, 0); -lean_dec(x_845); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_829, 0); -lean_ctor_set(x_829, 1, x_15); -lean_ctor_set(x_829, 0, x_16); -return x_829; -} -else -{ -lean_object* x_846; -lean_dec(x_829); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -x_846 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_846, 0, x_16); -lean_ctor_set(x_846, 1, x_15); -return x_846; -} -} -} -} -else -{ -lean_dec(x_830); -if (lean_obj_tag(x_829) == 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_free_object(x_16); -x_847 = lean_unsigned_to_nat(2u); -x_848 = lean_array_fget(x_602, x_847); -x_849 = lean_unsigned_to_nat(3u); -x_850 = lean_array_fget(x_602, x_849); -lean_dec(x_602); -x_851 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__59; -x_852 = l_Lean_mkApp3(x_851, x_848, x_850, x_3); -x_853 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_852, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_853; -} -else -{ -uint8_t x_854; -lean_dec(x_602); -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_3); -x_854 = !lean_is_exclusive(x_829); -if (x_854 == 0) -{ -lean_object* x_855; lean_object* x_856; -x_855 = lean_ctor_get(x_829, 1); -lean_dec(x_855); -x_856 = lean_ctor_get(x_829, 0); -lean_dec(x_856); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_829, 0); -lean_ctor_set(x_829, 1, x_15); -lean_ctor_set(x_829, 0, x_16); -return x_829; -} -else -{ -lean_object* x_857; -lean_dec(x_829); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -x_857 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_857, 0, x_16); -lean_ctor_set(x_857, 1, x_15); -return x_857; -} -} -} -} -else -{ -lean_object* x_858; -lean_dec(x_828); -lean_dec(x_827); -lean_dec(x_826); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -x_858 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_858, 0, x_16); -lean_ctor_set(x_858, 1, x_15); -return x_858; -} -} -else -{ -lean_object* x_859; -lean_dec(x_827); -lean_dec(x_826); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -x_859 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_859, 0, x_16); -lean_ctor_set(x_859, 1, x_15); -return x_859; -} -} -case 5: -{ -lean_object* x_860; -x_860 = lean_ctor_get(x_826, 0); -lean_inc(x_860); -if (lean_obj_tag(x_860) == 4) -{ -lean_object* x_861; -x_861 = lean_ctor_get(x_860, 0); -lean_inc(x_861); -if (lean_obj_tag(x_861) == 1) -{ -lean_object* x_862; -x_862 = lean_ctor_get(x_861, 0); -lean_inc(x_862); -if (lean_obj_tag(x_862) == 0) -{ -lean_object* x_863; lean_object* x_864; lean_object* x_865; lean_object* x_866; uint8_t x_867; -x_863 = lean_ctor_get(x_826, 1); -lean_inc(x_863); -lean_dec(x_826); -x_864 = lean_ctor_get(x_860, 1); -lean_inc(x_864); -lean_dec(x_860); -x_865 = lean_ctor_get(x_861, 1); -lean_inc(x_865); -lean_dec(x_861); -x_866 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_867 = lean_string_dec_eq(x_865, x_866); -lean_dec(x_865); -if (x_867 == 0) -{ -lean_object* x_868; -lean_dec(x_864); -lean_dec(x_863); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -x_868 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_868, 0, x_16); -lean_ctor_set(x_868, 1, x_15); -return x_868; -} -else -{ -if (lean_obj_tag(x_864) == 0) -{ -lean_object* x_869; lean_object* x_870; lean_object* x_871; lean_object* x_872; lean_object* x_873; lean_object* x_874; lean_object* x_875; -lean_free_object(x_16); -x_869 = lean_unsigned_to_nat(2u); -x_870 = lean_array_fget(x_602, x_869); -x_871 = lean_unsigned_to_nat(3u); -x_872 = lean_array_fget(x_602, x_871); -lean_dec(x_602); -x_873 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__62; -x_874 = l_Lean_mkApp4(x_873, x_863, x_870, x_872, x_3); -x_875 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_874, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_875; -} -else -{ -uint8_t x_876; -lean_dec(x_863); -lean_dec(x_602); -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_3); -x_876 = !lean_is_exclusive(x_864); -if (x_876 == 0) -{ -lean_object* x_877; lean_object* x_878; -x_877 = lean_ctor_get(x_864, 1); -lean_dec(x_877); -x_878 = lean_ctor_get(x_864, 0); -lean_dec(x_878); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_864, 0); -lean_ctor_set(x_864, 1, x_15); -lean_ctor_set(x_864, 0, x_16); -return x_864; -} -else -{ -lean_object* x_879; -lean_dec(x_864); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -x_879 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_879, 0, x_16); -lean_ctor_set(x_879, 1, x_15); -return x_879; -} -} -} -} -else -{ -lean_object* x_880; -lean_dec(x_862); -lean_dec(x_861); -lean_dec(x_860); -lean_dec(x_826); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -x_880 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_880, 0, x_16); -lean_ctor_set(x_880, 1, x_15); -return x_880; -} -} -else -{ -lean_object* x_881; -lean_dec(x_861); -lean_dec(x_860); -lean_dec(x_826); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -x_881 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_881, 0, x_16); -lean_ctor_set(x_881, 1, x_15); -return x_881; -} -} -else -{ -lean_object* x_882; -lean_dec(x_860); -lean_dec(x_826); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -x_882 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_882, 0, x_16); -lean_ctor_set(x_882, 1, x_15); -return x_882; -} -} -default: -{ -lean_object* x_883; -lean_dec(x_826); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_825); -lean_ctor_set(x_16, 0, x_2); -x_883 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_883, 0, x_16); -lean_ctor_set(x_883, 1, x_15); -return x_883; -} -} -} -} -} -} -else -{ -lean_object* x_884; uint8_t x_885; -lean_dec(x_605); -x_884 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__11; -x_885 = lean_string_dec_eq(x_604, x_884); -lean_dec(x_604); -if (x_885 == 0) -{ -lean_object* x_886; lean_object* x_887; -lean_dec(x_602); -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_3); -x_886 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_886); -lean_ctor_set(x_16, 0, x_2); -x_887 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_887, 0, x_16); -lean_ctor_set(x_887, 1, x_15); -return x_887; -} -else -{ -lean_object* x_888; lean_object* x_889; uint8_t x_890; -x_888 = lean_array_get_size(x_602); -x_889 = lean_unsigned_to_nat(4u); -x_890 = lean_nat_dec_eq(x_888, x_889); -lean_dec(x_888); -if (x_890 == 0) -{ -lean_object* x_891; lean_object* x_892; -lean_dec(x_602); -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_3); -x_891 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_891); -lean_ctor_set(x_16, 0, x_2); -x_892 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_892, 0, x_16); -lean_ctor_set(x_892, 1, x_15); -return x_892; -} -else -{ -lean_object* x_893; lean_object* x_894; -x_893 = lean_unsigned_to_nat(0u); -x_894 = lean_array_fget(x_602, x_893); -switch (lean_obj_tag(x_894)) { -case 4: -{ -lean_object* x_895; -x_895 = lean_ctor_get(x_894, 0); -lean_inc(x_895); -if (lean_obj_tag(x_895) == 1) -{ -lean_object* x_896; -x_896 = lean_ctor_get(x_895, 0); -lean_inc(x_896); -if (lean_obj_tag(x_896) == 0) -{ -lean_object* x_897; lean_object* x_898; lean_object* x_899; uint8_t x_900; -x_897 = lean_ctor_get(x_894, 1); -lean_inc(x_897); -lean_dec(x_894); -x_898 = lean_ctor_get(x_895, 1); -lean_inc(x_898); -lean_dec(x_895); -x_899 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_900 = lean_string_dec_eq(x_898, x_899); -if (x_900 == 0) -{ -lean_object* x_901; uint8_t x_902; -x_901 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_902 = lean_string_dec_eq(x_898, x_901); -lean_dec(x_898); -if (x_902 == 0) -{ -lean_object* x_903; -lean_dec(x_897); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -x_903 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_903, 0, x_16); -lean_ctor_set(x_903, 1, x_15); -return x_903; -} -else -{ -if (lean_obj_tag(x_897) == 0) -{ -lean_object* x_904; lean_object* x_905; lean_object* x_906; lean_object* x_907; lean_object* x_908; lean_object* x_909; lean_object* x_910; -lean_free_object(x_16); -x_904 = lean_unsigned_to_nat(2u); -x_905 = lean_array_fget(x_602, x_904); -x_906 = lean_unsigned_to_nat(3u); -x_907 = lean_array_fget(x_602, x_906); -lean_dec(x_602); -x_908 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__65; -x_909 = l_Lean_mkApp3(x_908, x_905, x_907, x_3); -x_910 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_909, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_910; -} -else -{ -uint8_t x_911; -lean_dec(x_602); -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_3); -x_911 = !lean_is_exclusive(x_897); -if (x_911 == 0) -{ -lean_object* x_912; lean_object* x_913; -x_912 = lean_ctor_get(x_897, 1); -lean_dec(x_912); -x_913 = lean_ctor_get(x_897, 0); -lean_dec(x_913); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_897, 0); -lean_ctor_set(x_897, 1, x_15); -lean_ctor_set(x_897, 0, x_16); -return x_897; -} -else -{ -lean_object* x_914; -lean_dec(x_897); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -x_914 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_914, 0, x_16); -lean_ctor_set(x_914, 1, x_15); -return x_914; -} -} -} -} -else -{ -lean_dec(x_898); -if (lean_obj_tag(x_897) == 0) -{ -lean_object* x_915; lean_object* x_916; lean_object* x_917; lean_object* x_918; lean_object* x_919; -x_915 = lean_unsigned_to_nat(2u); -x_916 = lean_array_fget(x_602, x_915); -x_917 = lean_unsigned_to_nat(3u); -x_918 = lean_array_fget(x_602, x_917); -lean_dec(x_602); -lean_inc(x_916); -x_919 = l_Lean_Expr_int_x3f(x_916); -if (lean_obj_tag(x_919) == 0) -{ -lean_object* x_920; lean_object* x_921; lean_object* x_922; -lean_free_object(x_16); -x_920 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__68; -x_921 = l_Lean_mkApp3(x_920, x_918, x_916, x_3); -x_922 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_921, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_922; -} -else -{ -lean_object* x_923; lean_object* x_924; uint8_t x_925; -x_923 = lean_ctor_get(x_919, 0); -lean_inc(x_923); -lean_dec(x_919); -x_924 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__8; -x_925 = lean_int_dec_eq(x_923, x_924); -lean_dec(x_923); -if (x_925 == 0) -{ -lean_object* x_926; lean_object* x_927; lean_object* x_928; -lean_free_object(x_16); -x_926 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__68; -x_927 = l_Lean_mkApp3(x_926, x_918, x_916, x_3); -x_928 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_927, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_928; -} -else -{ -lean_object* x_929; -lean_dec(x_916); -x_929 = l_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality(x_2, x_3, x_918, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_929) == 0) -{ -uint8_t x_930; -x_930 = !lean_is_exclusive(x_929); -if (x_930 == 0) -{ -lean_object* x_931; lean_object* x_932; -x_931 = lean_ctor_get(x_929, 0); -x_932 = lean_unsigned_to_nat(1u); -lean_ctor_set(x_16, 1, x_932); -lean_ctor_set(x_16, 0, x_931); -lean_ctor_set(x_929, 0, x_16); -return x_929; -} -else -{ -lean_object* x_933; lean_object* x_934; lean_object* x_935; lean_object* x_936; -x_933 = lean_ctor_get(x_929, 0); -x_934 = lean_ctor_get(x_929, 1); -lean_inc(x_934); -lean_inc(x_933); -lean_dec(x_929); -x_935 = lean_unsigned_to_nat(1u); -lean_ctor_set(x_16, 1, x_935); -lean_ctor_set(x_16, 0, x_933); -x_936 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_936, 0, x_16); -lean_ctor_set(x_936, 1, x_934); -return x_936; -} -} -else -{ -uint8_t x_937; -lean_free_object(x_16); -x_937 = !lean_is_exclusive(x_929); -if (x_937 == 0) -{ -return x_929; -} -else -{ -lean_object* x_938; lean_object* x_939; lean_object* x_940; -x_938 = lean_ctor_get(x_929, 0); -x_939 = lean_ctor_get(x_929, 1); -lean_inc(x_939); -lean_inc(x_938); -lean_dec(x_929); -x_940 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_940, 0, x_938); -lean_ctor_set(x_940, 1, x_939); -return x_940; -} -} -} -} -} -else -{ -uint8_t x_941; -lean_dec(x_602); -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_3); -x_941 = !lean_is_exclusive(x_897); -if (x_941 == 0) -{ -lean_object* x_942; lean_object* x_943; -x_942 = lean_ctor_get(x_897, 1); -lean_dec(x_942); -x_943 = lean_ctor_get(x_897, 0); -lean_dec(x_943); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_897, 0); -lean_ctor_set(x_897, 1, x_15); -lean_ctor_set(x_897, 0, x_16); -return x_897; -} -else -{ -lean_object* x_944; -lean_dec(x_897); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -x_944 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_944, 0, x_16); -lean_ctor_set(x_944, 1, x_15); -return x_944; -} -} -} -} -else -{ -lean_object* x_945; -lean_dec(x_896); -lean_dec(x_895); -lean_dec(x_894); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -x_945 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_945, 0, x_16); -lean_ctor_set(x_945, 1, x_15); -return x_945; -} -} -else -{ -lean_object* x_946; -lean_dec(x_895); -lean_dec(x_894); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -x_946 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_946, 0, x_16); -lean_ctor_set(x_946, 1, x_15); -return x_946; -} -} -case 5: -{ -lean_object* x_947; -x_947 = lean_ctor_get(x_894, 0); -lean_inc(x_947); -if (lean_obj_tag(x_947) == 4) -{ -lean_object* x_948; -x_948 = lean_ctor_get(x_947, 0); -lean_inc(x_948); -if (lean_obj_tag(x_948) == 1) -{ -lean_object* x_949; -x_949 = lean_ctor_get(x_948, 0); -lean_inc(x_949); -if (lean_obj_tag(x_949) == 0) -{ -lean_object* x_950; lean_object* x_951; lean_object* x_952; lean_object* x_953; uint8_t x_954; -x_950 = lean_ctor_get(x_894, 1); -lean_inc(x_950); -lean_dec(x_894); -x_951 = lean_ctor_get(x_947, 1); -lean_inc(x_951); -lean_dec(x_947); -x_952 = lean_ctor_get(x_948, 1); -lean_inc(x_952); -lean_dec(x_948); -x_953 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_954 = lean_string_dec_eq(x_952, x_953); -lean_dec(x_952); -if (x_954 == 0) -{ -lean_object* x_955; -lean_dec(x_951); -lean_dec(x_950); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -x_955 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_955, 0, x_16); -lean_ctor_set(x_955, 1, x_15); -return x_955; -} -else -{ -if (lean_obj_tag(x_951) == 0) -{ -lean_object* x_956; lean_object* x_957; lean_object* x_958; lean_object* x_959; lean_object* x_960; lean_object* x_961; lean_object* x_962; -lean_free_object(x_16); -x_956 = lean_unsigned_to_nat(2u); -x_957 = lean_array_fget(x_602, x_956); -x_958 = lean_unsigned_to_nat(3u); -x_959 = lean_array_fget(x_602, x_958); -lean_dec(x_602); -x_960 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__71; -x_961 = l_Lean_mkApp4(x_960, x_950, x_957, x_959, x_3); -x_962 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_961, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_962; -} -else -{ -uint8_t x_963; -lean_dec(x_950); -lean_dec(x_602); -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_3); -x_963 = !lean_is_exclusive(x_951); -if (x_963 == 0) -{ -lean_object* x_964; lean_object* x_965; -x_964 = lean_ctor_get(x_951, 1); -lean_dec(x_964); -x_965 = lean_ctor_get(x_951, 0); -lean_dec(x_965); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -lean_ctor_set_tag(x_951, 0); -lean_ctor_set(x_951, 1, x_15); -lean_ctor_set(x_951, 0, x_16); -return x_951; -} -else -{ -lean_object* x_966; -lean_dec(x_951); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -x_966 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_966, 0, x_16); -lean_ctor_set(x_966, 1, x_15); -return x_966; -} -} -} -} -else -{ -lean_object* x_967; -lean_dec(x_949); -lean_dec(x_948); -lean_dec(x_947); -lean_dec(x_894); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -x_967 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_967, 0, x_16); -lean_ctor_set(x_967, 1, x_15); -return x_967; -} -} -else -{ -lean_object* x_968; -lean_dec(x_948); -lean_dec(x_947); -lean_dec(x_894); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -x_968 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_968, 0, x_16); -lean_ctor_set(x_968, 1, x_15); -return x_968; -} -} -else -{ -lean_object* x_969; -lean_dec(x_947); -lean_dec(x_894); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -x_969 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_969, 0, x_16); -lean_ctor_set(x_969, 1, x_15); -return x_969; -} -} -default: -{ -lean_object* x_970; -lean_dec(x_894); -lean_dec(x_602); -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_3); -lean_ctor_set(x_16, 1, x_893); -lean_ctor_set(x_16, 0, x_2); -x_970 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_970, 0, x_16); -lean_ctor_set(x_970, 1, x_15); -return x_970; -} -} -} -} -} -} -else -{ -lean_object* x_971; lean_object* x_972; lean_object* x_973; lean_object* x_974; uint8_t x_975; -x_971 = lean_ctor_get(x_16, 1); -lean_inc(x_971); -lean_dec(x_16); -x_972 = lean_ctor_get(x_17, 1); -lean_inc(x_972); -lean_dec(x_17); -x_973 = lean_ctor_get(x_18, 1); -lean_inc(x_973); -lean_dec(x_18); -x_974 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__10; -x_975 = lean_string_dec_eq(x_973, x_974); -if (x_975 == 0) -{ -lean_object* x_976; uint8_t x_977; -x_976 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__13; -x_977 = lean_string_dec_eq(x_973, x_976); -if (x_977 == 0) -{ -lean_object* x_978; uint8_t x_979; -x_978 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__26; -x_979 = lean_string_dec_eq(x_973, x_978); -if (x_979 == 0) -{ -lean_object* x_980; uint8_t x_981; -x_980 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__27; -x_981 = lean_string_dec_eq(x_973, x_980); -if (x_981 == 0) -{ -lean_object* x_982; uint8_t x_983; -x_982 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8; -x_983 = lean_string_dec_eq(x_973, x_982); -if (x_983 == 0) -{ -lean_object* x_984; uint8_t x_985; -x_984 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__7; -x_985 = lean_string_dec_eq(x_973, x_984); -lean_dec(x_973); -if (x_985 == 0) -{ -lean_object* x_986; lean_object* x_987; lean_object* x_988; -lean_dec(x_972); -lean_dec(x_971); -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_3); -x_986 = lean_unsigned_to_nat(0u); -x_987 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_987, 0, x_2); -lean_ctor_set(x_987, 1, x_986); -x_988 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_988, 0, x_987); -lean_ctor_set(x_988, 1, x_15); -return x_988; -} -else -{ -lean_object* x_989; uint8_t x_990; -x_989 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__8; -x_990 = lean_string_dec_eq(x_972, x_989); -lean_dec(x_972); -if (x_990 == 0) -{ -lean_object* x_991; lean_object* x_992; lean_object* x_993; -lean_dec(x_971); -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_3); -x_991 = lean_unsigned_to_nat(0u); -x_992 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_992, 0, x_2); -lean_ctor_set(x_992, 1, x_991); -x_993 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_993, 0, x_992); -lean_ctor_set(x_993, 1, x_15); -return x_993; -} -else -{ -lean_object* x_994; lean_object* x_995; uint8_t x_996; -x_994 = lean_array_get_size(x_971); -x_995 = lean_unsigned_to_nat(4u); -x_996 = lean_nat_dec_eq(x_994, x_995); -lean_dec(x_994); -if (x_996 == 0) -{ -lean_object* x_997; lean_object* x_998; lean_object* x_999; -lean_dec(x_971); -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_3); -x_997 = lean_unsigned_to_nat(0u); -x_998 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_998, 0, x_2); -lean_ctor_set(x_998, 1, x_997); -x_999 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_999, 0, x_998); -lean_ctor_set(x_999, 1, x_15); -return x_999; -} -else -{ -lean_object* x_1000; lean_object* x_1001; -x_1000 = lean_unsigned_to_nat(0u); -x_1001 = lean_array_fget(x_971, x_1000); -if (lean_obj_tag(x_1001) == 4) -{ -lean_object* x_1002; -x_1002 = lean_ctor_get(x_1001, 0); -lean_inc(x_1002); -if (lean_obj_tag(x_1002) == 1) -{ -lean_object* x_1003; -x_1003 = lean_ctor_get(x_1002, 0); -lean_inc(x_1003); -if (lean_obj_tag(x_1003) == 0) -{ -lean_object* x_1004; lean_object* x_1005; lean_object* x_1006; uint8_t x_1007; -x_1004 = lean_ctor_get(x_1001, 1); -lean_inc(x_1004); -lean_dec(x_1001); -x_1005 = lean_ctor_get(x_1002, 1); -lean_inc(x_1005); -lean_dec(x_1002); -x_1006 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_1007 = lean_string_dec_eq(x_1005, x_1006); -if (x_1007 == 0) -{ -lean_object* x_1008; uint8_t x_1009; -x_1008 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_1009 = lean_string_dec_eq(x_1005, x_1008); -lean_dec(x_1005); -if (x_1009 == 0) -{ -lean_object* x_1010; lean_object* x_1011; -lean_dec(x_1004); -lean_dec(x_971); -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_3); -x_1010 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1010, 0, x_2); -lean_ctor_set(x_1010, 1, x_1000); -x_1011 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1011, 0, x_1010); -lean_ctor_set(x_1011, 1, x_15); -return x_1011; -} -else -{ -if (lean_obj_tag(x_1004) == 0) -{ -lean_object* x_1012; lean_object* x_1013; lean_object* x_1014; lean_object* x_1015; lean_object* x_1016; lean_object* x_1017; lean_object* x_1018; -x_1012 = lean_unsigned_to_nat(2u); -x_1013 = lean_array_fget(x_971, x_1012); -x_1014 = lean_unsigned_to_nat(3u); -x_1015 = lean_array_fget(x_971, x_1014); -lean_dec(x_971); -x_1016 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__30; -x_1017 = l_Lean_mkApp3(x_1016, x_1013, x_1015, x_3); -x_1018 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1017, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1018; -} -else -{ -lean_object* x_1019; lean_object* x_1020; lean_object* x_1021; -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1004)) { - lean_ctor_release(x_1004, 0); - lean_ctor_release(x_1004, 1); - x_1019 = x_1004; -} else { - lean_dec_ref(x_1004); - x_1019 = lean_box(0); -} -x_1020 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1020, 0, x_2); -lean_ctor_set(x_1020, 1, x_1000); -if (lean_is_scalar(x_1019)) { - x_1021 = lean_alloc_ctor(0, 2, 0); -} else { - x_1021 = x_1019; - lean_ctor_set_tag(x_1021, 0); -} -lean_ctor_set(x_1021, 0, x_1020); -lean_ctor_set(x_1021, 1, x_15); -return x_1021; -} -} -} -else -{ -lean_dec(x_1005); -if (lean_obj_tag(x_1004) == 0) -{ -lean_object* x_1022; lean_object* x_1023; lean_object* x_1024; lean_object* x_1025; lean_object* x_1026; lean_object* x_1027; lean_object* x_1028; -x_1022 = lean_unsigned_to_nat(2u); -x_1023 = lean_array_fget(x_971, x_1022); -x_1024 = lean_unsigned_to_nat(3u); -x_1025 = lean_array_fget(x_971, x_1024); -lean_dec(x_971); -x_1026 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__33; -x_1027 = l_Lean_mkApp3(x_1026, x_1023, x_1025, x_3); -x_1028 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1027, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1028; -} -else -{ -lean_object* x_1029; lean_object* x_1030; lean_object* x_1031; -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1004)) { - lean_ctor_release(x_1004, 0); - lean_ctor_release(x_1004, 1); - x_1029 = x_1004; -} else { - lean_dec_ref(x_1004); - x_1029 = lean_box(0); -} -x_1030 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1030, 0, x_2); -lean_ctor_set(x_1030, 1, x_1000); -if (lean_is_scalar(x_1029)) { - x_1031 = lean_alloc_ctor(0, 2, 0); -} else { - x_1031 = x_1029; - lean_ctor_set_tag(x_1031, 0); -} -lean_ctor_set(x_1031, 0, x_1030); -lean_ctor_set(x_1031, 1, x_15); -return x_1031; -} -} -} -else -{ -lean_object* x_1032; lean_object* x_1033; -lean_dec(x_1003); -lean_dec(x_1002); -lean_dec(x_1001); -lean_dec(x_971); -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_3); -x_1032 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1032, 0, x_2); -lean_ctor_set(x_1032, 1, x_1000); -x_1033 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1033, 0, x_1032); -lean_ctor_set(x_1033, 1, x_15); -return x_1033; -} -} -else -{ -lean_object* x_1034; lean_object* x_1035; -lean_dec(x_1002); -lean_dec(x_1001); -lean_dec(x_971); -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_3); -x_1034 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1034, 0, x_2); -lean_ctor_set(x_1034, 1, x_1000); -x_1035 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1035, 0, x_1034); -lean_ctor_set(x_1035, 1, x_15); -return x_1035; -} -} -else -{ -lean_object* x_1036; lean_object* x_1037; -lean_dec(x_1001); -lean_dec(x_971); -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_3); -x_1036 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1036, 0, x_2); -lean_ctor_set(x_1036, 1, x_1000); -x_1037 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1037, 0, x_1036); -lean_ctor_set(x_1037, 1, x_15); -return x_1037; -} -} -} -} -} -else -{ -lean_object* x_1038; uint8_t x_1039; -lean_dec(x_973); -lean_dec(x_971); -x_1038 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__16; -x_1039 = lean_string_dec_eq(x_972, x_1038); -lean_dec(x_972); -if (x_1039 == 0) -{ -lean_object* x_1040; lean_object* x_1041; lean_object* x_1042; -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_3); -x_1040 = lean_unsigned_to_nat(0u); -x_1041 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1041, 0, x_2); -lean_ctor_set(x_1041, 1, x_1040); -x_1042 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1042, 0, x_1041); -lean_ctor_set(x_1042, 1, x_15); -return x_1042; -} -else -{ -lean_object* x_1043; lean_object* x_1044; lean_object* x_1045; lean_object* x_1046; -x_1043 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__6; -x_1044 = lean_array_push(x_1043, x_3); -x_1045 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__35; -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -x_1046 = l_Lean_Meta_mkAppM(x_1045, x_1044, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_1046) == 0) -{ -lean_object* x_1047; lean_object* x_1048; lean_object* x_1049; -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_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1047, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1048); -return x_1049; -} -else -{ -lean_object* x_1050; lean_object* x_1051; lean_object* x_1052; lean_object* x_1053; -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_2); -x_1050 = lean_ctor_get(x_1046, 0); -lean_inc(x_1050); -x_1051 = lean_ctor_get(x_1046, 1); -lean_inc(x_1051); -if (lean_is_exclusive(x_1046)) { - lean_ctor_release(x_1046, 0); - lean_ctor_release(x_1046, 1); - x_1052 = x_1046; -} else { - lean_dec_ref(x_1046); - x_1052 = lean_box(0); -} -if (lean_is_scalar(x_1052)) { - x_1053 = lean_alloc_ctor(1, 2, 0); -} else { - x_1053 = x_1052; -} -lean_ctor_set(x_1053, 0, x_1050); -lean_ctor_set(x_1053, 1, x_1051); -return x_1053; -} -} -} -} -else -{ -lean_object* x_1054; uint8_t x_1055; -lean_dec(x_973); -x_1054 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__36; -x_1055 = lean_string_dec_eq(x_972, x_1054); -lean_dec(x_972); -if (x_1055 == 0) -{ -lean_object* x_1056; lean_object* x_1057; lean_object* x_1058; -lean_dec(x_971); -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_3); -x_1056 = lean_unsigned_to_nat(0u); -x_1057 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1057, 0, x_2); -lean_ctor_set(x_1057, 1, x_1056); -x_1058 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1058, 0, x_1057); -lean_ctor_set(x_1058, 1, x_15); -return x_1058; -} -else -{ -lean_object* x_1059; lean_object* x_1060; uint8_t x_1061; -x_1059 = lean_array_get_size(x_971); -x_1060 = lean_unsigned_to_nat(4u); -x_1061 = lean_nat_dec_eq(x_1059, x_1060); -lean_dec(x_1059); -if (x_1061 == 0) -{ -lean_object* x_1062; lean_object* x_1063; lean_object* x_1064; -lean_dec(x_971); -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_3); -x_1062 = lean_unsigned_to_nat(0u); -x_1063 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1063, 0, x_2); -lean_ctor_set(x_1063, 1, x_1062); -x_1064 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1064, 0, x_1063); -lean_ctor_set(x_1064, 1, x_15); -return x_1064; -} -else -{ -lean_object* x_1065; lean_object* x_1066; -x_1065 = lean_unsigned_to_nat(0u); -x_1066 = lean_array_fget(x_971, x_1065); -switch (lean_obj_tag(x_1066)) { -case 4: -{ -lean_object* x_1067; -x_1067 = lean_ctor_get(x_1066, 0); -lean_inc(x_1067); -if (lean_obj_tag(x_1067) == 1) -{ -lean_object* x_1068; -x_1068 = lean_ctor_get(x_1067, 0); -lean_inc(x_1068); -if (lean_obj_tag(x_1068) == 0) -{ -lean_object* x_1069; lean_object* x_1070; lean_object* x_1071; uint8_t x_1072; -x_1069 = lean_ctor_get(x_1066, 1); -lean_inc(x_1069); -lean_dec(x_1066); -x_1070 = lean_ctor_get(x_1067, 1); -lean_inc(x_1070); -lean_dec(x_1067); -x_1071 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_1072 = lean_string_dec_eq(x_1070, x_1071); -if (x_1072 == 0) -{ -lean_object* x_1073; uint8_t x_1074; -x_1073 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_1074 = lean_string_dec_eq(x_1070, x_1073); -lean_dec(x_1070); -if (x_1074 == 0) -{ -lean_object* x_1075; lean_object* x_1076; -lean_dec(x_1069); -lean_dec(x_971); -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_3); -x_1075 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1075, 0, x_2); -lean_ctor_set(x_1075, 1, x_1065); -x_1076 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1076, 0, x_1075); -lean_ctor_set(x_1076, 1, x_15); -return x_1076; -} -else -{ -if (lean_obj_tag(x_1069) == 0) -{ -lean_object* x_1077; lean_object* x_1078; lean_object* x_1079; lean_object* x_1080; lean_object* x_1081; lean_object* x_1082; lean_object* x_1083; -x_1077 = lean_unsigned_to_nat(2u); -x_1078 = lean_array_fget(x_971, x_1077); -x_1079 = lean_unsigned_to_nat(3u); -x_1080 = lean_array_fget(x_971, x_1079); -lean_dec(x_971); -x_1081 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__39; -x_1082 = l_Lean_mkApp3(x_1081, x_1078, x_1080, x_3); -x_1083 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1082, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1083; -} -else -{ -lean_object* x_1084; lean_object* x_1085; lean_object* x_1086; -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1069)) { - lean_ctor_release(x_1069, 0); - lean_ctor_release(x_1069, 1); - x_1084 = x_1069; -} else { - lean_dec_ref(x_1069); - x_1084 = lean_box(0); -} -x_1085 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1085, 0, x_2); -lean_ctor_set(x_1085, 1, x_1065); -if (lean_is_scalar(x_1084)) { - x_1086 = lean_alloc_ctor(0, 2, 0); -} else { - x_1086 = x_1084; - lean_ctor_set_tag(x_1086, 0); -} -lean_ctor_set(x_1086, 0, x_1085); -lean_ctor_set(x_1086, 1, x_15); -return x_1086; -} -} -} -else -{ -lean_dec(x_1070); -if (lean_obj_tag(x_1069) == 0) -{ -lean_object* x_1087; lean_object* x_1088; lean_object* x_1089; lean_object* x_1090; lean_object* x_1091; lean_object* x_1092; lean_object* x_1093; -x_1087 = lean_unsigned_to_nat(2u); -x_1088 = lean_array_fget(x_971, x_1087); -x_1089 = lean_unsigned_to_nat(3u); -x_1090 = lean_array_fget(x_971, x_1089); -lean_dec(x_971); -x_1091 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__41; -x_1092 = l_Lean_mkApp3(x_1091, x_1088, x_1090, x_3); -x_1093 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1092, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1093; -} -else -{ -lean_object* x_1094; lean_object* x_1095; lean_object* x_1096; -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1069)) { - lean_ctor_release(x_1069, 0); - lean_ctor_release(x_1069, 1); - x_1094 = x_1069; -} else { - lean_dec_ref(x_1069); - x_1094 = lean_box(0); -} -x_1095 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1095, 0, x_2); -lean_ctor_set(x_1095, 1, x_1065); -if (lean_is_scalar(x_1094)) { - x_1096 = lean_alloc_ctor(0, 2, 0); -} else { - x_1096 = x_1094; - lean_ctor_set_tag(x_1096, 0); -} -lean_ctor_set(x_1096, 0, x_1095); -lean_ctor_set(x_1096, 1, x_15); -return x_1096; -} -} -} -else -{ -lean_object* x_1097; lean_object* x_1098; -lean_dec(x_1068); -lean_dec(x_1067); -lean_dec(x_1066); -lean_dec(x_971); -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_3); -x_1097 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1097, 0, x_2); -lean_ctor_set(x_1097, 1, x_1065); -x_1098 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1098, 0, x_1097); -lean_ctor_set(x_1098, 1, x_15); -return x_1098; -} -} -else -{ -lean_object* x_1099; lean_object* x_1100; -lean_dec(x_1067); -lean_dec(x_1066); -lean_dec(x_971); -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_3); -x_1099 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1099, 0, x_2); -lean_ctor_set(x_1099, 1, x_1065); -x_1100 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1100, 0, x_1099); -lean_ctor_set(x_1100, 1, x_15); -return x_1100; -} -} -case 5: -{ -lean_object* x_1101; -x_1101 = lean_ctor_get(x_1066, 0); -lean_inc(x_1101); -if (lean_obj_tag(x_1101) == 4) -{ -lean_object* x_1102; -x_1102 = lean_ctor_get(x_1101, 0); -lean_inc(x_1102); -if (lean_obj_tag(x_1102) == 1) -{ -lean_object* x_1103; -x_1103 = lean_ctor_get(x_1102, 0); -lean_inc(x_1103); -if (lean_obj_tag(x_1103) == 0) -{ -lean_object* x_1104; lean_object* x_1105; lean_object* x_1106; lean_object* x_1107; uint8_t x_1108; -x_1104 = lean_ctor_get(x_1066, 1); -lean_inc(x_1104); -lean_dec(x_1066); -x_1105 = lean_ctor_get(x_1101, 1); -lean_inc(x_1105); -lean_dec(x_1101); -x_1106 = lean_ctor_get(x_1102, 1); -lean_inc(x_1106); -lean_dec(x_1102); -x_1107 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_1108 = lean_string_dec_eq(x_1106, x_1107); -lean_dec(x_1106); -if (x_1108 == 0) -{ -lean_object* x_1109; lean_object* x_1110; -lean_dec(x_1105); -lean_dec(x_1104); -lean_dec(x_971); -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_3); -x_1109 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1109, 0, x_2); -lean_ctor_set(x_1109, 1, x_1065); -x_1110 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1110, 0, x_1109); -lean_ctor_set(x_1110, 1, x_15); -return x_1110; -} -else -{ -if (lean_obj_tag(x_1105) == 0) -{ -lean_object* x_1111; lean_object* x_1112; lean_object* x_1113; lean_object* x_1114; lean_object* x_1115; lean_object* x_1116; lean_object* x_1117; -x_1111 = lean_unsigned_to_nat(2u); -x_1112 = lean_array_fget(x_971, x_1111); -x_1113 = lean_unsigned_to_nat(3u); -x_1114 = lean_array_fget(x_971, x_1113); -lean_dec(x_971); -x_1115 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__44; -x_1116 = l_Lean_mkApp4(x_1115, x_1104, x_1112, x_1114, x_3); -x_1117 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1116, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1117; -} -else -{ -lean_object* x_1118; lean_object* x_1119; lean_object* x_1120; -lean_dec(x_1104); -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1105)) { - lean_ctor_release(x_1105, 0); - lean_ctor_release(x_1105, 1); - x_1118 = x_1105; -} else { - lean_dec_ref(x_1105); - x_1118 = lean_box(0); -} -x_1119 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1119, 0, x_2); -lean_ctor_set(x_1119, 1, x_1065); -if (lean_is_scalar(x_1118)) { - x_1120 = lean_alloc_ctor(0, 2, 0); -} else { - x_1120 = x_1118; - lean_ctor_set_tag(x_1120, 0); -} -lean_ctor_set(x_1120, 0, x_1119); -lean_ctor_set(x_1120, 1, x_15); -return x_1120; -} -} -} -else -{ -lean_object* x_1121; lean_object* x_1122; -lean_dec(x_1103); -lean_dec(x_1102); -lean_dec(x_1101); -lean_dec(x_1066); -lean_dec(x_971); -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_3); -x_1121 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1121, 0, x_2); -lean_ctor_set(x_1121, 1, x_1065); -x_1122 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1122, 0, x_1121); -lean_ctor_set(x_1122, 1, x_15); -return x_1122; -} -} -else -{ -lean_object* x_1123; lean_object* x_1124; -lean_dec(x_1102); -lean_dec(x_1101); -lean_dec(x_1066); -lean_dec(x_971); -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_3); -x_1123 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1123, 0, x_2); -lean_ctor_set(x_1123, 1, x_1065); -x_1124 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1124, 0, x_1123); -lean_ctor_set(x_1124, 1, x_15); -return x_1124; -} -} -else -{ -lean_object* x_1125; lean_object* x_1126; -lean_dec(x_1101); -lean_dec(x_1066); -lean_dec(x_971); -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_3); -x_1125 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1125, 0, x_2); -lean_ctor_set(x_1125, 1, x_1065); -x_1126 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1126, 0, x_1125); -lean_ctor_set(x_1126, 1, x_15); -return x_1126; -} -} -default: -{ -lean_object* x_1127; lean_object* x_1128; -lean_dec(x_1066); -lean_dec(x_971); -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_3); -x_1127 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1127, 0, x_2); -lean_ctor_set(x_1127, 1, x_1065); -x_1128 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1128, 0, x_1127); -lean_ctor_set(x_1128, 1, x_15); -return x_1128; -} -} -} -} -} -} -else -{ -lean_object* x_1129; uint8_t x_1130; -lean_dec(x_973); -x_1129 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__45; -x_1130 = lean_string_dec_eq(x_972, x_1129); -lean_dec(x_972); -if (x_1130 == 0) -{ -lean_object* x_1131; lean_object* x_1132; lean_object* x_1133; -lean_dec(x_971); -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_3); -x_1131 = lean_unsigned_to_nat(0u); -x_1132 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1132, 0, x_2); -lean_ctor_set(x_1132, 1, x_1131); -x_1133 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1133, 0, x_1132); -lean_ctor_set(x_1133, 1, x_15); -return x_1133; -} -else -{ -lean_object* x_1134; lean_object* x_1135; uint8_t x_1136; -x_1134 = lean_array_get_size(x_971); -x_1135 = lean_unsigned_to_nat(4u); -x_1136 = lean_nat_dec_eq(x_1134, x_1135); -lean_dec(x_1134); -if (x_1136 == 0) -{ -lean_object* x_1137; lean_object* x_1138; lean_object* x_1139; -lean_dec(x_971); -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_3); -x_1137 = lean_unsigned_to_nat(0u); -x_1138 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1138, 0, x_2); -lean_ctor_set(x_1138, 1, x_1137); -x_1139 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1139, 0, x_1138); -lean_ctor_set(x_1139, 1, x_15); -return x_1139; -} -else -{ -lean_object* x_1140; lean_object* x_1141; -x_1140 = lean_unsigned_to_nat(0u); -x_1141 = lean_array_fget(x_971, x_1140); -switch (lean_obj_tag(x_1141)) { -case 4: -{ -lean_object* x_1142; -x_1142 = lean_ctor_get(x_1141, 0); -lean_inc(x_1142); -if (lean_obj_tag(x_1142) == 1) -{ -lean_object* x_1143; -x_1143 = lean_ctor_get(x_1142, 0); -lean_inc(x_1143); -if (lean_obj_tag(x_1143) == 0) -{ -lean_object* x_1144; lean_object* x_1145; lean_object* x_1146; uint8_t x_1147; -x_1144 = lean_ctor_get(x_1141, 1); -lean_inc(x_1144); -lean_dec(x_1141); -x_1145 = lean_ctor_get(x_1142, 1); -lean_inc(x_1145); -lean_dec(x_1142); -x_1146 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_1147 = lean_string_dec_eq(x_1145, x_1146); -if (x_1147 == 0) -{ -lean_object* x_1148; uint8_t x_1149; -x_1148 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_1149 = lean_string_dec_eq(x_1145, x_1148); -lean_dec(x_1145); -if (x_1149 == 0) -{ -lean_object* x_1150; lean_object* x_1151; -lean_dec(x_1144); -lean_dec(x_971); -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_3); -x_1150 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1150, 0, x_2); -lean_ctor_set(x_1150, 1, x_1140); -x_1151 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1151, 0, x_1150); -lean_ctor_set(x_1151, 1, x_15); -return x_1151; -} -else -{ -if (lean_obj_tag(x_1144) == 0) -{ -lean_object* x_1152; lean_object* x_1153; lean_object* x_1154; lean_object* x_1155; lean_object* x_1156; lean_object* x_1157; lean_object* x_1158; -x_1152 = lean_unsigned_to_nat(2u); -x_1153 = lean_array_fget(x_971, x_1152); -x_1154 = lean_unsigned_to_nat(3u); -x_1155 = lean_array_fget(x_971, x_1154); -lean_dec(x_971); -x_1156 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__48; -x_1157 = l_Lean_mkApp3(x_1156, x_1153, x_1155, x_3); -x_1158 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1157, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1158; -} -else -{ -lean_object* x_1159; lean_object* x_1160; lean_object* x_1161; -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1144)) { - lean_ctor_release(x_1144, 0); - lean_ctor_release(x_1144, 1); - x_1159 = x_1144; -} else { - lean_dec_ref(x_1144); - x_1159 = lean_box(0); -} -x_1160 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1160, 0, x_2); -lean_ctor_set(x_1160, 1, x_1140); -if (lean_is_scalar(x_1159)) { - x_1161 = lean_alloc_ctor(0, 2, 0); -} else { - x_1161 = x_1159; - lean_ctor_set_tag(x_1161, 0); -} -lean_ctor_set(x_1161, 0, x_1160); -lean_ctor_set(x_1161, 1, x_15); -return x_1161; -} -} -} -else -{ -lean_dec(x_1145); -if (lean_obj_tag(x_1144) == 0) -{ -lean_object* x_1162; lean_object* x_1163; lean_object* x_1164; lean_object* x_1165; lean_object* x_1166; lean_object* x_1167; lean_object* x_1168; -x_1162 = lean_unsigned_to_nat(2u); -x_1163 = lean_array_fget(x_971, x_1162); -x_1164 = lean_unsigned_to_nat(3u); -x_1165 = lean_array_fget(x_971, x_1164); -lean_dec(x_971); -x_1166 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__50; -x_1167 = l_Lean_mkApp3(x_1166, x_1163, x_1165, x_3); -x_1168 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1167, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1168; -} -else -{ -lean_object* x_1169; lean_object* x_1170; lean_object* x_1171; -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1144)) { - lean_ctor_release(x_1144, 0); - lean_ctor_release(x_1144, 1); - x_1169 = x_1144; -} else { - lean_dec_ref(x_1144); - x_1169 = lean_box(0); -} -x_1170 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1170, 0, x_2); -lean_ctor_set(x_1170, 1, x_1140); -if (lean_is_scalar(x_1169)) { - x_1171 = lean_alloc_ctor(0, 2, 0); -} else { - x_1171 = x_1169; - lean_ctor_set_tag(x_1171, 0); -} -lean_ctor_set(x_1171, 0, x_1170); -lean_ctor_set(x_1171, 1, x_15); -return x_1171; -} -} -} -else -{ -lean_object* x_1172; lean_object* x_1173; -lean_dec(x_1143); -lean_dec(x_1142); -lean_dec(x_1141); -lean_dec(x_971); -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_3); -x_1172 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1172, 0, x_2); -lean_ctor_set(x_1172, 1, x_1140); -x_1173 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1173, 0, x_1172); -lean_ctor_set(x_1173, 1, x_15); -return x_1173; -} -} -else -{ -lean_object* x_1174; lean_object* x_1175; -lean_dec(x_1142); -lean_dec(x_1141); -lean_dec(x_971); -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_3); -x_1174 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1174, 0, x_2); -lean_ctor_set(x_1174, 1, x_1140); -x_1175 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1175, 0, x_1174); -lean_ctor_set(x_1175, 1, x_15); -return x_1175; -} -} -case 5: -{ -lean_object* x_1176; -x_1176 = lean_ctor_get(x_1141, 0); -lean_inc(x_1176); -if (lean_obj_tag(x_1176) == 4) -{ -lean_object* x_1177; -x_1177 = lean_ctor_get(x_1176, 0); -lean_inc(x_1177); -if (lean_obj_tag(x_1177) == 1) -{ -lean_object* x_1178; -x_1178 = lean_ctor_get(x_1177, 0); -lean_inc(x_1178); -if (lean_obj_tag(x_1178) == 0) -{ -lean_object* x_1179; lean_object* x_1180; lean_object* x_1181; lean_object* x_1182; uint8_t x_1183; -x_1179 = lean_ctor_get(x_1141, 1); -lean_inc(x_1179); -lean_dec(x_1141); -x_1180 = lean_ctor_get(x_1176, 1); -lean_inc(x_1180); -lean_dec(x_1176); -x_1181 = lean_ctor_get(x_1177, 1); -lean_inc(x_1181); -lean_dec(x_1177); -x_1182 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_1183 = lean_string_dec_eq(x_1181, x_1182); -lean_dec(x_1181); -if (x_1183 == 0) -{ -lean_object* x_1184; lean_object* x_1185; -lean_dec(x_1180); -lean_dec(x_1179); -lean_dec(x_971); -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_3); -x_1184 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1184, 0, x_2); -lean_ctor_set(x_1184, 1, x_1140); -x_1185 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1185, 0, x_1184); -lean_ctor_set(x_1185, 1, x_15); -return x_1185; -} -else -{ -if (lean_obj_tag(x_1180) == 0) -{ -lean_object* x_1186; lean_object* x_1187; lean_object* x_1188; lean_object* x_1189; lean_object* x_1190; lean_object* x_1191; lean_object* x_1192; -x_1186 = lean_unsigned_to_nat(2u); -x_1187 = lean_array_fget(x_971, x_1186); -x_1188 = lean_unsigned_to_nat(3u); -x_1189 = lean_array_fget(x_971, x_1188); -lean_dec(x_971); -x_1190 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__53; -x_1191 = l_Lean_mkApp4(x_1190, x_1179, x_1187, x_1189, x_3); -x_1192 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1191, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1192; -} -else -{ -lean_object* x_1193; lean_object* x_1194; lean_object* x_1195; -lean_dec(x_1179); -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1180)) { - lean_ctor_release(x_1180, 0); - lean_ctor_release(x_1180, 1); - x_1193 = x_1180; -} else { - lean_dec_ref(x_1180); - x_1193 = lean_box(0); -} -x_1194 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1194, 0, x_2); -lean_ctor_set(x_1194, 1, x_1140); -if (lean_is_scalar(x_1193)) { - x_1195 = lean_alloc_ctor(0, 2, 0); -} else { - x_1195 = x_1193; - lean_ctor_set_tag(x_1195, 0); -} -lean_ctor_set(x_1195, 0, x_1194); -lean_ctor_set(x_1195, 1, x_15); -return x_1195; -} -} -} -else -{ -lean_object* x_1196; lean_object* x_1197; -lean_dec(x_1178); -lean_dec(x_1177); -lean_dec(x_1176); -lean_dec(x_1141); -lean_dec(x_971); -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_3); -x_1196 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1196, 0, x_2); -lean_ctor_set(x_1196, 1, x_1140); -x_1197 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1197, 0, x_1196); -lean_ctor_set(x_1197, 1, x_15); -return x_1197; -} -} -else -{ -lean_object* x_1198; lean_object* x_1199; -lean_dec(x_1177); -lean_dec(x_1176); -lean_dec(x_1141); -lean_dec(x_971); -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_3); -x_1198 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1198, 0, x_2); -lean_ctor_set(x_1198, 1, x_1140); -x_1199 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1199, 0, x_1198); -lean_ctor_set(x_1199, 1, x_15); -return x_1199; -} -} -else -{ -lean_object* x_1200; lean_object* x_1201; -lean_dec(x_1176); -lean_dec(x_1141); -lean_dec(x_971); -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_3); -x_1200 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1200, 0, x_2); -lean_ctor_set(x_1200, 1, x_1140); -x_1201 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1201, 0, x_1200); -lean_ctor_set(x_1201, 1, x_15); -return x_1201; -} -} -default: -{ -lean_object* x_1202; lean_object* x_1203; -lean_dec(x_1141); -lean_dec(x_971); -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_3); -x_1202 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1202, 0, x_2); -lean_ctor_set(x_1202, 1, x_1140); -x_1203 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1203, 0, x_1202); -lean_ctor_set(x_1203, 1, x_15); -return x_1203; -} -} -} -} -} -} -else -{ -lean_object* x_1204; uint8_t x_1205; -lean_dec(x_973); -x_1204 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__14; -x_1205 = lean_string_dec_eq(x_972, x_1204); -lean_dec(x_972); -if (x_1205 == 0) -{ -lean_object* x_1206; lean_object* x_1207; lean_object* x_1208; -lean_dec(x_971); -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_3); -x_1206 = lean_unsigned_to_nat(0u); -x_1207 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1207, 0, x_2); -lean_ctor_set(x_1207, 1, x_1206); -x_1208 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1208, 0, x_1207); -lean_ctor_set(x_1208, 1, x_15); -return x_1208; -} -else -{ -lean_object* x_1209; lean_object* x_1210; uint8_t x_1211; -x_1209 = lean_array_get_size(x_971); -x_1210 = lean_unsigned_to_nat(4u); -x_1211 = lean_nat_dec_eq(x_1209, x_1210); -lean_dec(x_1209); -if (x_1211 == 0) -{ -lean_object* x_1212; lean_object* x_1213; lean_object* x_1214; -lean_dec(x_971); -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_3); -x_1212 = lean_unsigned_to_nat(0u); -x_1213 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1213, 0, x_2); -lean_ctor_set(x_1213, 1, x_1212); -x_1214 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1214, 0, x_1213); -lean_ctor_set(x_1214, 1, x_15); -return x_1214; -} -else -{ -lean_object* x_1215; lean_object* x_1216; -x_1215 = lean_unsigned_to_nat(0u); -x_1216 = lean_array_fget(x_971, x_1215); -switch (lean_obj_tag(x_1216)) { -case 4: -{ -lean_object* x_1217; -x_1217 = lean_ctor_get(x_1216, 0); -lean_inc(x_1217); -if (lean_obj_tag(x_1217) == 1) -{ -lean_object* x_1218; -x_1218 = lean_ctor_get(x_1217, 0); -lean_inc(x_1218); -if (lean_obj_tag(x_1218) == 0) -{ -lean_object* x_1219; lean_object* x_1220; lean_object* x_1221; uint8_t x_1222; -x_1219 = lean_ctor_get(x_1216, 1); -lean_inc(x_1219); -lean_dec(x_1216); -x_1220 = lean_ctor_get(x_1217, 1); -lean_inc(x_1220); -lean_dec(x_1217); -x_1221 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_1222 = lean_string_dec_eq(x_1220, x_1221); -if (x_1222 == 0) -{ -lean_object* x_1223; uint8_t x_1224; -x_1223 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_1224 = lean_string_dec_eq(x_1220, x_1223); -lean_dec(x_1220); -if (x_1224 == 0) -{ -lean_object* x_1225; lean_object* x_1226; -lean_dec(x_1219); -lean_dec(x_971); -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_3); -x_1225 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1225, 0, x_2); -lean_ctor_set(x_1225, 1, x_1215); -x_1226 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1226, 0, x_1225); -lean_ctor_set(x_1226, 1, x_15); -return x_1226; -} -else -{ -if (lean_obj_tag(x_1219) == 0) -{ -lean_object* x_1227; lean_object* x_1228; lean_object* x_1229; lean_object* x_1230; lean_object* x_1231; lean_object* x_1232; lean_object* x_1233; -x_1227 = lean_unsigned_to_nat(2u); -x_1228 = lean_array_fget(x_971, x_1227); -x_1229 = lean_unsigned_to_nat(3u); -x_1230 = lean_array_fget(x_971, x_1229); -lean_dec(x_971); -x_1231 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__56; -x_1232 = l_Lean_mkApp3(x_1231, x_1228, x_1230, x_3); -x_1233 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1232, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1233; -} -else -{ -lean_object* x_1234; lean_object* x_1235; lean_object* x_1236; -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1219)) { - lean_ctor_release(x_1219, 0); - lean_ctor_release(x_1219, 1); - x_1234 = x_1219; -} else { - lean_dec_ref(x_1219); - x_1234 = lean_box(0); -} -x_1235 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1235, 0, x_2); -lean_ctor_set(x_1235, 1, x_1215); -if (lean_is_scalar(x_1234)) { - x_1236 = lean_alloc_ctor(0, 2, 0); -} else { - x_1236 = x_1234; - lean_ctor_set_tag(x_1236, 0); -} -lean_ctor_set(x_1236, 0, x_1235); -lean_ctor_set(x_1236, 1, x_15); -return x_1236; -} -} -} -else -{ -lean_dec(x_1220); -if (lean_obj_tag(x_1219) == 0) -{ -lean_object* x_1237; lean_object* x_1238; lean_object* x_1239; lean_object* x_1240; lean_object* x_1241; lean_object* x_1242; lean_object* x_1243; -x_1237 = lean_unsigned_to_nat(2u); -x_1238 = lean_array_fget(x_971, x_1237); -x_1239 = lean_unsigned_to_nat(3u); -x_1240 = lean_array_fget(x_971, x_1239); -lean_dec(x_971); -x_1241 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__59; -x_1242 = l_Lean_mkApp3(x_1241, x_1238, x_1240, x_3); -x_1243 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1242, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1243; -} -else -{ -lean_object* x_1244; lean_object* x_1245; lean_object* x_1246; -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1219)) { - lean_ctor_release(x_1219, 0); - lean_ctor_release(x_1219, 1); - x_1244 = x_1219; -} else { - lean_dec_ref(x_1219); - x_1244 = lean_box(0); -} -x_1245 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1245, 0, x_2); -lean_ctor_set(x_1245, 1, x_1215); -if (lean_is_scalar(x_1244)) { - x_1246 = lean_alloc_ctor(0, 2, 0); -} else { - x_1246 = x_1244; - lean_ctor_set_tag(x_1246, 0); -} -lean_ctor_set(x_1246, 0, x_1245); -lean_ctor_set(x_1246, 1, x_15); -return x_1246; -} -} -} -else -{ -lean_object* x_1247; lean_object* x_1248; -lean_dec(x_1218); -lean_dec(x_1217); -lean_dec(x_1216); -lean_dec(x_971); -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_3); -x_1247 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1247, 0, x_2); -lean_ctor_set(x_1247, 1, x_1215); -x_1248 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1248, 0, x_1247); -lean_ctor_set(x_1248, 1, x_15); -return x_1248; -} -} -else -{ -lean_object* x_1249; lean_object* x_1250; -lean_dec(x_1217); -lean_dec(x_1216); -lean_dec(x_971); -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_3); -x_1249 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1249, 0, x_2); -lean_ctor_set(x_1249, 1, x_1215); -x_1250 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1250, 0, x_1249); -lean_ctor_set(x_1250, 1, x_15); -return x_1250; -} -} -case 5: -{ -lean_object* x_1251; -x_1251 = lean_ctor_get(x_1216, 0); -lean_inc(x_1251); -if (lean_obj_tag(x_1251) == 4) -{ -lean_object* x_1252; -x_1252 = lean_ctor_get(x_1251, 0); -lean_inc(x_1252); -if (lean_obj_tag(x_1252) == 1) -{ -lean_object* x_1253; -x_1253 = lean_ctor_get(x_1252, 0); -lean_inc(x_1253); -if (lean_obj_tag(x_1253) == 0) -{ -lean_object* x_1254; lean_object* x_1255; lean_object* x_1256; lean_object* x_1257; uint8_t x_1258; -x_1254 = lean_ctor_get(x_1216, 1); -lean_inc(x_1254); -lean_dec(x_1216); -x_1255 = lean_ctor_get(x_1251, 1); -lean_inc(x_1255); -lean_dec(x_1251); -x_1256 = lean_ctor_get(x_1252, 1); -lean_inc(x_1256); -lean_dec(x_1252); -x_1257 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_1258 = lean_string_dec_eq(x_1256, x_1257); -lean_dec(x_1256); -if (x_1258 == 0) -{ -lean_object* x_1259; lean_object* x_1260; -lean_dec(x_1255); -lean_dec(x_1254); -lean_dec(x_971); -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_3); -x_1259 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1259, 0, x_2); -lean_ctor_set(x_1259, 1, x_1215); -x_1260 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1260, 0, x_1259); -lean_ctor_set(x_1260, 1, x_15); -return x_1260; -} -else -{ -if (lean_obj_tag(x_1255) == 0) -{ -lean_object* x_1261; lean_object* x_1262; lean_object* x_1263; lean_object* x_1264; lean_object* x_1265; lean_object* x_1266; lean_object* x_1267; -x_1261 = lean_unsigned_to_nat(2u); -x_1262 = lean_array_fget(x_971, x_1261); -x_1263 = lean_unsigned_to_nat(3u); -x_1264 = lean_array_fget(x_971, x_1263); -lean_dec(x_971); -x_1265 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__62; -x_1266 = l_Lean_mkApp4(x_1265, x_1254, x_1262, x_1264, x_3); -x_1267 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1266, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1267; -} -else -{ -lean_object* x_1268; lean_object* x_1269; lean_object* x_1270; -lean_dec(x_1254); -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1255)) { - lean_ctor_release(x_1255, 0); - lean_ctor_release(x_1255, 1); - x_1268 = x_1255; -} else { - lean_dec_ref(x_1255); - x_1268 = lean_box(0); -} -x_1269 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1269, 0, x_2); -lean_ctor_set(x_1269, 1, x_1215); -if (lean_is_scalar(x_1268)) { - x_1270 = lean_alloc_ctor(0, 2, 0); -} else { - x_1270 = x_1268; - lean_ctor_set_tag(x_1270, 0); -} -lean_ctor_set(x_1270, 0, x_1269); -lean_ctor_set(x_1270, 1, x_15); -return x_1270; -} -} -} -else -{ -lean_object* x_1271; lean_object* x_1272; -lean_dec(x_1253); -lean_dec(x_1252); -lean_dec(x_1251); -lean_dec(x_1216); -lean_dec(x_971); -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_3); -x_1271 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1271, 0, x_2); -lean_ctor_set(x_1271, 1, x_1215); -x_1272 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1272, 0, x_1271); -lean_ctor_set(x_1272, 1, x_15); -return x_1272; -} -} -else -{ -lean_object* x_1273; lean_object* x_1274; -lean_dec(x_1252); -lean_dec(x_1251); -lean_dec(x_1216); -lean_dec(x_971); -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_3); -x_1273 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1273, 0, x_2); -lean_ctor_set(x_1273, 1, x_1215); -x_1274 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1274, 0, x_1273); -lean_ctor_set(x_1274, 1, x_15); -return x_1274; -} -} -else -{ -lean_object* x_1275; lean_object* x_1276; -lean_dec(x_1251); -lean_dec(x_1216); -lean_dec(x_971); -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_3); -x_1275 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1275, 0, x_2); -lean_ctor_set(x_1275, 1, x_1215); -x_1276 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1276, 0, x_1275); -lean_ctor_set(x_1276, 1, x_15); -return x_1276; -} -} -default: -{ -lean_object* x_1277; lean_object* x_1278; -lean_dec(x_1216); -lean_dec(x_971); -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_3); -x_1277 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1277, 0, x_2); -lean_ctor_set(x_1277, 1, x_1215); -x_1278 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1278, 0, x_1277); -lean_ctor_set(x_1278, 1, x_15); -return x_1278; -} -} -} -} -} -} -else -{ -lean_object* x_1279; uint8_t x_1280; -lean_dec(x_973); -x_1279 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__22___closed__11; -x_1280 = lean_string_dec_eq(x_972, x_1279); -lean_dec(x_972); -if (x_1280 == 0) -{ -lean_object* x_1281; lean_object* x_1282; lean_object* x_1283; -lean_dec(x_971); -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_3); -x_1281 = lean_unsigned_to_nat(0u); -x_1282 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1282, 0, x_2); -lean_ctor_set(x_1282, 1, x_1281); -x_1283 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1283, 0, x_1282); -lean_ctor_set(x_1283, 1, x_15); -return x_1283; -} -else -{ -lean_object* x_1284; lean_object* x_1285; uint8_t x_1286; -x_1284 = lean_array_get_size(x_971); -x_1285 = lean_unsigned_to_nat(4u); -x_1286 = lean_nat_dec_eq(x_1284, x_1285); -lean_dec(x_1284); -if (x_1286 == 0) -{ -lean_object* x_1287; lean_object* x_1288; lean_object* x_1289; -lean_dec(x_971); -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_3); -x_1287 = lean_unsigned_to_nat(0u); -x_1288 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1288, 0, x_2); -lean_ctor_set(x_1288, 1, x_1287); -x_1289 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1289, 0, x_1288); -lean_ctor_set(x_1289, 1, x_15); -return x_1289; -} -else -{ -lean_object* x_1290; lean_object* x_1291; -x_1290 = lean_unsigned_to_nat(0u); -x_1291 = lean_array_fget(x_971, x_1290); -switch (lean_obj_tag(x_1291)) { -case 4: -{ -lean_object* x_1292; -x_1292 = lean_ctor_get(x_1291, 0); -lean_inc(x_1292); -if (lean_obj_tag(x_1292) == 1) -{ -lean_object* x_1293; -x_1293 = lean_ctor_get(x_1292, 0); -lean_inc(x_1293); -if (lean_obj_tag(x_1293) == 0) -{ -lean_object* x_1294; lean_object* x_1295; lean_object* x_1296; uint8_t x_1297; -x_1294 = lean_ctor_get(x_1291, 1); -lean_inc(x_1294); -lean_dec(x_1291); -x_1295 = lean_ctor_get(x_1292, 1); -lean_inc(x_1295); -lean_dec(x_1292); -x_1296 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__9; -x_1297 = lean_string_dec_eq(x_1295, x_1296); -if (x_1297 == 0) -{ -lean_object* x_1298; uint8_t x_1299; -x_1298 = l_Lean_Elab_Tactic_Omega_succ_x3f___closed__1; -x_1299 = lean_string_dec_eq(x_1295, x_1298); -lean_dec(x_1295); -if (x_1299 == 0) -{ -lean_object* x_1300; lean_object* x_1301; -lean_dec(x_1294); -lean_dec(x_971); -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_3); -x_1300 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1300, 0, x_2); -lean_ctor_set(x_1300, 1, x_1290); -x_1301 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1301, 0, x_1300); -lean_ctor_set(x_1301, 1, x_15); -return x_1301; -} -else -{ -if (lean_obj_tag(x_1294) == 0) -{ -lean_object* x_1302; lean_object* x_1303; lean_object* x_1304; lean_object* x_1305; lean_object* x_1306; lean_object* x_1307; lean_object* x_1308; -x_1302 = lean_unsigned_to_nat(2u); -x_1303 = lean_array_fget(x_971, x_1302); -x_1304 = lean_unsigned_to_nat(3u); -x_1305 = lean_array_fget(x_971, x_1304); -lean_dec(x_971); -x_1306 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__65; -x_1307 = l_Lean_mkApp3(x_1306, x_1303, x_1305, x_3); -x_1308 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1307, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1308; -} -else -{ -lean_object* x_1309; lean_object* x_1310; lean_object* x_1311; -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1294)) { - lean_ctor_release(x_1294, 0); - lean_ctor_release(x_1294, 1); - x_1309 = x_1294; -} else { - lean_dec_ref(x_1294); - x_1309 = lean_box(0); -} -x_1310 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1310, 0, x_2); -lean_ctor_set(x_1310, 1, x_1290); -if (lean_is_scalar(x_1309)) { - x_1311 = lean_alloc_ctor(0, 2, 0); -} else { - x_1311 = x_1309; - lean_ctor_set_tag(x_1311, 0); -} -lean_ctor_set(x_1311, 0, x_1310); -lean_ctor_set(x_1311, 1, x_15); -return x_1311; -} -} -} -else -{ -lean_dec(x_1295); -if (lean_obj_tag(x_1294) == 0) -{ -lean_object* x_1312; lean_object* x_1313; lean_object* x_1314; lean_object* x_1315; lean_object* x_1316; -x_1312 = lean_unsigned_to_nat(2u); -x_1313 = lean_array_fget(x_971, x_1312); -x_1314 = lean_unsigned_to_nat(3u); -x_1315 = lean_array_fget(x_971, x_1314); -lean_dec(x_971); -lean_inc(x_1313); -x_1316 = l_Lean_Expr_int_x3f(x_1313); -if (lean_obj_tag(x_1316) == 0) -{ -lean_object* x_1317; lean_object* x_1318; lean_object* x_1319; -x_1317 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__68; -x_1318 = l_Lean_mkApp3(x_1317, x_1315, x_1313, x_3); -x_1319 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1318, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1319; -} -else -{ -lean_object* x_1320; lean_object* x_1321; uint8_t x_1322; -x_1320 = lean_ctor_get(x_1316, 0); -lean_inc(x_1320); -lean_dec(x_1316); -x_1321 = l_Lean_Elab_Tactic_Omega_mkEvalRflProof___closed__8; -x_1322 = lean_int_dec_eq(x_1320, x_1321); -lean_dec(x_1320); -if (x_1322 == 0) -{ -lean_object* x_1323; lean_object* x_1324; lean_object* x_1325; -x_1323 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__68; -x_1324 = l_Lean_mkApp3(x_1323, x_1315, x_1313, x_3); -x_1325 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1324, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1325; -} -else -{ -lean_object* x_1326; -lean_dec(x_1313); -x_1326 = l_Lean_Elab_Tactic_Omega_MetaProblem_addIntInequality(x_2, x_3, x_1315, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_1326) == 0) -{ -lean_object* x_1327; lean_object* x_1328; lean_object* x_1329; lean_object* x_1330; lean_object* x_1331; lean_object* x_1332; -x_1327 = lean_ctor_get(x_1326, 0); -lean_inc(x_1327); -x_1328 = lean_ctor_get(x_1326, 1); -lean_inc(x_1328); -if (lean_is_exclusive(x_1326)) { - lean_ctor_release(x_1326, 0); - lean_ctor_release(x_1326, 1); - x_1329 = x_1326; -} else { - lean_dec_ref(x_1326); - x_1329 = lean_box(0); -} -x_1330 = lean_unsigned_to_nat(1u); -x_1331 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1331, 0, x_1327); -lean_ctor_set(x_1331, 1, x_1330); -if (lean_is_scalar(x_1329)) { - x_1332 = lean_alloc_ctor(0, 2, 0); -} else { - x_1332 = x_1329; -} -lean_ctor_set(x_1332, 0, x_1331); -lean_ctor_set(x_1332, 1, x_1328); -return x_1332; -} -else -{ -lean_object* x_1333; lean_object* x_1334; lean_object* x_1335; lean_object* x_1336; -x_1333 = lean_ctor_get(x_1326, 0); -lean_inc(x_1333); -x_1334 = lean_ctor_get(x_1326, 1); -lean_inc(x_1334); -if (lean_is_exclusive(x_1326)) { - lean_ctor_release(x_1326, 0); - lean_ctor_release(x_1326, 1); - x_1335 = x_1326; -} else { - lean_dec_ref(x_1326); - x_1335 = lean_box(0); -} -if (lean_is_scalar(x_1335)) { - x_1336 = lean_alloc_ctor(1, 2, 0); -} else { - x_1336 = x_1335; -} -lean_ctor_set(x_1336, 0, x_1333); -lean_ctor_set(x_1336, 1, x_1334); -return x_1336; -} -} -} -} -else -{ -lean_object* x_1337; lean_object* x_1338; lean_object* x_1339; -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1294)) { - lean_ctor_release(x_1294, 0); - lean_ctor_release(x_1294, 1); - x_1337 = x_1294; -} else { - lean_dec_ref(x_1294); - x_1337 = lean_box(0); -} -x_1338 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1338, 0, x_2); -lean_ctor_set(x_1338, 1, x_1290); -if (lean_is_scalar(x_1337)) { - x_1339 = lean_alloc_ctor(0, 2, 0); -} else { - x_1339 = x_1337; - lean_ctor_set_tag(x_1339, 0); -} -lean_ctor_set(x_1339, 0, x_1338); -lean_ctor_set(x_1339, 1, x_15); -return x_1339; -} -} -} -else -{ -lean_object* x_1340; lean_object* x_1341; -lean_dec(x_1293); -lean_dec(x_1292); -lean_dec(x_1291); -lean_dec(x_971); -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_3); -x_1340 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1340, 0, x_2); -lean_ctor_set(x_1340, 1, x_1290); -x_1341 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1341, 0, x_1340); -lean_ctor_set(x_1341, 1, x_15); -return x_1341; -} -} -else -{ -lean_object* x_1342; lean_object* x_1343; -lean_dec(x_1292); -lean_dec(x_1291); -lean_dec(x_971); -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_3); -x_1342 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1342, 0, x_2); -lean_ctor_set(x_1342, 1, x_1290); -x_1343 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1343, 0, x_1342); -lean_ctor_set(x_1343, 1, x_15); -return x_1343; -} -} -case 5: -{ -lean_object* x_1344; -x_1344 = lean_ctor_get(x_1291, 0); -lean_inc(x_1344); -if (lean_obj_tag(x_1344) == 4) -{ -lean_object* x_1345; -x_1345 = lean_ctor_get(x_1344, 0); -lean_inc(x_1345); -if (lean_obj_tag(x_1345) == 1) -{ -lean_object* x_1346; -x_1346 = lean_ctor_get(x_1345, 0); -lean_inc(x_1346); -if (lean_obj_tag(x_1346) == 0) -{ -lean_object* x_1347; lean_object* x_1348; lean_object* x_1349; lean_object* x_1350; uint8_t x_1351; -x_1347 = lean_ctor_get(x_1291, 1); -lean_inc(x_1347); -lean_dec(x_1291); -x_1348 = lean_ctor_get(x_1344, 1); -lean_inc(x_1348); -lean_dec(x_1344); -x_1349 = lean_ctor_get(x_1345, 1); -lean_inc(x_1349); -lean_dec(x_1345); -x_1350 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_handleNatCast___closed__4; -x_1351 = lean_string_dec_eq(x_1349, x_1350); -lean_dec(x_1349); -if (x_1351 == 0) -{ -lean_object* x_1352; lean_object* x_1353; -lean_dec(x_1348); -lean_dec(x_1347); -lean_dec(x_971); -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_3); -x_1352 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1352, 0, x_2); -lean_ctor_set(x_1352, 1, x_1290); -x_1353 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1353, 0, x_1352); -lean_ctor_set(x_1353, 1, x_15); -return x_1353; -} -else -{ -if (lean_obj_tag(x_1348) == 0) -{ -lean_object* x_1354; lean_object* x_1355; lean_object* x_1356; lean_object* x_1357; lean_object* x_1358; lean_object* x_1359; lean_object* x_1360; -x_1354 = lean_unsigned_to_nat(2u); -x_1355 = lean_array_fget(x_971, x_1354); -x_1356 = lean_unsigned_to_nat(3u); -x_1357 = lean_array_fget(x_971, x_1356); -lean_dec(x_971); -x_1358 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__71; -x_1359 = l_Lean_mkApp4(x_1358, x_1347, x_1355, x_1357, x_3); -x_1360 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1359, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -return x_1360; -} -else -{ -lean_object* x_1361; lean_object* x_1362; lean_object* x_1363; -lean_dec(x_1347); -lean_dec(x_971); -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_3); -if (lean_is_exclusive(x_1348)) { - lean_ctor_release(x_1348, 0); - lean_ctor_release(x_1348, 1); - x_1361 = x_1348; -} else { - lean_dec_ref(x_1348); - x_1361 = lean_box(0); -} -x_1362 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1362, 0, x_2); -lean_ctor_set(x_1362, 1, x_1290); -if (lean_is_scalar(x_1361)) { - x_1363 = lean_alloc_ctor(0, 2, 0); -} else { - x_1363 = x_1361; - lean_ctor_set_tag(x_1363, 0); -} -lean_ctor_set(x_1363, 0, x_1362); -lean_ctor_set(x_1363, 1, x_15); -return x_1363; -} -} -} -else -{ -lean_object* x_1364; lean_object* x_1365; -lean_dec(x_1346); -lean_dec(x_1345); -lean_dec(x_1344); -lean_dec(x_1291); -lean_dec(x_971); -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_3); -x_1364 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1364, 0, x_2); -lean_ctor_set(x_1364, 1, x_1290); -x_1365 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1365, 0, x_1364); -lean_ctor_set(x_1365, 1, x_15); -return x_1365; -} -} -else -{ -lean_object* x_1366; lean_object* x_1367; -lean_dec(x_1345); -lean_dec(x_1344); -lean_dec(x_1291); -lean_dec(x_971); -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_3); -x_1366 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1366, 0, x_2); -lean_ctor_set(x_1366, 1, x_1290); -x_1367 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1367, 0, x_1366); -lean_ctor_set(x_1367, 1, x_15); -return x_1367; -} -} -else -{ -lean_object* x_1368; lean_object* x_1369; -lean_dec(x_1344); -lean_dec(x_1291); -lean_dec(x_971); -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_3); -x_1368 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1368, 0, x_2); -lean_ctor_set(x_1368, 1, x_1290); -x_1369 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1369, 0, x_1368); -lean_ctor_set(x_1369, 1, x_15); -return x_1369; -} -} -default: -{ -lean_object* x_1370; lean_object* x_1371; -lean_dec(x_1291); -lean_dec(x_971); -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_3); -x_1370 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1370, 0, x_2); -lean_ctor_set(x_1370, 1, x_1290); -x_1371 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1371, 0, x_1370); -lean_ctor_set(x_1371, 1, x_15); -return x_1371; -} -} -} -} -} -} -} -else -{ -uint8_t x_1372; -lean_dec(x_600); -lean_dec(x_18); -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_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_3); -x_1372 = !lean_is_exclusive(x_16); -if (x_1372 == 0) -{ -lean_object* x_1373; lean_object* x_1374; lean_object* x_1375; lean_object* x_1376; -x_1373 = lean_ctor_get(x_16, 1); -lean_dec(x_1373); -x_1374 = lean_ctor_get(x_16, 0); -lean_dec(x_1374); -x_1375 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_1375); -lean_ctor_set(x_16, 0, x_2); -x_1376 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1376, 0, x_16); -lean_ctor_set(x_1376, 1, x_15); -return x_1376; -} -else -{ -lean_object* x_1377; lean_object* x_1378; lean_object* x_1379; -lean_dec(x_16); -x_1377 = lean_unsigned_to_nat(0u); -x_1378 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1378, 0, x_2); -lean_ctor_set(x_1378, 1, x_1377); -x_1379 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1379, 0, x_1378); -lean_ctor_set(x_1379, 1, x_15); -return x_1379; -} -} -} -default: -{ -uint8_t x_1380; -lean_dec(x_18); -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_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_4); -lean_dec(x_3); -x_1380 = !lean_is_exclusive(x_16); -if (x_1380 == 0) -{ -lean_object* x_1381; lean_object* x_1382; lean_object* x_1383; lean_object* x_1384; -x_1381 = lean_ctor_get(x_16, 1); -lean_dec(x_1381); -x_1382 = lean_ctor_get(x_16, 0); -lean_dec(x_1382); -x_1383 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_1383); -lean_ctor_set(x_16, 0, x_2); -x_1384 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1384, 0, x_16); -lean_ctor_set(x_1384, 1, x_15); -return x_1384; -} -else -{ -lean_object* x_1385; lean_object* x_1386; lean_object* x_1387; -lean_dec(x_16); -x_1385 = lean_unsigned_to_nat(0u); -x_1386 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1386, 0, x_2); -lean_ctor_set(x_1386, 1, x_1385); -x_1387 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1387, 0, x_1386); -lean_ctor_set(x_1387, 1, x_15); -return x_1387; -} -} -} -} -else -{ -uint8_t x_1388; -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_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_4); -lean_dec(x_3); -x_1388 = !lean_is_exclusive(x_16); -if (x_1388 == 0) -{ -lean_object* x_1389; lean_object* x_1390; lean_object* x_1391; lean_object* x_1392; -x_1389 = lean_ctor_get(x_16, 1); -lean_dec(x_1389); -x_1390 = lean_ctor_get(x_16, 0); -lean_dec(x_1390); -x_1391 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_16, 1, x_1391); -lean_ctor_set(x_16, 0, x_2); -x_1392 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1392, 0, x_16); -lean_ctor_set(x_1392, 1, x_15); -return x_1392; -} -else -{ -lean_object* x_1393; lean_object* x_1394; lean_object* x_1395; -lean_dec(x_16); -x_1393 = lean_unsigned_to_nat(0u); -x_1394 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1394, 0, x_2); -lean_ctor_set(x_1394, 1, x_1393); -x_1395 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1395, 0, x_1394); -lean_ctor_set(x_1395, 1, x_15); -return x_1395; -} -} -} -case 7: -{ -lean_object* x_1396; lean_object* x_1397; lean_object* x_1398; -lean_dec(x_4); -x_1396 = lean_ctor_get(x_1, 1); -lean_inc(x_1396); -x_1397 = lean_ctor_get(x_1, 2); -lean_inc(x_1397); -lean_dec(x_1); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_1396); -x_1398 = l_Lean_Meta_isProp(x_1396, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_1398) == 0) -{ -lean_object* x_1399; lean_object* x_1400; lean_object* x_1401; -x_1399 = lean_ctor_get(x_1398, 0); -lean_inc(x_1399); -x_1400 = lean_ctor_get(x_1398, 1); -lean_inc(x_1400); -lean_dec(x_1398); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_1397); -x_1401 = l_Lean_Meta_isProp(x_1397, x_11, x_12, x_13, x_14, x_1400); -if (lean_obj_tag(x_1401) == 0) -{ -uint8_t x_1402; -x_1402 = lean_unbox(x_1399); -lean_dec(x_1399); -if (x_1402 == 0) -{ -uint8_t x_1403; -lean_dec(x_1397); -lean_dec(x_1396); -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_3); -x_1403 = !lean_is_exclusive(x_1401); -if (x_1403 == 0) -{ -lean_object* x_1404; lean_object* x_1405; lean_object* x_1406; -x_1404 = lean_ctor_get(x_1401, 0); -lean_dec(x_1404); -x_1405 = lean_unsigned_to_nat(0u); -x_1406 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1406, 0, x_2); -lean_ctor_set(x_1406, 1, x_1405); -lean_ctor_set(x_1401, 0, x_1406); -return x_1401; -} -else -{ -lean_object* x_1407; lean_object* x_1408; lean_object* x_1409; lean_object* x_1410; -x_1407 = lean_ctor_get(x_1401, 1); -lean_inc(x_1407); -lean_dec(x_1401); -x_1408 = lean_unsigned_to_nat(0u); -x_1409 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1409, 0, x_2); -lean_ctor_set(x_1409, 1, x_1408); -x_1410 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1410, 0, x_1409); -lean_ctor_set(x_1410, 1, x_1407); -return x_1410; -} -} -else -{ -lean_object* x_1411; uint8_t x_1412; -x_1411 = lean_ctor_get(x_1401, 0); -lean_inc(x_1411); -x_1412 = lean_unbox(x_1411); -lean_dec(x_1411); -if (x_1412 == 0) -{ -uint8_t x_1413; -lean_dec(x_1397); -lean_dec(x_1396); -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_3); -x_1413 = !lean_is_exclusive(x_1401); -if (x_1413 == 0) -{ -lean_object* x_1414; lean_object* x_1415; lean_object* x_1416; -x_1414 = lean_ctor_get(x_1401, 0); -lean_dec(x_1414); -x_1415 = lean_unsigned_to_nat(0u); -x_1416 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1416, 0, x_2); -lean_ctor_set(x_1416, 1, x_1415); -lean_ctor_set(x_1401, 0, x_1416); -return x_1401; -} -else -{ -lean_object* x_1417; lean_object* x_1418; lean_object* x_1419; lean_object* x_1420; -x_1417 = lean_ctor_get(x_1401, 1); -lean_inc(x_1417); -lean_dec(x_1401); -x_1418 = lean_unsigned_to_nat(0u); -x_1419 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1419, 0, x_2); -lean_ctor_set(x_1419, 1, x_1418); -x_1420 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1420, 0, x_1419); -lean_ctor_set(x_1420, 1, x_1417); -return x_1420; -} -} -else -{ -lean_object* x_1421; lean_object* x_1422; lean_object* x_1423; lean_object* x_1424; lean_object* x_1425; lean_object* x_1426; -x_1421 = lean_ctor_get(x_1401, 1); -lean_inc(x_1421); -lean_dec(x_1401); -x_1422 = l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___lambda__1___closed__8; -lean_inc(x_1396); -x_1423 = l_Lean_Expr_app___override(x_1422, x_1396); -x_1424 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__74; -x_1425 = l_Lean_mkApp4(x_1424, x_1396, x_1397, x_1423, x_3); -x_1426 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(x_2, x_1425, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1421); -return x_1426; -} -} -} -else -{ -uint8_t x_1427; -lean_dec(x_1399); -lean_dec(x_1397); -lean_dec(x_1396); -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_3); -lean_dec(x_2); -x_1427 = !lean_is_exclusive(x_1401); -if (x_1427 == 0) -{ -return x_1401; -} -else -{ -lean_object* x_1428; lean_object* x_1429; lean_object* x_1430; -x_1428 = lean_ctor_get(x_1401, 0); -x_1429 = lean_ctor_get(x_1401, 1); -lean_inc(x_1429); -lean_inc(x_1428); -lean_dec(x_1401); -x_1430 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_1430, 0, x_1428); -lean_ctor_set(x_1430, 1, x_1429); -return x_1430; -} -} -} -else -{ -uint8_t x_1431; -lean_dec(x_1397); -lean_dec(x_1396); -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_3); -lean_dec(x_2); -x_1431 = !lean_is_exclusive(x_1398); -if (x_1431 == 0) -{ -return x_1398; -} -else -{ -lean_object* x_1432; lean_object* x_1433; lean_object* x_1434; -x_1432 = lean_ctor_get(x_1398, 0); -x_1433 = lean_ctor_get(x_1398, 1); -lean_inc(x_1433); -lean_inc(x_1432); -lean_dec(x_1398); -x_1434 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_1434, 0, x_1432); -lean_ctor_set(x_1434, 1, x_1433); -return x_1434; -} -} -} -default: -{ -lean_object* x_1435; lean_object* x_1436; lean_object* x_1437; -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_4); -lean_dec(x_3); -lean_dec(x_1); -x_1435 = lean_unsigned_to_nat(0u); -x_1436 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1436, 0, x_2); -lean_ctor_set(x_1436, 1, x_1435); -x_1437 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_1437, 0, x_1436); -lean_ctor_set(x_1437, 1, x_15); -return x_1437; -} -} -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("adding fact: ", 13); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact(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) { -_start: -{ -lean_object* x_13; uint8_t x_14; -x_13 = lean_ctor_get(x_1, 0); -lean_inc(x_13); -x_14 = lean_ctor_get_uint8(x_13, sizeof(void*)*7); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; -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_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_15 = lean_unsigned_to_nat(0u); -x_16 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_16, 0, x_1); -lean_ctor_set(x_16, 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_12); -return x_17; -} -else -{ -lean_object* x_18; -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_2); -x_18 = lean_infer_type(x_2, 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; -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_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -x_21 = l_Lean_Meta_whnfR(x_19, 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; 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_instantiateMVars___at_Lean_Elab_Tactic_Omega_MetaProblem_addFact___spec__1(x_22, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, 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; lean_object* x_30; uint8_t x_31; -x_26 = lean_ctor_get(x_24, 0); -x_27 = lean_ctor_get(x_24, 1); -x_28 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__2; -x_29 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_Omega_lookup___spec__3(x_28, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_27); -x_30 = lean_ctor_get(x_29, 0); -lean_inc(x_30); -x_31 = lean_unbox(x_30); -lean_dec(x_30); -if (x_31 == 0) +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +_start: { -lean_object* x_32; lean_object* x_33; lean_object* x_34; -lean_free_object(x_24); -x_32 = lean_ctor_get(x_29, 1); -lean_inc(x_32); -lean_dec(x_29); -x_33 = lean_box(0); -x_34 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1(x_26, x_1, x_2, x_13, x_33, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_32); -return x_34; +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__26(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } -else -{ -uint8_t x_35; -x_35 = !lean_is_exclusive(x_29); -if (x_35 == 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; -x_36 = lean_ctor_get(x_29, 1); -x_37 = lean_ctor_get(x_29, 0); -lean_dec(x_37); -lean_inc(x_26); -x_38 = l_Lean_MessageData_ofExpr(x_26); -x_39 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__2; -lean_ctor_set_tag(x_29, 7); -lean_ctor_set(x_29, 1, x_38); -lean_ctor_set(x_29, 0, x_39); -x_40 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__9; -lean_ctor_set_tag(x_24, 7); -lean_ctor_set(x_24, 1, x_40); -lean_ctor_set(x_24, 0, x_29); -x_41 = l_Lean_addTrace___at_Lean_Elab_Tactic_Omega_lookup___spec__14(x_28, x_24, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, 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_Omega_MetaProblem_addFact___lambda__1(x_26, x_1, x_2, x_13, x_42, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_43); -return x_44; } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_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_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_29, 1); -lean_inc(x_45); -lean_dec(x_29); -lean_inc(x_26); -x_46 = l_Lean_MessageData_ofExpr(x_26); -x_47 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__2; -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_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__9; -lean_ctor_set_tag(x_24, 7); -lean_ctor_set(x_24, 1, x_49); -lean_ctor_set(x_24, 0, x_48); -x_50 = l_Lean_addTrace___at_Lean_Elab_Tactic_Omega_lookup___spec__14(x_28, x_24, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, 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); -x_53 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1(x_26, x_1, x_2, x_13, x_51, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_52); -return x_53; -} -} +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } -else -{ -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_24, 0); -x_55 = lean_ctor_get(x_24, 1); -lean_inc(x_55); -lean_inc(x_54); -lean_dec(x_24); -x_56 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__2; -x_57 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_Omega_lookup___spec__3(x_56, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_55); -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; -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_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1(x_54, x_1, x_2, x_13, x_61, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_60); -return x_62; } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__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_object* x_9, 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_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_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_54); -x_65 = l_Lean_MessageData_ofExpr(x_54); -x_66 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__2; -if (lean_is_scalar(x_64)) { - x_67 = lean_alloc_ctor(7, 2, 0); -} else { - x_67 = x_64; - 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 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl_rewrite___closed__9; -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_Tactic_Omega_lookup___spec__14(x_56, x_69, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, 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); -x_73 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1(x_54, x_1, x_2, x_13, x_71, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_72); -return x_73; -} +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__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, lean_object* x_9, 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_74; -lean_dec(x_13); -lean_dec(x_11); -lean_dec(x_10); +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); 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_74 = !lean_is_exclusive(x_21); -if (x_74 == 0) -{ -return x_21; +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } -else -{ -lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_75 = lean_ctor_get(x_21, 0); -x_76 = lean_ctor_get(x_21, 1); -lean_inc(x_76); -lean_inc(x_75); -lean_dec(x_21); -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; } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__30___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, 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; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__30(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, 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_78; -lean_dec(x_13); -lean_dec(x_11); -lean_dec(x_10); +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); 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_78 = !lean_is_exclusive(x_18); -if (x_78 == 0) -{ -return x_18; +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } -else -{ -lean_object* x_79; lean_object* x_80; lean_object* x_81; -x_79 = lean_ctor_get(x_18, 0); -x_80 = lean_ctor_get(x_18, 1); -lean_inc(x_80); -lean_inc(x_79); -lean_dec(x_18); -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_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, 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; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, 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; lean_object* x_17; +x_16 = lean_unbox(x_9); +lean_dec(x_9); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -LEAN_EXPORT lean_object* l_Lean_instantiateMVars___at_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__34___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, 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_12; lean_object* x_13; -x_12 = lean_unbox(x_5); -lean_dec(x_5); -x_13 = l_Lean_instantiateMVars___at_Lean_Elab_Tactic_Omega_MetaProblem_addFact___spec__1(x_1, x_2, x_3, x_4, x_12, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); +uint8_t x_16; lean_object* x_17; +x_16 = lean_unbox(x_9); 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); -return x_13; +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__34(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +return x_17; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___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_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, 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; lean_object* x_17; x_16 = lean_unbox(x_9); lean_dec(x_9); -x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); +x_17 = l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16, x_10, x_11, x_12, x_13, x_14, x_15); return x_17; } } @@ -29777,7 +24023,7 @@ lean_ctor_set(x_24, 1, x_23); x_25 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_25, 0, x_24); lean_ctor_set_uint8(x_25, sizeof(void*)*1, x_16); -x_26 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5; +x_26 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; lean_inc(x_25); x_27 = lean_array_push(x_26, x_25); x_28 = lean_array_push(x_27, x_25); @@ -30156,7 +24402,7 @@ lean_ctor_set(x_109, 1, x_108); x_110 = lean_alloc_ctor(0, 1, 1); lean_ctor_set(x_110, 0, x_109); lean_ctor_set_uint8(x_110, sizeof(void*)*1, x_16); -x_111 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5; +x_111 = l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5; lean_inc(x_110); x_112 = lean_array_push(x_111, x_110); x_113 = lean_array_push(x_112, x_110); @@ -38514,7 +32760,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(682u); +x_1 = lean_unsigned_to_nat(688u); x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -38526,7 +32772,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(686u); +x_1 = lean_unsigned_to_nat(692u); x_2 = lean_unsigned_to_nat(31u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -38554,7 +32800,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(682u); +x_1 = lean_unsigned_to_nat(688u); x_2 = lean_unsigned_to_nat(4u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -38566,7 +32812,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(682u); +x_1 = lean_unsigned_to_nat(688u); x_2 = lean_unsigned_to_nat(13u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -38612,7 +32858,7 @@ x_4 = l_Lean_addBuiltinDeclarationRanges(x_2, x_3, x_1); return x_4; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__1() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__1() { _start: { lean_object* x_1; @@ -38620,17 +32866,17 @@ x_1 = lean_mk_string_from_bytes("bv_toNat", 8); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__2() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____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_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__1; +x_2 = l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__3() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__3() { _start: { lean_object* x_1; @@ -38638,7 +32884,7 @@ x_1 = lean_mk_string_from_bytes("bvOmegaSimpExtension", 20); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__4() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____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; @@ -38646,12 +32892,12 @@ x_1 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend x_2 = l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega__1___closed__1; x_3 = l_Lean_Elab_Tactic_Omega_evalOmega___closed__2; x_4 = l_Lean_Elab_Tactic_Omega_evalUnsafe____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_6____closed__3; -x_5 = l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__3; +x_5 = l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__3; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__5() { +static lean_object* _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__5() { _start: { lean_object* x_1; @@ -38659,13 +32905,13 @@ x_1 = lean_mk_string_from_bytes("simp lemmas converting `BitVec` goals to `Nat` return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391_(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_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__2; -x_3 = l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__5; -x_4 = l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__4; +x_2 = l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__2; +x_3 = l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__5; +x_4 = l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__4; x_5 = l_Lean_Meta_registerSimpAttr(x_2, x_3, x_4, x_1); return x_5; } @@ -38889,32 +33135,6 @@ l_Lean_Elab_Tactic_Omega_asLinearCombo___closed__2 = _init_l_Lean_Elab_Tactic_Om lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearCombo___closed__2); l_Lean_Elab_Tactic_Omega_asLinearCombo___closed__3 = _init_l_Lean_Elab_Tactic_Omega_asLinearCombo___closed__3(); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearCombo___closed__3); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__1 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__1); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__2 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__2); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__3 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__3(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__3); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__4 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__4(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__4); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__3___closed__5); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__1 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__1(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__1); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__2 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__2(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__2); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__3 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__3(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__3); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__4 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__4(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__4); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__5 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__5(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__5); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__6 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__6(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__6); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__7 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__7(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__7); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__8 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__8(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__4___closed__8); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__1 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__1); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__2 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__2(); @@ -38925,8 +33145,6 @@ l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__4 = _init_l_Lea lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__4); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5(); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__5); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__6 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__6(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__5___closed__6); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__1 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__1); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__2 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__2(); @@ -38937,6 +33155,12 @@ l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__4 = _init_l_Lea lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__4); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__5 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__5(); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__5); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__6 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__6(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__6); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__7 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__7(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__7); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__8 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__8(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__6___closed__8); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__1 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__1); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__2 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__2(); @@ -38947,6 +33171,8 @@ l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__4 = _init_l_Lea lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__4); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__5 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__5(); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__5); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__6 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__6(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__7___closed__6); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__1 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__1); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__2 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__2(); @@ -38957,90 +33183,110 @@ l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__4 = _init_l_Lea lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__4); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__5 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__5(); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__5); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__6 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__6(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__6); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__7 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__7(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__7); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__8); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__9 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__9(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__9); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__10 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__10(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__10); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__11 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__11(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__11); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__12 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__12(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__12); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__13 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__13(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__13); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__14 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__14(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__14); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__15 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__15(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__15); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__16 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__16(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__16); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__17 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__17(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__17); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__18 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__18(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__18); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__19 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__19(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__19); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__20 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__20(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__20); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__21 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__21(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__21); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__22 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__22(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__22); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__23 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__23(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__23); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__24 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__24(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__24); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__25 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__25(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__25); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__26 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__26(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__26); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__27 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__27(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__27); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__28 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__28(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__28); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__29 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__29(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__29); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__30 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__30(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__30); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__31 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__31(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__31); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__32 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__32(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__32); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__33 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__33(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__33); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__34 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__34(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__34); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__35 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__35(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__35); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__36 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__36(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__36); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__37 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__37(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__37); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__38 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__38(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__38); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__39 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__39(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__39); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__40 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__40(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__40); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__41 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__41(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__41); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__42 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__42(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__42); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__43 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__43(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__43); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__44 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__44(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__44); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__45 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__45(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__45); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__46); -l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__47 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__47(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__8___closed__47); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__1 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__1); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__2 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__2); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__3 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__3); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__4 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__4(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__4); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__5 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__5(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__9___closed__5); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__1 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__1); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__2 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__2); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__3 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__3); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__4 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__4(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__4); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__5 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__5(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__5); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__6 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__6(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__6); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__7 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__7(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__7); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__8 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__8(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__8); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__9 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__9(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__9); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__10 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__10(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__10); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__11 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__11(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__11); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__12 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__12(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__12); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__13 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__13(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__13); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__14 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__14(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__14); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__15 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__15(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__15); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__16 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__16(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__16); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__17 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__17(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__17); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__18 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__18(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__18); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__19 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__19(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__19); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__20 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__20(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__20); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__21 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__21(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__21); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__22 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__22(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__22); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__23 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__23(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__23); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__24 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__24(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__24); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__25 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__25(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__25); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__26 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__26(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__26); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__27 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__27(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__27); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__28 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__28(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__28); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__29 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__29(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__29); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__30 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__30(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__30); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__31 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__31(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__31); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__32 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__32(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__32); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__33 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__33(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__33); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__34 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__34(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__34); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__35 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__35(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__35); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__36 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__36(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__36); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__37 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__37(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__37); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__38 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__38(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__38); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__39 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__39(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__39); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__40 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__40(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__40); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__41 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__41(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__41); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__42 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__42(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__42); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__43 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__43(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__43); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__44 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__44(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__44); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__45 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__45(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__45); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__46); +l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__47 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__47(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___lambda__10___closed__47); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___closed__1 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_asLinearComboImpl___closed__1); l_Lean_Elab_Tactic_Omega_asLinearComboImpl___closed__2 = _init_l_Lean_Elab_Tactic_Omega_asLinearComboImpl___closed__2(); @@ -39345,154 +33591,164 @@ l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___closed__1 = _init_l_Lean_Elab_Tac lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___closed__1); l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___closed__2(); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_pushNot___closed__2); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__1(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__1); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__2(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__2); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__3(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__3); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__4 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__4(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__4); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__5 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__5(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__5); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__6 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__6(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__6); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__7 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__7(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__7); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__8 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__8(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__8); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__9 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__9(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__9); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__10 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__10(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__10); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__11 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__11(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__11); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__12 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__12(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__12); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__13 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__13(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__13); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__14 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__14(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__14); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__15 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__15(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__15); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__16 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__16(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__16); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__17 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__17(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__17); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__18 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__18(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__18); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__19 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__19(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__19); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__20 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__20(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__20); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__21 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__21(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__21); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__22 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__22(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__22); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__23 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__23(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__23); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__24 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__24(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__24); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__25 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__25(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__25); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__26 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__26(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__26); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__27 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__27(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__27); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__28 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__28(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__28); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__29 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__29(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__29); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__30 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__30(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__30); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__31 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__31(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__31); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__32 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__32(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__32); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__33 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__33(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__33); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__34 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__34(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__34); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__35 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__35(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__35); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__36 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__36(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__36); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__37 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__37(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__37); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__38 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__38(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__38); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__39 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__39(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__39); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__40 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__40(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__40); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__41 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__41(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__41); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__42 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__42(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__42); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__43 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__43(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__43); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__44 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__44(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__44); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__45 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__45(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__45); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__46 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__46(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__46); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__47 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__47(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__47); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__48 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__48(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__48); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__49 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__49(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__49); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__50 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__50(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__50); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__51 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__51(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__51); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__52 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__52(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__52); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__53 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__53(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__53); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__54 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__54(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__54); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__55 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__55(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__55); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__56 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__56(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__56); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__57 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__57(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__57); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__58 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__58(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__58); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__59 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__59(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__59); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__60 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__60(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__60); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__61 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__61(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__61); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__62 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__62(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__62); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__63 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__63(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__63); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__64 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__64(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__64); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__65 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__65(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__65); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__66 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__66(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__66); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__67 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__67(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__67); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__68 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__68(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__68); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__69 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__69(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__69); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__70 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__70(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__70); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__71 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__71(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__71); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__72 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__72(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__72); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__73 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__73(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__73); -l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__74 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__74(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__1___closed__74); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__2___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__3___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__4___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__4 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__4(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__4); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__5 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__5(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__5); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__6 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__6(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__5___closed__6); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__6___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__8___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__9___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__15___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__16___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__17___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__19___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__20___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__21___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__23___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__24___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__25___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__27___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__28___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__29___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__31___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__32___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__33___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__1); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__2); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__3 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__3); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__4 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__4(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__4); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__5 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__5(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__5); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__6 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__6(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__6); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__7 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__7(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__7); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__8 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__8(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__8); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__9 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__9(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__9); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__10 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__10(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__10); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__11 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__11(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__11); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__12 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__12(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__12); +l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__13 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__13(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___lambda__35___closed__13); l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__1 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__1); l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__2 = _init_l_Lean_Elab_Tactic_Omega_MetaProblem_addFact___closed__2(); @@ -39669,17 +33925,17 @@ lean_mark_persistent(l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRange__ if (builtin) {res = l___regBuiltin_Lean_Elab_Tactic_Omega_evalOmega_declRange__1(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__1 = _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__1(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__1); -l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__2 = _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__2(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__2); -l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__3 = _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__3(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__3); -l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__4 = _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__4(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__4); -l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__5 = _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__5(); -lean_mark_persistent(l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879____closed__5); -if (builtin) {res = l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15879_(lean_io_mk_world()); +}l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__1 = _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__1); +l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__2 = _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__2); +l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__3 = _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__3); +l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__4 = _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__4(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__4); +l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__5 = _init_l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__5(); +lean_mark_persistent(l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391____closed__5); +if (builtin) {res = l_Lean_Elab_Tactic_Omega_initFn____x40_Lean_Elab_Tactic_Omega_Frontend___hyg_15391_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Elab_Tactic_Omega_bvOmegaSimpExtension = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Elab_Tactic_Omega_bvOmegaSimpExtension); diff --git a/stage0/stdlib/Lean/Elab/Tactic/RCases.c b/stage0/stdlib/Lean/Elab/Tactic/RCases.c index aef0c1495c21..a979aa415350 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/RCases.c +++ b/stage0/stdlib/Lean/Elab/Tactic/RCases.c @@ -71,7 +71,6 @@ static lean_object* l_Lean_Elab_Tactic_RCases_termList_u03a3____x40_Lean_Elab_Ta static lean_object* l_panic___at_Lean_Elab_Tactic_RCases_rcasesCore___spec__4___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Tactic_RCases_evalRIntro_declRange__1___closed__7; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_RCases_generalizeExceptFVar___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_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyM___at_Lean_Elab_Tactic_RCases_tryClearMany_x27___spec__28(lean_object*, lean_object*); lean_object* lean_whnf(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyM___at_Lean_Elab_Tactic_RCases_tryClearMany_x27___spec__20(lean_object*, lean_object*); @@ -153,11 +152,11 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Tactic_RCases_try lean_object* l_Lean_Expr_fvarId_x21(lean_object*); static lean_object* l_Lean_Elab_Tactic_RCases_rcasesCore___rarg___lambda__8___closed__4; static lean_object* l_List_repr___at___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_933____spec__1___closed__4; +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_EXPORT lean_object* l_Lean_Elab_Tactic_RCases_RCasesPatt_typed_x3f___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_environment_find(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_Elab_Tactic_RCases_tryClearMany_x27___spec__2(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_RCases_evalObtain___lambda__2___closed__2; -lean_object* l_Lean_mkConstWithLevelParams___at_Lean_Meta_registerCoercion___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_RCases_evalRCases___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_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_933_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_RCases_generalizeExceptFVar___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -419,6 +418,7 @@ lean_object* l_Lean_MVarId_assign___at_Lean_Elab_Term_exprToSyntax___spec__1(lea static lean_object* l_Lean_Elab_Tactic_RCases___aux__Lean__Elab__Tactic__RCases______macroRules__Lean__Elab__Tactic__RCases__termList_u03a3__1___closed__5; 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_Lean_MessageData_ofExpr(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_RCases_evalRCases_declRange__1___closed__2; @@ -4904,7 +4904,7 @@ if (lean_is_exclusive(x_4)) { x_16 = lean_box(0); } lean_inc(x_14); -x_17 = l_Lean_mkConstWithLevelParams___at_Lean_Meta_registerCoercion___spec__1(x_14, x_6, x_7, x_8, x_9, x_10); +x_17 = l_Lean_mkConstWithLevelParams___at_Lean_Meta_mkSimpCongrTheorem___spec__1(x_14, x_6, x_7, x_8, x_9, x_10); if (lean_obj_tag(x_17) == 0) { lean_object* x_18; lean_object* x_19; lean_object* x_20; @@ -30996,7 +30996,7 @@ x_33 = lean_box(0); x_34 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_34, 0, x_3); lean_ctor_set(x_34, 1, x_33); -x_35 = lean_alloc_closure((void*)(l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1___rarg___boxed), 8, 1); +x_35 = lean_alloc_closure((void*)(l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__12___rarg___boxed), 8, 1); lean_closure_set(x_35, 0, x_34); x_36 = 1; x_37 = l___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_withSynthesizeImp___rarg(x_35, x_36, x_4, x_5, x_6, x_7, x_8, x_9, x_10); diff --git a/stage0/stdlib/Lean/Elab/Tactic/Simp.c b/stage0/stdlib/Lean/Elab/Tactic/Simp.c index 49521a0c7339..4e6f811b8fa5 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Simp.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Simp.c @@ -22,7 +22,9 @@ lean_object* l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(lean_object*, lean_obj static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDSimp_declRange__1___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_mkSimpOnly___lambda__2(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_Tactic_dsimpLocation_go(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_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__2; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimp__1___closed__2; +static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__5; lean_object* l_Lean_Meta_getSimpTheorems___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Simp_DischargeWrapper_with___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_Lean_unresolveNameGlobal___at_Lean_Elab_Tactic_mkSimpOnly___spec__4___lambda__1___closed__1; @@ -45,7 +47,6 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDSimp_declRange__1___clo static lean_object* l_Lean_Elab_Tactic_mkSimpOnly___closed__2; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___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_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___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_object*); -static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__2; lean_object* lean_private_to_user_name(lean_object*); static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__8; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDSimp_declRange__1(lean_object*); @@ -58,11 +59,13 @@ static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_tactic_simp_trace; static lean_object* l_Lean_Elab_Tactic_mkSimpContext___lambda__2___closed__1; static lean_object* l_Lean_Elab_Tactic_mkSimpOnly___lambda__1___closed__4; +static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__2; lean_object* l_Lean_ConstantInfo_type(lean_object*); uint32_t l_UInt32_ofNatTruncate(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_dsimpLocation_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_object* l_Lean_Meta_isProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimpAll_declRange__1___closed__6; +static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__6; lean_object* l_Lean_LocalContext_findFromUserName_x3f(lean_object*, lean_object*); uint8_t l_Lean_Exception_isInterrupt(lean_object*); lean_object* l_Lean_Elab_Term_synthesizeSyntheticMVars(uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -70,7 +73,6 @@ LEAN_EXPORT lean_object* l_Lean_throwUnknownConstant___at_Lean_Elab_Tactic_elabS uint8_t l_List_elem___at_Lean_NameHashSet_insert___spec__2(lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_elabTerm(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation___lambda__2(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*); -static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__6; LEAN_EXPORT uint8_t l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_beqSimpKind____x40_Lean_Elab_Tactic_Simp___hyg_572_(uint8_t, uint8_t); static lean_object* l_Lean_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_6____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimpAll(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -89,37 +91,35 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDSimp_declRange__1___clo LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_tacticToDischarge___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* l_Lean_Elab_Term_isLocalIdent_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Simp_DischargeWrapper_with(lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__7(lean_object*, uint8_t, uint8_t, 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_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*); lean_object* l_Array_qpartition___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabSimpArgs___lambda__1(lean_object*, uint8_t, uint8_t, lean_object*, size_t, size_t, lean_object*, lean_object*, uint32_t, lean_object*, lean_object*, uint32_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_Tactic_simpLocation_go(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*); +static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__3; LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_Tactic_mkSimpOnly___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_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(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*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_191_(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getArgs(lean_object*); static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCore___closed__6; -extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCore___closed__9; lean_object* l___private_Init_GetElem_0__outOfBounds___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9(uint8_t, 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_Elab_Tactic_instBEqSimpKind___closed__1; static lean_object* l_Lean_Parser_Tactic_getSimpArgs_x3f___closed__1; lean_object* l_Lean_replaceRef(lean_object*, lean_object*); -static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_tacticToDischarge___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_mkSimpOnly___closed__4; 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_object* lean_array_fget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addSimpTheorem___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_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__5; static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__10; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_mkSimpOnly___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_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem___closed__1; lean_object* l_Lean_Elab_Term_elabCDotFunctionAlias_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Tactic_getMainGoal(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_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738_(lean_object*); lean_object* l_Lean_Syntax_TSepArray_getElems___rarg(lean_object*); uint8_t l_Lean_LocalDecl_hasValue(lean_object*); static lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem___closed__5; @@ -145,6 +145,7 @@ static lean_object* l_Lean_unresolveNameGlobal_unresolveNameCore___at_Lean_Elab_ uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_Simp_DischargeWrapper_with___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_Tactic_simpOnlyBuiltins___closed__3; +static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__8; static lean_object* l_Lean_Parser_Tactic_getDSimpArgs_x3f___closed__2; lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCtxCore___closed__2; @@ -170,13 +171,11 @@ lean_object* l_Lean_Option_register___at_Lean_Elab_initFn____x40_Lean_Elab_AutoB lean_object* l_Lean_Meta_getSimpCongrTheorems___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withoutModifyingStateWithInfoAndMessages___at_Lean_Elab_Tactic_elabSimpConfigCore___spec__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDSimp__1___closed__3; -static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__5; extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_mkSimpContext___lambda__1(lean_object*, uint8_t, lean_object*, uint8_t, 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_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation_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*, lean_object*); static lean_object* l_Lean_Elab_Tactic_traceSimpCall___closed__1; lean_object* l_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___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_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_elabSimpConfigCore___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_EXPORT lean_object* l_Lean_Elab_Tactic_SimpKind_noConfusion(lean_object*); static lean_object* l_Lean_throwUnknownConstant___at_Lean_Elab_Tactic_elabSimpArgs___spec__3___closed__2; @@ -190,11 +189,9 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_elabSimpCo LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_tacticToDischarge___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_Name_mkStr3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_resolveGlobalName___at_Lean_Elab_Tactic_mkSimpOnly___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabSimpConfigCore___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_mkSimpOnly___lambda__1___closed__5; size_t lean_usize_of_nat(lean_object*); -static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__6; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimp__1(lean_object*); lean_object* l_Lean_Meta_SimpTheorems_add(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_EXPORT lean_object* l_Lean_Elab_Tactic_evalDSimp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -214,23 +211,21 @@ static lean_object* l_Lean_Elab_Tactic_mkSimpContext___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Lean_unresolveNameGlobal_unresolveNameCore___at_Lean_Elab_Tactic_mkSimpOnly___spec__5___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_mkSimpContext___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_tacticToDischarge(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_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__1; static lean_object* l_Lean_Elab_Tactic_simpOnlyBuiltins___closed__2; lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); static lean_object* l_Lean_Elab_Tactic_mkSimpOnly___closed__6; lean_object* l_Lean_Meta_Simp_SimprocExtension_getSimprocs(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; static lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem___closed__4; lean_object* l_Lean_MessageData_ofSyntax(lean_object*); static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCore___closed__4; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___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_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__7; static lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__3___closed__1; lean_object* l_Lean_Elab_Term_withoutErrToSorryImp___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_elabSimpConfigCore(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_Simp___hyg_4738____closed__2; +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__3; lean_object* l_Lean_getRevAliases(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_6_(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_Simp___hyg_4738____closed__4; LEAN_EXPORT uint8_t l_Lean_Elab_Tactic_ElabSimpArgsResult_starArg___default; static lean_object* l_Lean_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_376____closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation_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*); @@ -241,7 +236,6 @@ LEAN_EXPORT lean_object* l_Array_qsort_sort___at_Lean_Elab_Tactic_mkSimpOnly___s lean_object* l_Lean_Syntax_getKind(lean_object*); static lean_object* l_Lean_Elab_Tactic_mkSimpOnly___lambda__2___closed__1; lean_object* l_Lean_PersistentArray_append___rarg(lean_object*, lean_object*); -static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__3; static lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_elabSimpConfigCore___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*); static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCore___closed__3; @@ -262,6 +256,8 @@ lean_object* lean_st_ref_get(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_mkSimpOnly___lambda__2___closed__3; lean_object* l_Lean_PersistentHashMap_foldlMAux___at_Lean_MetavarContext_getExprAssignmentDomain___spec__2___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabSimpConfigCore___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_log___at_Lean_Elab_Tactic_closeUsingOrAdmit___spec__3(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_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__7; LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__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_Tactic_withSimpDiagnostics(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*); @@ -270,7 +266,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_a LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_mkSimpContext___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*); static lean_object* l_Lean_Elab_Tactic_mkSimpOnly___closed__3; lean_object* l_Lean_Meta_abstractMVars(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5(lean_object*, uint8_t, uint8_t, 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_Tactic_dsimpLocation(lean_object*, lean_object*, lean_object*, 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_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_withMainContext___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*); @@ -289,6 +284,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_mkSimpContext___lambda__2(lean_objec static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCore___closed__8; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___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*); static lean_object* l_Lean_Elab_Tactic_mkSimpOnly___lambda__1___closed__6; +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___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*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimp_declRange__1___closed__7; static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__1; lean_object* l_Lean_Expr_constName_x21(lean_object*); @@ -311,11 +307,13 @@ lean_object* l_Lean_Syntax_getSepArgs(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_simpLocation_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* l_Lean_Name_componentsRev(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___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_logWarning___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimpAll_declRange__1___closed__5; uint8_t lean_name_eq(lean_object*, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); extern lean_object* l_Lean_rootNamespace; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabSimpArgs___lambda__2(lean_object*, uint8_t, uint8_t, lean_object*, size_t, size_t, lean_object*, lean_object*, uint32_t, lean_object*, lean_object*, uint32_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_warningAsError; LEAN_EXPORT lean_object* l_Lean_unresolveNameGlobal___at_Lean_Elab_Tactic_mkSimpOnly___spec__4___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_node2(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___closed__4; @@ -330,6 +328,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_dsimpLocation_go___boxed(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_Tactic_mkSimpOnly___lambda__1___closed__1; uint8_t l_Lean_LocalDecl_isLet(lean_object*); +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_tacticToDischarge___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_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_6____boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_LocalDecl_fvarId(lean_object*); @@ -350,12 +349,14 @@ LEAN_EXPORT lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Tactic_e LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_dsimpLocation_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_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_elabSimpConfigCore___spec__12(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_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_376_(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___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_object* l_Lean_Meta_instBEqOrigin___boxed(lean_object*, lean_object*); lean_object* l_Array_append___rarg(lean_object*, lean_object*); uint8_t l_Lean_Environment_contains(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__12; lean_object* l_Lean_MessageData_ofExpr(lean_object*); static lean_object* l_Lean_Elab_Tactic_mkSimpOnly___lambda__2___closed__2; +static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; LEAN_EXPORT lean_object* l_Lean_unresolveNameGlobal_unresolveNameCore___at_Lean_Elab_Tactic_mkSimpOnly___spec__5___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimp_declRange__1___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimpAll_declRange__1(lean_object*); @@ -390,7 +391,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_SimpKind_noConfusion___rarg___boxed( static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCtxCore___closed__1; static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCore___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_dsimpLocation___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_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__8; static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCore___closed__11; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimpAll___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_Name_appendCore(lean_object*, lean_object*); @@ -412,17 +412,19 @@ lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); extern lean_object* l_Lean_Meta_instInhabitedSimpTheorems; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_mkSimpContext(lean_object*, uint8_t, 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_PersistentArray_mapM___at_Lean_Elab_Tactic_elabSimpConfigCore___spec__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_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__7; static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCtxCore___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905_(lean_object*); static lean_object* l_Lean_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_6____closed__2; static lean_object* l_Lean_Elab_Tactic_elabSimpArgs_resolveSimpIdTheorem_x3f___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabSimpArgs___lambda__1___boxed(lean_object**); -static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_elabSimpConfigCore___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* l_Lean_Meta_Simp_reportDiag(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_foldlM___at_Lean_Elab_Tactic_mkSimpContext___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* l_Lean_Meta_getSimpExtension_x3f(lean_object*, lean_object*); lean_object* l_Lean_Syntax_node1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_dsimpLocation___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_Elab_logException___at_Lean_Elab_Tactic_closeUsingOrAdmit___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_Elab_Tactic_evalSimp___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_tacticToDischarge___closed__7; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimpAll_declRange__1___closed__7; @@ -437,13 +439,13 @@ static lean_object* l_Lean_Elab_Tactic_elabDSimpConfigCore___closed__1; uint8_t l_Lean_Syntax_isNone(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDSimp_declRange__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_withoutModifyingStateWithInfoAndMessages___at_Lean_Elab_Tactic_tacticToDischarge___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___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*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_SimpKind_noConfusion___rarg___lambda__1(lean_object*); lean_object* l_Lean_ResolveName_resolveGlobalName(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_simpOnlyBuiltins___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDSimp__1___closed__1; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___closed__3; +LEAN_EXPORT lean_object* l_Lean_logWarning___at_Lean_Elab_Tactic_elabSimpArgs___spec__5(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_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_elabSimpArgs___spec__1___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -452,6 +454,7 @@ static lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Tactic_elabSi LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_elabSimpConfigCore___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___regBuiltin_Lean_Elab_Tactic_evalSimp_declRange__1___closed__6; lean_object* l_Lean_Meta_Simp_SimprocsArray_add(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___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_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___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_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_elabSimpConfigCore___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*); @@ -470,11 +473,14 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabSimpArgs___boxed__const__1; LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapMAux___at_Lean_Elab_Tactic_elabSimpConfigCore___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_Elab_Tactic_instBEqSimpKind; static lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem___closed__8; +static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__1; +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__8; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalSimp___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_mkSimpContext___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*); static lean_object* l_Lean_Elab_Tactic_elabSimpConfigCore___closed__7; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimpAll_declRange__1___closed__1; size_t lean_usize_add(size_t, size_t); +static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__6; lean_object* l_Lean_Meta_instHashableOrigin___boxed(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__2(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_Simp_defaultMaxSteps; @@ -489,7 +495,6 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDSimp__1___closed__5; static lean_object* l_Lean_Elab_Tactic_mkSimpContext___lambda__2___closed__2; lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimp_declRange__1___closed__4; -static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__8; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalSimpAll_declRange__1___closed__3; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___closed__2; lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); @@ -519,6 +524,7 @@ lean_object* l_Lean_LocalDecl_toExpr(lean_object*); static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___lambda__3___closed__3; static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDSimp_declRange__1___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabSimpArgs_isSimproc_x3f___lambda__1___boxed(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_Simp___hyg_4905____closed__5; LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_mkDischargeWrapper(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*); static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__6; @@ -531,9 +537,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabSimpArgs(lean_object*, lean_obje lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_withoutModifyingStateWithInfoAndMessagesImpl___rarg(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_object* l_Lean_Meta_Simp_getSimprocExtension_x3f(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__7; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_elabSimpConfigCore___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_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___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*); uint8_t l_Lean_Expr_isConst(lean_object*); uint8_t l_Lean_Exception_isRuntime(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalDSimp__1___closed__4; @@ -545,6 +549,7 @@ lean_object* l_Lean_Meta_SimpTheorems_eraseCore(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_unresolveNameGlobal___at_Lean_Elab_Tactic_mkSimpOnly___spec__4___lambda__2(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_mvarId_x21(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*); +extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_Match_MatchEqnsExtState_eqns___default___spec__1; static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___lambda__3___closed__2; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); static lean_object* l_Lean_Elab_Tactic_tacticToDischarge___closed__11; @@ -7393,6 +7398,39 @@ x_18 = l_Lean_throwError___at_Lean_Elab_Tactic_evalTactic___spec__2(x_17, x_2, x return x_18; } } +static lean_object* _init_l_Lean_logWarning___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_warningAsError; +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_logWarning___at_Lean_Elab_Tactic_elabSimpArgs___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) { +_start: +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_8, 2); +lean_inc(x_11); +x_12 = l_Lean_logWarning___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__1; +x_13 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_11, x_12); +lean_dec(x_11); +if (x_13 == 0) +{ +uint8_t x_14; lean_object* x_15; +x_14 = 1; +x_15 = l_Lean_log___at_Lean_Elab_Tactic_closeUsingOrAdmit___spec__3(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; +} +else +{ +uint8_t x_16; lean_object* x_17; +x_16 = 2; +x_17 = l_Lean_log___at_Lean_Elab_Tactic_closeUsingOrAdmit___spec__3(x_1, x_16, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +return x_17; +} +} +} LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___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) { _start: { @@ -7424,55 +7462,53 @@ return x_2; LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___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: { -lean_object* x_12; uint8_t x_25; +lean_object* x_12; uint8_t x_24; lean_inc(x_2); lean_inc(x_1); -x_25 = l_Lean_Meta_SimpTheorems_isLemma(x_1, x_2); -if (x_25 == 0) +x_24 = l_Lean_Meta_SimpTheorems_isLemma(x_1, x_2); +if (x_24 == 0) { if (lean_obj_tag(x_2) == 0) { -uint8_t x_26; -x_26 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); -if (x_26 == 0) +uint8_t x_25; +x_25 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_25 == 0) { -lean_object* x_27; -lean_dec(x_1); -x_27 = lean_box(0); -x_12 = x_27; -goto block_24; +lean_object* x_26; +x_26 = lean_box(0); +x_12 = x_26; +goto block_23; } else { -uint8_t x_28; -x_28 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); -if (x_28 == 0) +uint8_t x_27; +x_27 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_27 == 0) { -lean_object* x_29; uint8_t x_30; -x_29 = lean_ctor_get(x_2, 0); -lean_inc(x_29); -lean_inc(x_29); +lean_object* x_28; uint8_t x_29; +x_28 = lean_ctor_get(x_2, 0); +lean_inc(x_28); +lean_inc(x_28); lean_inc(x_1); -x_30 = l_Lean_Meta_SimpTheorems_isDeclToUnfold(x_1, x_29); -if (x_30 == 0) +x_29 = l_Lean_Meta_SimpTheorems_isDeclToUnfold(x_1, x_28); +if (x_29 == 0) { -lean_object* x_31; uint8_t x_32; -x_31 = lean_ctor_get(x_1, 5); -lean_inc(x_31); -x_32 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_erase___spec__1(x_31, x_29); -if (x_32 == 0) +lean_object* x_30; uint8_t x_31; +x_30 = lean_ctor_get(x_1, 5); +lean_inc(x_30); +x_31 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_erase___spec__1(x_30, x_28); +if (x_31 == 0) { -lean_object* x_33; -lean_dec(x_1); -x_33 = lean_box(0); -x_12 = x_33; -goto block_24; +lean_object* x_32; +x_32 = lean_box(0); +x_12 = x_32; +goto block_23; } else { -lean_object* x_34; lean_object* x_35; -x_34 = lean_box(0); -x_35 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___lambda__1(x_1, x_2, x_34, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_object* x_33; lean_object* x_34; +x_33 = lean_box(0); +x_34 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___lambda__1(x_1, x_2, x_33, 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); @@ -7481,15 +7517,15 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -return x_35; +return x_34; } } else { -lean_object* x_36; lean_object* x_37; -lean_dec(x_29); -x_36 = lean_box(0); -x_37 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___lambda__1(x_1, x_2, x_36, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_object* x_35; lean_object* x_36; +lean_dec(x_28); +x_35 = lean_box(0); +x_36 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___lambda__1(x_1, x_2, x_35, 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); @@ -7498,33 +7534,31 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -return x_37; +return x_36; } } else { -lean_object* x_38; -lean_dec(x_1); -x_38 = lean_box(0); -x_12 = x_38; -goto block_24; +lean_object* x_37; +x_37 = lean_box(0); +x_12 = x_37; +goto block_23; } } } else { -lean_object* x_39; -lean_dec(x_1); -x_39 = lean_box(0); -x_12 = x_39; -goto block_24; +lean_object* x_38; +x_38 = lean_box(0); +x_12 = x_38; +goto block_23; } } else { -lean_object* x_40; lean_object* x_41; -x_40 = lean_box(0); -x_41 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___lambda__1(x_1, x_2, x_40, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_object* x_39; lean_object* x_40; +x_39 = lean_box(0); +x_40 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___lambda__1(x_1, x_2, x_39, 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); @@ -7533,14 +7567,13 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -return x_41; +return x_40; } -block_24: +block_23: { -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_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_dec(x_12); x_13 = l_Lean_Meta_Origin_key(x_2); -lean_dec(x_2); x_14 = l_Lean_MessageData_ofName(x_13); x_15 = l_Lean_throwUnknownConstant___at_Lean_Elab_Tactic_elabSimpArgs___spec__3___closed__4; x_16 = lean_alloc_ctor(7, 2, 0); @@ -7550,7 +7583,21 @@ x_17 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec_ 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_throwError___at_Lean_Elab_Tactic_evalTactic___spec__2(x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, 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_3); +x_19 = l_Lean_logWarning___at_Lean_Elab_Tactic_elabSimpArgs___spec__5(x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +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_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___lambda__1(x_1, x_2, x_20, x_3, 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); @@ -7559,99 +7606,83 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_20 = !lean_is_exclusive(x_19); -if (x_20 == 0) -{ -return x_19; -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_19, 0); -x_22 = lean_ctor_get(x_19, 1); -lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_19); -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_dec(x_20); +return x_22; } } } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___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_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___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, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { if (lean_obj_tag(x_7) == 0) { -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; x_17 = lean_unsigned_to_nat(1u); x_18 = l_Lean_Syntax_getArg(x_1, x_17); x_19 = lean_box(0); -x_166 = l_Lean_Elab_Tactic_saveState___rarg(x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); -x_167 = lean_ctor_get(x_166, 0); -lean_inc(x_167); -x_168 = lean_ctor_get(x_166, 1); +x_167 = l_Lean_Elab_Tactic_saveState___rarg(x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +x_168 = lean_ctor_get(x_167, 0); lean_inc(x_168); -lean_dec(x_166); +x_169 = lean_ctor_get(x_167, 1); +lean_inc(x_169); +lean_dec(x_167); lean_inc(x_15); lean_inc(x_14); lean_inc(x_18); -x_169 = l_Lean_Elab_realizeGlobalConstNoOverloadWithInfo(x_18, x_19, x_14, x_15, x_168); -if (lean_obj_tag(x_169) == 0) +x_170 = l_Lean_Elab_realizeGlobalConstNoOverloadWithInfo(x_18, x_19, x_14, x_15, x_169); +if (lean_obj_tag(x_170) == 0) { -lean_object* x_170; lean_object* x_171; lean_object* x_172; -lean_dec(x_167); -x_170 = lean_ctor_get(x_169, 0); -lean_inc(x_170); -x_171 = lean_ctor_get(x_169, 1); +lean_object* x_171; lean_object* x_172; lean_object* x_173; +lean_dec(x_168); +x_171 = lean_ctor_get(x_170, 0); lean_inc(x_171); -lean_dec(x_169); -x_172 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_172, 0, x_170); -x_20 = x_172; -x_21 = x_171; -goto block_165; +x_172 = lean_ctor_get(x_170, 1); +lean_inc(x_172); +lean_dec(x_170); +x_173 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_173, 0, x_171); +x_20 = x_173; +x_21 = x_172; +goto block_166; } else { -uint8_t x_173; -x_173 = !lean_is_exclusive(x_169); -if (x_173 == 0) -{ -lean_object* x_174; lean_object* x_175; uint8_t x_176; -x_174 = lean_ctor_get(x_169, 0); -x_175 = lean_ctor_get(x_169, 1); -x_176 = l_Lean_Exception_isInterrupt(x_174); -if (x_176 == 0) +uint8_t x_174; +x_174 = !lean_is_exclusive(x_170); +if (x_174 == 0) { -uint8_t x_177; -x_177 = l_Lean_Exception_isRuntime(x_174); +lean_object* x_175; lean_object* x_176; uint8_t x_177; +x_175 = lean_ctor_get(x_170, 0); +x_176 = lean_ctor_get(x_170, 1); +x_177 = l_Lean_Exception_isInterrupt(x_175); if (x_177 == 0) { -uint8_t x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; -lean_free_object(x_169); -x_178 = 0; +uint8_t x_178; +x_178 = l_Lean_Exception_isRuntime(x_175); +if (x_178 == 0) +{ +uint8_t x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; +lean_free_object(x_170); +x_179 = 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); -x_179 = l_Lean_Elab_Tactic_SavedState_restore(x_167, x_178, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_175); -x_180 = lean_ctor_get(x_179, 1); -lean_inc(x_180); -lean_dec(x_179); -x_181 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_181, 0, x_174); -x_20 = x_181; -x_21 = x_180; -goto block_165; +x_180 = l_Lean_Elab_Tactic_SavedState_restore(x_168, x_179, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_176); +x_181 = lean_ctor_get(x_180, 1); +lean_inc(x_181); +lean_dec(x_180); +x_182 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_182, 0, x_175); +x_20 = x_182; +x_21 = x_181; +goto block_166; } else { -lean_dec(x_167); +lean_dec(x_168); lean_dec(x_18); lean_dec(x_15); lean_dec(x_14); @@ -7665,12 +7696,12 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); -return x_169; +return x_170; } } else { -lean_dec(x_167); +lean_dec(x_168); lean_dec(x_18); lean_dec(x_15); lean_dec(x_14); @@ -7684,46 +7715,46 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); -return x_169; +return x_170; } } else { -lean_object* x_182; lean_object* x_183; uint8_t x_184; -x_182 = lean_ctor_get(x_169, 0); -x_183 = lean_ctor_get(x_169, 1); +lean_object* x_183; lean_object* x_184; uint8_t x_185; +x_183 = lean_ctor_get(x_170, 0); +x_184 = lean_ctor_get(x_170, 1); +lean_inc(x_184); lean_inc(x_183); -lean_inc(x_182); -lean_dec(x_169); -x_184 = l_Lean_Exception_isInterrupt(x_182); -if (x_184 == 0) -{ -uint8_t x_185; -x_185 = l_Lean_Exception_isRuntime(x_182); +lean_dec(x_170); +x_185 = l_Lean_Exception_isInterrupt(x_183); if (x_185 == 0) { -uint8_t x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; -x_186 = 0; +uint8_t x_186; +x_186 = l_Lean_Exception_isRuntime(x_183); +if (x_186 == 0) +{ +uint8_t x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; +x_187 = 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); -x_187 = l_Lean_Elab_Tactic_SavedState_restore(x_167, x_186, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_183); -x_188 = lean_ctor_get(x_187, 1); -lean_inc(x_188); -lean_dec(x_187); -x_189 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_189, 0, x_182); -x_20 = x_189; -x_21 = x_188; -goto block_165; +x_188 = l_Lean_Elab_Tactic_SavedState_restore(x_168, x_187, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_184); +x_189 = lean_ctor_get(x_188, 1); +lean_inc(x_189); +lean_dec(x_188); +x_190 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_190, 0, x_183); +x_20 = x_190; +x_21 = x_189; +goto block_166; } else { -lean_object* x_190; -lean_dec(x_167); +lean_object* x_191; +lean_dec(x_168); lean_dec(x_18); lean_dec(x_15); lean_dec(x_14); @@ -7737,16 +7768,16 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); -x_190 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_190, 0, x_182); -lean_ctor_set(x_190, 1, x_183); -return x_190; +x_191 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_191, 0, x_183); +lean_ctor_set(x_191, 1, x_184); +return x_191; } } else { -lean_object* x_191; -lean_dec(x_167); +lean_object* x_192; +lean_dec(x_168); lean_dec(x_18); lean_dec(x_15); lean_dec(x_14); @@ -7760,45 +7791,47 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); -x_191 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_191, 0, x_182); -lean_ctor_set(x_191, 1, x_183); -return x_191; +x_192 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_192, 0, x_183); +lean_ctor_set(x_192, 1, x_184); +return x_192; } } } -block_165: +block_166: { if (lean_obj_tag(x_20) == 0) { -uint8_t x_22; -x_22 = !lean_is_exclusive(x_20); -if (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_20, 0); -lean_dec(x_23); -x_24 = l_Lean_Syntax_getId(x_18); -lean_dec(x_18); -x_25 = lean_erase_macro_scopes(x_24); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +lean_dec(x_20); +x_22 = l_Lean_Syntax_getId(x_18); +x_23 = lean_erase_macro_scopes(x_22); +lean_inc(x_23); +x_24 = l_Lean_Meta_Simp_isBuiltinSimproc(x_23, x_14, x_15, x_21); +x_25 = lean_ctor_get(x_24, 0); lean_inc(x_25); -x_26 = l_Lean_Meta_Simp_isBuiltinSimproc(x_25, x_14, x_15, x_21); -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) +x_26 = lean_unbox(x_25); +lean_dec(x_25); +if (x_26 == 0) { -lean_object* x_29; lean_object* x_30; uint8_t x_31; -lean_free_object(x_20); +lean_object* x_27; uint8_t x_28; lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); -x_29 = lean_ctor_get(x_26, 1); -lean_inc(x_29); -lean_dec(x_26); -x_30 = l_Lean_throwUnknownConstant___at_Lean_Elab_Tactic_elabSimpArgs___spec__3(x_25, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_29); +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_dec(x_24); +x_28 = !lean_is_exclusive(x_14); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_29 = lean_ctor_get(x_14, 5); +x_30 = l_Lean_replaceRef(x_18, x_29); +lean_dec(x_29); +lean_dec(x_18); +lean_ctor_set(x_14, 5, x_30); +x_31 = l_Lean_throwUnknownConstant___at_Lean_Elab_Tactic_elabSimpArgs___spec__3(x_23, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_27); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); @@ -7807,106 +7840,108 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_31 = !lean_is_exclusive(x_30); -if (x_31 == 0) +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 { -uint8_t x_35; -lean_dec(x_15); +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; uint8_t 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_36 = lean_ctor_get(x_14, 0); +x_37 = lean_ctor_get(x_14, 1); +x_38 = lean_ctor_get(x_14, 2); +x_39 = lean_ctor_get(x_14, 3); +x_40 = lean_ctor_get(x_14, 4); +x_41 = lean_ctor_get(x_14, 5); +x_42 = lean_ctor_get(x_14, 6); +x_43 = lean_ctor_get(x_14, 7); +x_44 = lean_ctor_get(x_14, 8); +x_45 = lean_ctor_get(x_14, 9); +x_46 = lean_ctor_get(x_14, 10); +x_47 = lean_ctor_get_uint8(x_14, sizeof(void*)*12); +x_48 = lean_ctor_get(x_14, 11); +x_49 = lean_ctor_get_uint8(x_14, sizeof(void*)*12 + 1); +lean_inc(x_48); +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_40); +lean_inc(x_39); +lean_inc(x_38); +lean_inc(x_37); +lean_inc(x_36); lean_dec(x_14); +x_50 = l_Lean_replaceRef(x_18, x_41); +lean_dec(x_41); +lean_dec(x_18); +x_51 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_51, 0, x_36); +lean_ctor_set(x_51, 1, x_37); +lean_ctor_set(x_51, 2, x_38); +lean_ctor_set(x_51, 3, x_39); +lean_ctor_set(x_51, 4, x_40); +lean_ctor_set(x_51, 5, x_50); +lean_ctor_set(x_51, 6, x_42); +lean_ctor_set(x_51, 7, x_43); +lean_ctor_set(x_51, 8, x_44); +lean_ctor_set(x_51, 9, x_45); +lean_ctor_set(x_51, 10, x_46); +lean_ctor_set(x_51, 11, x_48); +lean_ctor_set_uint8(x_51, sizeof(void*)*12, x_47); +lean_ctor_set_uint8(x_51, sizeof(void*)*12 + 1, x_49); +x_52 = l_Lean_throwUnknownConstant___at_Lean_Elab_Tactic_elabSimpArgs___spec__3(x_23, x_8, x_9, x_10, x_11, x_12, x_13, x_51, x_15, x_27); +lean_dec(x_15); +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); -x_35 = !lean_is_exclusive(x_26); -if (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_26, 0); -lean_dec(x_36); -x_37 = l_Lean_Meta_Simp_SimprocsArray_erase(x_5, x_25); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_6); -lean_ctor_set(x_38, 1, x_2); -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_3); -lean_ctor_set(x_39, 1, 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); -lean_ctor_set_tag(x_20, 1); -lean_ctor_set(x_20, 0, x_40); -lean_ctor_set(x_26, 0, x_20); -return x_26; +x_53 = lean_ctor_get(x_52, 0); +lean_inc(x_53); +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); } -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; -x_41 = lean_ctor_get(x_26, 1); -lean_inc(x_41); -lean_dec(x_26); -x_42 = l_Lean_Meta_Simp_SimprocsArray_erase(x_5, x_25); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_6); -lean_ctor_set(x_43, 1, x_2); -x_44 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_44, 0, x_3); -lean_ctor_set(x_44, 1, x_43); -x_45 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_45, 0, x_42); -lean_ctor_set(x_45, 1, x_44); -lean_ctor_set_tag(x_20, 1); -lean_ctor_set(x_20, 0, x_45); -x_46 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_46, 0, x_20); -lean_ctor_set(x_46, 1, x_41); -return x_46; +if (lean_is_scalar(x_55)) { + x_56 = lean_alloc_ctor(1, 2, 0); +} else { + x_56 = x_55; } +lean_ctor_set(x_56, 0, x_53); +lean_ctor_set(x_56, 1, x_54); +return x_56; } } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; -lean_dec(x_20); -x_47 = l_Lean_Syntax_getId(x_18); +uint8_t x_57; lean_dec(x_18); -x_48 = lean_erase_macro_scopes(x_47); -lean_inc(x_48); -x_49 = l_Lean_Meta_Simp_isBuiltinSimproc(x_48, x_14, x_15, x_21); -x_50 = lean_ctor_get(x_49, 0); -lean_inc(x_50); -x_51 = lean_unbox(x_50); -lean_dec(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_6); -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); -x_52 = lean_ctor_get(x_49, 1); -lean_inc(x_52); -lean_dec(x_49); -x_53 = l_Lean_throwUnknownConstant___at_Lean_Elab_Tactic_elabSimpArgs___spec__3(x_48, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_52); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); @@ -7915,248 +7950,233 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -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; -} -else +x_57 = !lean_is_exclusive(x_24); +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_65; -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); -x_58 = lean_ctor_get(x_49, 1); -lean_inc(x_58); -if (lean_is_exclusive(x_49)) { - lean_ctor_release(x_49, 0); - lean_ctor_release(x_49, 1); - x_59 = x_49; -} else { - lean_dec_ref(x_49); - x_59 = lean_box(0); -} -x_60 = l_Lean_Meta_Simp_SimprocsArray_erase(x_5, x_48); +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_58 = lean_ctor_get(x_24, 0); +lean_dec(x_58); +x_59 = l_Lean_Meta_Simp_SimprocsArray_erase(x_5, x_23); +x_60 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_60, 0, x_6); +lean_ctor_set(x_60, 1, x_2); x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_6); -lean_ctor_set(x_61, 1, x_2); +lean_ctor_set(x_61, 0, x_3); +lean_ctor_set(x_61, 1, x_60); x_62 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_62, 0, x_3); +lean_ctor_set(x_62, 0, x_59); lean_ctor_set(x_62, 1, 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); -x_64 = lean_alloc_ctor(1, 1, 0); +x_63 = lean_box(0); +x_64 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_64, 0, x_63); -if (lean_is_scalar(x_59)) { - x_65 = lean_alloc_ctor(0, 2, 0); -} else { - x_65 = x_59; +lean_ctor_set(x_64, 1, x_62); +lean_ctor_set(x_24, 0, x_64); +return x_24; } -lean_ctor_set(x_65, 0, x_64); -lean_ctor_set(x_65, 1, x_58); -return x_65; +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; +x_65 = lean_ctor_get(x_24, 1); +lean_inc(x_65); +lean_dec(x_24); +x_66 = l_Lean_Meta_Simp_SimprocsArray_erase(x_5, x_23); +x_67 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_67, 0, x_6); +lean_ctor_set(x_67, 1, x_2); +x_68 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_68, 0, x_3); +lean_ctor_set(x_68, 1, x_67); +x_69 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_69, 0, x_66); +lean_ctor_set(x_69, 1, x_68); +x_70 = lean_box(0); +x_71 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_71, 1, x_69); +x_72 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_72, 0, x_71); +lean_ctor_set(x_72, 1, x_65); +return x_72; } } } else { -uint8_t x_66; -lean_dec(x_18); -x_66 = !lean_is_exclusive(x_20); -if (x_66 == 0) -{ -lean_object* x_67; lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_67 = lean_ctor_get(x_20, 0); +lean_object* x_73; lean_object* x_74; lean_object* x_75; uint8_t x_76; +x_73 = lean_ctor_get(x_20, 0); +lean_inc(x_73); +lean_dec(x_20); lean_inc(x_15); lean_inc(x_14); -lean_inc(x_67); -x_68 = l_Lean_Meta_Simp_isSimproc(x_67, x_14, x_15, x_21); -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) -{ -lean_object* x_71; uint8_t x_72; -x_71 = lean_ctor_get(x_4, 0); -x_72 = lean_ctor_get_uint8(x_71, sizeof(void*)*2 + 11); -if (x_72 == 0) -{ -lean_object* x_73; uint8_t x_74; uint8_t x_75; lean_object* x_76; lean_object* x_77; -x_73 = lean_ctor_get(x_68, 1); lean_inc(x_73); -lean_dec(x_68); -x_74 = 1; -x_75 = 0; -x_76 = lean_alloc_ctor(0, 1, 2); -lean_ctor_set(x_76, 0, x_67); -lean_ctor_set_uint8(x_76, sizeof(void*)*1, x_74); -lean_ctor_set_uint8(x_76, sizeof(void*)*1 + 1, x_75); -x_77 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4(x_6, x_76, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_73); -if (lean_obj_tag(x_77) == 0) -{ -uint8_t x_78; -x_78 = !lean_is_exclusive(x_77); -if (x_78 == 0) -{ -lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_79 = lean_ctor_get(x_77, 0); -x_80 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_80, 0, x_79); -lean_ctor_set(x_80, 1, x_2); -x_81 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_81, 0, x_3); -lean_ctor_set(x_81, 1, x_80); -x_82 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_82, 0, x_5); -lean_ctor_set(x_82, 1, x_81); -lean_ctor_set(x_20, 0, x_82); -lean_ctor_set(x_77, 0, x_20); -return x_77; -} -else +x_74 = l_Lean_Meta_Simp_isSimproc(x_73, x_14, x_15, x_21); +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_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_83 = lean_ctor_get(x_77, 0); -x_84 = lean_ctor_get(x_77, 1); -lean_inc(x_84); -lean_inc(x_83); -lean_dec(x_77); -x_85 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_85, 0, x_83); -lean_ctor_set(x_85, 1, x_2); -x_86 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_86, 0, x_3); -lean_ctor_set(x_86, 1, x_85); -x_87 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_87, 0, x_5); -lean_ctor_set(x_87, 1, x_86); -lean_ctor_set(x_20, 0, x_87); -x_88 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_88, 0, x_20); -lean_ctor_set(x_88, 1, x_84); -return x_88; -} -} -else +lean_object* x_77; uint8_t x_78; +x_77 = lean_ctor_get(x_4, 0); +x_78 = lean_ctor_get_uint8(x_77, sizeof(void*)*2 + 11); +if (x_78 == 0) { -uint8_t x_89; -lean_free_object(x_20); -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); -x_89 = !lean_is_exclusive(x_77); -if (x_89 == 0) +lean_object* x_79; uint8_t x_80; uint8_t x_81; lean_object* x_82; uint8_t x_83; +x_79 = lean_ctor_get(x_74, 1); +lean_inc(x_79); +lean_dec(x_74); +x_80 = 1; +x_81 = 0; +x_82 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_82, 0, x_73); +lean_ctor_set_uint8(x_82, sizeof(void*)*1, x_80); +lean_ctor_set_uint8(x_82, sizeof(void*)*1 + 1, x_81); +x_83 = !lean_is_exclusive(x_14); +if (x_83 == 0) { -return x_77; -} -else +lean_object* x_84; lean_object* x_85; lean_object* x_86; uint8_t x_87; +x_84 = lean_ctor_get(x_14, 5); +x_85 = l_Lean_replaceRef(x_18, x_84); +lean_dec(x_84); +lean_dec(x_18); +lean_ctor_set(x_14, 5, x_85); +x_86 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4(x_6, x_82, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_79); +x_87 = !lean_is_exclusive(x_86); +if (x_87 == 0) { -lean_object* x_90; lean_object* x_91; lean_object* x_92; -x_90 = lean_ctor_get(x_77, 0); -x_91 = lean_ctor_get(x_77, 1); -lean_inc(x_91); -lean_inc(x_90); -lean_dec(x_77); -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_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 = lean_ctor_get(x_86, 0); +x_89 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_89, 0, x_88); +lean_ctor_set(x_89, 1, x_2); +x_90 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_90, 0, x_3); +lean_ctor_set(x_90, 1, x_89); +x_91 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_91, 0, x_5); +lean_ctor_set(x_91, 1, x_90); +x_92 = lean_box(0); +x_93 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_93, 0, x_92); +lean_ctor_set(x_93, 1, x_91); +lean_ctor_set(x_86, 0, x_93); +return x_86; } else { -uint8_t x_93; -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); -x_93 = !lean_is_exclusive(x_68); -if (x_93 == 0) -{ -lean_object* x_94; uint8_t x_95; uint8_t x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; -x_94 = lean_ctor_get(x_68, 0); -lean_dec(x_94); -x_95 = 1; -x_96 = 0; -x_97 = lean_alloc_ctor(0, 1, 2); -lean_ctor_set(x_97, 0, x_67); -lean_ctor_set_uint8(x_97, sizeof(void*)*1, x_95); -lean_ctor_set_uint8(x_97, sizeof(void*)*1 + 1, x_96); -x_98 = l_Lean_Meta_SimpTheorems_eraseCore(x_6, x_97); -x_99 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_99, 0, x_98); -lean_ctor_set(x_99, 1, x_2); +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 = lean_ctor_get(x_86, 0); +x_95 = lean_ctor_get(x_86, 1); +lean_inc(x_95); +lean_inc(x_94); +lean_dec(x_86); +x_96 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_96, 0, x_94); +lean_ctor_set(x_96, 1, x_2); +x_97 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_97, 0, x_3); +lean_ctor_set(x_97, 1, x_96); +x_98 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_98, 0, x_5); +lean_ctor_set(x_98, 1, x_97); +x_99 = lean_box(0); x_100 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_100, 0, x_3); -lean_ctor_set(x_100, 1, x_99); +lean_ctor_set(x_100, 0, x_99); +lean_ctor_set(x_100, 1, x_98); x_101 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_101, 0, x_5); -lean_ctor_set(x_101, 1, x_100); -lean_ctor_set(x_20, 0, x_101); -lean_ctor_set(x_68, 0, x_20); -return x_68; +lean_ctor_set(x_101, 0, x_100); +lean_ctor_set(x_101, 1, x_95); +return x_101; +} } else { -lean_object* x_102; uint8_t x_103; uint8_t 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_102 = lean_ctor_get(x_68, 1); +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; uint8_t x_113; lean_object* x_114; uint8_t 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; +x_102 = lean_ctor_get(x_14, 0); +x_103 = lean_ctor_get(x_14, 1); +x_104 = lean_ctor_get(x_14, 2); +x_105 = lean_ctor_get(x_14, 3); +x_106 = lean_ctor_get(x_14, 4); +x_107 = lean_ctor_get(x_14, 5); +x_108 = lean_ctor_get(x_14, 6); +x_109 = lean_ctor_get(x_14, 7); +x_110 = lean_ctor_get(x_14, 8); +x_111 = lean_ctor_get(x_14, 9); +x_112 = lean_ctor_get(x_14, 10); +x_113 = lean_ctor_get_uint8(x_14, sizeof(void*)*12); +x_114 = lean_ctor_get(x_14, 11); +x_115 = lean_ctor_get_uint8(x_14, sizeof(void*)*12 + 1); +lean_inc(x_114); +lean_inc(x_112); +lean_inc(x_111); +lean_inc(x_110); +lean_inc(x_109); +lean_inc(x_108); +lean_inc(x_107); +lean_inc(x_106); +lean_inc(x_105); +lean_inc(x_104); +lean_inc(x_103); lean_inc(x_102); -lean_dec(x_68); -x_103 = 1; -x_104 = 0; -x_105 = lean_alloc_ctor(0, 1, 2); -lean_ctor_set(x_105, 0, x_67); -lean_ctor_set_uint8(x_105, sizeof(void*)*1, x_103); -lean_ctor_set_uint8(x_105, sizeof(void*)*1 + 1, x_104); -x_106 = l_Lean_Meta_SimpTheorems_eraseCore(x_6, x_105); -x_107 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_107, 0, x_106); -lean_ctor_set(x_107, 1, x_2); -x_108 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_108, 0, x_3); -lean_ctor_set(x_108, 1, x_107); -x_109 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_109, 0, x_5); -lean_ctor_set(x_109, 1, x_108); -lean_ctor_set(x_20, 0, x_109); -x_110 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_110, 0, x_20); -lean_ctor_set(x_110, 1, x_102); -return x_110; +lean_dec(x_14); +x_116 = l_Lean_replaceRef(x_18, x_107); +lean_dec(x_107); +lean_dec(x_18); +x_117 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_117, 0, x_102); +lean_ctor_set(x_117, 1, x_103); +lean_ctor_set(x_117, 2, x_104); +lean_ctor_set(x_117, 3, x_105); +lean_ctor_set(x_117, 4, x_106); +lean_ctor_set(x_117, 5, x_116); +lean_ctor_set(x_117, 6, x_108); +lean_ctor_set(x_117, 7, x_109); +lean_ctor_set(x_117, 8, x_110); +lean_ctor_set(x_117, 9, x_111); +lean_ctor_set(x_117, 10, x_112); +lean_ctor_set(x_117, 11, x_114); +lean_ctor_set_uint8(x_117, sizeof(void*)*12, x_113); +lean_ctor_set_uint8(x_117, sizeof(void*)*12 + 1, x_115); +x_118 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4(x_6, x_82, x_8, x_9, x_10, x_11, x_12, x_13, x_117, x_15, x_79); +x_119 = lean_ctor_get(x_118, 0); +lean_inc(x_119); +x_120 = lean_ctor_get(x_118, 1); +lean_inc(x_120); +if (lean_is_exclusive(x_118)) { + lean_ctor_release(x_118, 0); + lean_ctor_release(x_118, 1); + x_121 = x_118; +} else { + lean_dec_ref(x_118); + x_121 = lean_box(0); +} +x_122 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_122, 0, x_119); +lean_ctor_set(x_122, 1, x_2); +x_123 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_123, 0, x_3); +lean_ctor_set(x_123, 1, x_122); +x_124 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_124, 0, x_5); +lean_ctor_set(x_124, 1, x_123); +x_125 = lean_box(0); +x_126 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_126, 0, x_125); +lean_ctor_set(x_126, 1, x_124); +if (lean_is_scalar(x_121)) { + x_127 = lean_alloc_ctor(0, 2, 0); +} else { + x_127 = x_121; } +lean_ctor_set(x_127, 0, x_126); +lean_ctor_set(x_127, 1, x_120); +return x_127; } } else { -uint8_t x_111; +uint8_t x_128; +lean_dec(x_18); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); @@ -8165,148 +8185,72 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_111 = !lean_is_exclusive(x_68); -if (x_111 == 0) -{ -lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; -x_112 = lean_ctor_get(x_68, 0); -lean_dec(x_112); -x_113 = l_Lean_Meta_Simp_SimprocsArray_erase(x_5, x_67); -x_114 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_114, 0, x_6); -lean_ctor_set(x_114, 1, x_2); -x_115 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_115, 0, x_3); -lean_ctor_set(x_115, 1, x_114); -x_116 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_116, 0, x_113); -lean_ctor_set(x_116, 1, x_115); -lean_ctor_set(x_20, 0, x_116); -lean_ctor_set(x_68, 0, x_20); -return x_68; -} -else -{ -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_117 = lean_ctor_get(x_68, 1); -lean_inc(x_117); -lean_dec(x_68); -x_118 = l_Lean_Meta_Simp_SimprocsArray_erase(x_5, x_67); -x_119 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_119, 0, x_6); -lean_ctor_set(x_119, 1, x_2); -x_120 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_120, 0, x_3); -lean_ctor_set(x_120, 1, x_119); -x_121 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_121, 0, x_118); -lean_ctor_set(x_121, 1, x_120); -lean_ctor_set(x_20, 0, x_121); -x_122 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_122, 0, x_20); -lean_ctor_set(x_122, 1, x_117); -return x_122; -} -} -} -else -{ -lean_object* x_123; lean_object* x_124; lean_object* x_125; uint8_t x_126; -x_123 = lean_ctor_get(x_20, 0); -lean_inc(x_123); -lean_dec(x_20); -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_123); -x_124 = l_Lean_Meta_Simp_isSimproc(x_123, x_14, x_15, x_21); -x_125 = lean_ctor_get(x_124, 0); -lean_inc(x_125); -x_126 = lean_unbox(x_125); -lean_dec(x_125); -if (x_126 == 0) -{ -lean_object* x_127; uint8_t x_128; -x_127 = lean_ctor_get(x_4, 0); -x_128 = lean_ctor_get_uint8(x_127, sizeof(void*)*2 + 11); +x_128 = !lean_is_exclusive(x_74); if (x_128 == 0) { -lean_object* x_129; uint8_t x_130; uint8_t x_131; lean_object* x_132; lean_object* x_133; -x_129 = lean_ctor_get(x_124, 1); -lean_inc(x_129); -lean_dec(x_124); +lean_object* x_129; uint8_t x_130; uint8_t 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; +x_129 = lean_ctor_get(x_74, 0); +lean_dec(x_129); x_130 = 1; x_131 = 0; x_132 = lean_alloc_ctor(0, 1, 2); -lean_ctor_set(x_132, 0, x_123); +lean_ctor_set(x_132, 0, x_73); lean_ctor_set_uint8(x_132, sizeof(void*)*1, x_130); lean_ctor_set_uint8(x_132, sizeof(void*)*1 + 1, x_131); -x_133 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4(x_6, x_132, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_129); -if (lean_obj_tag(x_133) == 0) -{ -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_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; -} else { - lean_dec_ref(x_133); - x_136 = lean_box(0); -} -x_137 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_137, 0, x_134); -lean_ctor_set(x_137, 1, x_2); +x_133 = l_Lean_Meta_SimpTheorems_eraseCore(x_6, x_132); +x_134 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_134, 0, x_133); +lean_ctor_set(x_134, 1, x_2); +x_135 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_135, 0, x_3); +lean_ctor_set(x_135, 1, x_134); +x_136 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_136, 0, x_5); +lean_ctor_set(x_136, 1, x_135); +x_137 = lean_box(0); x_138 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_138, 0, x_3); -lean_ctor_set(x_138, 1, x_137); -x_139 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_139, 0, x_5); -lean_ctor_set(x_139, 1, x_138); -x_140 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_140, 0, x_139); -if (lean_is_scalar(x_136)) { - x_141 = lean_alloc_ctor(0, 2, 0); -} else { - x_141 = x_136; -} -lean_ctor_set(x_141, 0, x_140); -lean_ctor_set(x_141, 1, x_135); -return x_141; +lean_ctor_set(x_138, 0, x_137); +lean_ctor_set(x_138, 1, x_136); +lean_ctor_set(x_74, 0, x_138); +return x_74; } else { -lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); -x_142 = lean_ctor_get(x_133, 0); -lean_inc(x_142); -x_143 = lean_ctor_get(x_133, 1); -lean_inc(x_143); -if (lean_is_exclusive(x_133)) { - lean_ctor_release(x_133, 0); - lean_ctor_release(x_133, 1); - x_144 = x_133; -} else { - lean_dec_ref(x_133); - x_144 = lean_box(0); -} -if (lean_is_scalar(x_144)) { - x_145 = lean_alloc_ctor(1, 2, 0); -} else { - x_145 = x_144; +lean_object* x_139; uint8_t x_140; uint8_t 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; +x_139 = lean_ctor_get(x_74, 1); +lean_inc(x_139); +lean_dec(x_74); +x_140 = 1; +x_141 = 0; +x_142 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_142, 0, x_73); +lean_ctor_set_uint8(x_142, sizeof(void*)*1, x_140); +lean_ctor_set_uint8(x_142, sizeof(void*)*1 + 1, x_141); +x_143 = l_Lean_Meta_SimpTheorems_eraseCore(x_6, x_142); +x_144 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_144, 0, x_143); +lean_ctor_set(x_144, 1, x_2); +x_145 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_145, 0, x_3); +lean_ctor_set(x_145, 1, x_144); +x_146 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_146, 0, x_5); +lean_ctor_set(x_146, 1, x_145); +x_147 = lean_box(0); +x_148 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_148, 0, x_147); +lean_ctor_set(x_148, 1, x_146); +x_149 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_149, 0, x_148); +lean_ctor_set(x_149, 1, x_139); +return x_149; } -lean_ctor_set(x_145, 0, x_142); -lean_ctor_set(x_145, 1, x_143); -return x_145; } } else { -lean_object* x_146; lean_object* x_147; uint8_t x_148; uint8_t 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; +uint8_t x_150; +lean_dec(x_18); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); @@ -8315,66 +8259,36 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_146 = lean_ctor_get(x_124, 1); -lean_inc(x_146); -if (lean_is_exclusive(x_124)) { - lean_ctor_release(x_124, 0); - lean_ctor_release(x_124, 1); - x_147 = x_124; -} else { - lean_dec_ref(x_124); - x_147 = lean_box(0); -} -x_148 = 1; -x_149 = 0; -x_150 = lean_alloc_ctor(0, 1, 2); -lean_ctor_set(x_150, 0, x_123); -lean_ctor_set_uint8(x_150, sizeof(void*)*1, x_148); -lean_ctor_set_uint8(x_150, sizeof(void*)*1 + 1, x_149); -x_151 = l_Lean_Meta_SimpTheorems_eraseCore(x_6, x_150); -x_152 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_152, 0, x_151); -lean_ctor_set(x_152, 1, x_2); +x_150 = !lean_is_exclusive(x_74); +if (x_150 == 0) +{ +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_151 = lean_ctor_get(x_74, 0); +lean_dec(x_151); +x_152 = l_Lean_Meta_Simp_SimprocsArray_erase(x_5, x_73); x_153 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_153, 0, x_3); -lean_ctor_set(x_153, 1, x_152); +lean_ctor_set(x_153, 0, x_6); +lean_ctor_set(x_153, 1, x_2); x_154 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_154, 0, x_5); +lean_ctor_set(x_154, 0, x_3); lean_ctor_set(x_154, 1, x_153); -x_155 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_155, 0, x_154); -if (lean_is_scalar(x_147)) { - x_156 = lean_alloc_ctor(0, 2, 0); -} else { - x_156 = x_147; -} -lean_ctor_set(x_156, 0, x_155); -lean_ctor_set(x_156, 1, x_146); -return x_156; -} +x_155 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_155, 0, x_152); +lean_ctor_set(x_155, 1, x_154); +x_156 = lean_box(0); +x_157 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_157, 0, x_156); +lean_ctor_set(x_157, 1, x_155); +lean_ctor_set(x_74, 0, x_157); +return x_74; } else { -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_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); -x_157 = lean_ctor_get(x_124, 1); -lean_inc(x_157); -if (lean_is_exclusive(x_124)) { - lean_ctor_release(x_124, 0); - lean_ctor_release(x_124, 1); - x_158 = x_124; -} else { - lean_dec_ref(x_124); - x_158 = lean_box(0); -} -x_159 = l_Lean_Meta_Simp_SimprocsArray_erase(x_5, x_123); +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; +x_158 = lean_ctor_get(x_74, 1); +lean_inc(x_158); +lean_dec(x_74); +x_159 = l_Lean_Meta_Simp_SimprocsArray_erase(x_5, x_73); x_160 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_160, 0, x_6); lean_ctor_set(x_160, 1, x_2); @@ -8384,16 +8298,14 @@ lean_ctor_set(x_161, 1, x_160); x_162 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_162, 0, x_159); lean_ctor_set(x_162, 1, x_161); -x_163 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_163, 0, x_162); -if (lean_is_scalar(x_158)) { - x_164 = lean_alloc_ctor(0, 2, 0); -} else { - x_164 = x_158; -} +x_163 = lean_box(0); +x_164 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_164, 0, x_163); -lean_ctor_set(x_164, 1, x_157); -return x_164; +lean_ctor_set(x_164, 1, x_162); +x_165 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_165, 0, x_164); +lean_ctor_set(x_165, 1, x_158); +return x_165; } } } @@ -8401,7 +8313,7 @@ return x_164; } else { -uint8_t x_192; +uint8_t x_193; lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); @@ -8410,60 +8322,64 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_192 = !lean_is_exclusive(x_7); -if (x_192 == 0) -{ -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; -x_193 = lean_ctor_get(x_7, 0); -x_194 = l_Lean_Expr_fvarId_x21(x_193); -lean_ctor_set(x_7, 0, x_194); -x_195 = l_Lean_Meta_SimpTheorems_eraseCore(x_6, x_7); -x_196 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_196, 0, x_195); -lean_ctor_set(x_196, 1, x_2); +x_193 = !lean_is_exclusive(x_7); +if (x_193 == 0) +{ +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; +x_194 = lean_ctor_get(x_7, 0); +x_195 = l_Lean_Expr_fvarId_x21(x_194); +lean_ctor_set(x_7, 0, x_195); +x_196 = l_Lean_Meta_SimpTheorems_eraseCore(x_6, x_7); x_197 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_197, 0, x_3); -lean_ctor_set(x_197, 1, x_196); +lean_ctor_set(x_197, 0, x_196); +lean_ctor_set(x_197, 1, x_2); x_198 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_198, 0, x_5); +lean_ctor_set(x_198, 0, x_3); lean_ctor_set(x_198, 1, x_197); -x_199 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_199, 0, x_198); -x_200 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_200, 0, x_199); -lean_ctor_set(x_200, 1, x_16); -return x_200; +x_199 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_199, 0, x_5); +lean_ctor_set(x_199, 1, x_198); +x_200 = lean_box(0); +x_201 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_201, 0, x_200); +lean_ctor_set(x_201, 1, x_199); +x_202 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_202, 0, x_201); +lean_ctor_set(x_202, 1, x_16); +return x_202; } else { -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; -x_201 = lean_ctor_get(x_7, 0); -lean_inc(x_201); +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; +x_203 = lean_ctor_get(x_7, 0); +lean_inc(x_203); lean_dec(x_7); -x_202 = l_Lean_Expr_fvarId_x21(x_201); -x_203 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_203, 0, x_202); -x_204 = l_Lean_Meta_SimpTheorems_eraseCore(x_6, x_203); -x_205 = lean_alloc_ctor(0, 2, 0); +x_204 = l_Lean_Expr_fvarId_x21(x_203); +x_205 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_205, 0, x_204); -lean_ctor_set(x_205, 1, x_2); -x_206 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_206, 0, x_3); -lean_ctor_set(x_206, 1, x_205); +x_206 = l_Lean_Meta_SimpTheorems_eraseCore(x_6, x_205); x_207 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_207, 0, x_5); -lean_ctor_set(x_207, 1, x_206); -x_208 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_208, 0, x_207); +lean_ctor_set(x_207, 0, x_206); +lean_ctor_set(x_207, 1, x_2); +x_208 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_208, 0, x_3); +lean_ctor_set(x_208, 1, x_207); x_209 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_209, 0, x_208); -lean_ctor_set(x_209, 1, x_16); -return x_209; +lean_ctor_set(x_209, 0, x_5); +lean_ctor_set(x_209, 1, x_208); +x_210 = lean_box(0); +x_211 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_211, 0, x_210); +lean_ctor_set(x_211, 1, x_209); +x_212 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_212, 0, x_211); +lean_ctor_set(x_212, 1, x_16); +return x_212; } } } } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__1() { +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__1() { _start: { lean_object* x_1; @@ -8471,19 +8387,19 @@ x_1 = lean_mk_string_from_bytes("simpErase", 9); return x_1; } } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__2() { +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___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_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_tacticToDischarge___closed__1; x_3 = l_Lean_Elab_Tactic_tacticToDischarge___closed__2; -x_4 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__1; +x_4 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__3() { +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__3() { _start: { lean_object* x_1; @@ -8491,19 +8407,19 @@ x_1 = lean_mk_string_from_bytes("simpLemma", 9); return x_1; } } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4() { +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___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_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_tacticToDischarge___closed__1; x_3 = l_Lean_Elab_Tactic_tacticToDischarge___closed__2; -x_4 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__3; +x_4 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__5() { +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__5() { _start: { lean_object* x_1; @@ -8511,19 +8427,19 @@ x_1 = lean_mk_string_from_bytes("simpStar", 8); return x_1; } } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__6() { +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___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_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_tacticToDischarge___closed__1; x_3 = l_Lean_Elab_Tactic_tacticToDischarge___closed__2; -x_4 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__5; +x_4 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__5; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__7() { +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__7() { _start: { lean_object* x_1; @@ -8531,19 +8447,19 @@ x_1 = lean_mk_string_from_bytes("simpPost", 8); return x_1; } } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__8() { +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___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_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_6____closed__1; x_2 = l_Lean_Elab_Tactic_tacticToDischarge___closed__1; x_3 = l_Lean_Elab_Tactic_tacticToDischarge___closed__2; -x_4 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__7; +x_4 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__7; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5(lean_object* x_1, uint8_t x_2, uint8_t 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) { +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6(lean_object* x_1, uint8_t x_2, uint8_t 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; @@ -8566,1146 +8482,1877 @@ return x_18; } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; 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_object* x_19; lean_object* x_20; lean_object* x_38; 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; uint8_t x_101; uint8_t x_102; lean_object* x_103; lean_object* x_104; lean_object* x_511; x_19 = lean_array_uget(x_4, x_6); -x_29 = lean_ctor_get(x_7, 1); -lean_inc(x_29); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -x_31 = lean_ctor_get(x_7, 0); -lean_inc(x_31); +x_90 = lean_ctor_get(x_7, 1); +lean_inc(x_90); +x_91 = lean_ctor_get(x_90, 1); +lean_inc(x_91); +x_92 = lean_ctor_get(x_7, 0); +lean_inc(x_92); if (lean_is_exclusive(x_7)) { lean_ctor_release(x_7, 0); lean_ctor_release(x_7, 1); - x_32 = x_7; + x_93 = x_7; } else { lean_dec_ref(x_7); - x_32 = lean_box(0); + x_93 = lean_box(0); } -x_33 = lean_ctor_get(x_29, 0); -lean_inc(x_33); -if (lean_is_exclusive(x_29)) { - lean_ctor_release(x_29, 0); - lean_ctor_release(x_29, 1); - x_34 = x_29; +x_94 = lean_ctor_get(x_90, 0); +lean_inc(x_94); +if (lean_is_exclusive(x_90)) { + lean_ctor_release(x_90, 0); + lean_ctor_release(x_90, 1); + x_95 = x_90; } else { - lean_dec_ref(x_29); - x_34 = lean_box(0); + lean_dec_ref(x_90); + x_95 = lean_box(0); } -x_35 = lean_ctor_get(x_30, 0); -lean_inc(x_35); -x_36 = lean_ctor_get(x_30, 1); -lean_inc(x_36); -if (lean_is_exclusive(x_30)) { - lean_ctor_release(x_30, 0); - lean_ctor_release(x_30, 1); - x_37 = x_30; +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; } else { - lean_dec_ref(x_30); - x_37 = lean_box(0); + lean_dec_ref(x_91); + x_98 = lean_box(0); } lean_inc(x_19); -x_38 = l_Lean_Syntax_getKind(x_19); -x_39 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__2; -x_40 = lean_name_eq(x_38, x_39); -if (x_40 == 0) +x_99 = l_Lean_Syntax_getKind(x_19); +x_100 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__2; +x_101 = lean_name_eq(x_99, x_100); +x_511 = l_Lean_Elab_Tactic_saveState___rarg(x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +if (x_101 == 0) { -lean_object* x_41; uint8_t x_42; -x_41 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; -x_42 = lean_name_eq(x_38, x_41); -if (x_42 == 0) +lean_object* x_512; lean_object* x_513; uint8_t x_514; +x_512 = lean_ctor_get(x_511, 0); +lean_inc(x_512); +x_513 = lean_ctor_get(x_511, 1); +lean_inc(x_513); +lean_dec(x_511); +x_514 = 0; +x_102 = x_514; +x_103 = x_512; +x_104 = x_513; +goto block_510; +} +else +{ +lean_object* x_515; lean_object* x_516; uint8_t x_517; +x_515 = lean_ctor_get(x_511, 0); +lean_inc(x_515); +x_516 = lean_ctor_get(x_511, 1); +lean_inc(x_516); +lean_dec(x_511); +x_517 = 1; +x_102 = x_517; +x_103 = x_515; +x_104 = x_516; +goto block_510; +} +block_37: { -lean_object* x_43; uint8_t x_44; -lean_dec(x_33); -lean_dec(x_19); -x_43 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__6; -x_44 = lean_name_eq(x_38, x_43); -lean_dec(x_38); -if (x_44 == 0) +if (lean_obj_tag(x_20) == 0) { -lean_object* x_45; uint8_t x_46; -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_34); -lean_dec(x_32); -lean_dec(x_31); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); +lean_object* x_21; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) +{ +uint8_t x_22; +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); -x_45 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_elabSimpArgs___spec__1___rarg(x_16); -x_46 = !lean_is_exclusive(x_45); -if (x_46 == 0) +x_22 = !lean_is_exclusive(x_20); +if (x_22 == 0) { -return x_45; +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_20, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_21, 0); +lean_inc(x_24); +lean_dec(x_21); +lean_ctor_set(x_20, 0, x_24); +return x_20; } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_47 = lean_ctor_get(x_45, 0); -x_48 = lean_ctor_get(x_45, 1); -lean_inc(x_48); -lean_inc(x_47); -lean_dec(x_45); -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_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_20, 1); +lean_inc(x_25); +lean_dec(x_20); +x_26 = lean_ctor_get(x_21, 0); +lean_inc(x_26); +lean_dec(x_21); +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_50; uint8_t x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -if (lean_is_scalar(x_37)) { - x_50 = lean_alloc_ctor(0, 2, 0); -} else { - x_50 = x_37; -} -lean_ctor_set(x_50, 0, x_35); -lean_ctor_set(x_50, 1, x_36); -x_51 = 1; -x_52 = lean_box(x_51); -if (lean_is_scalar(x_34)) { - x_53 = lean_alloc_ctor(0, 2, 0); -} else { - x_53 = x_34; -} -lean_ctor_set(x_53, 0, x_52); -lean_ctor_set(x_53, 1, x_50); -if (lean_is_scalar(x_32)) { - x_54 = lean_alloc_ctor(0, 2, 0); -} else { - x_54 = x_32; -} -lean_ctor_set(x_54, 0, x_31); -lean_ctor_set(x_54, 1, x_53); -x_55 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_55, 0, x_54); -x_20 = x_55; -x_21 = x_16; -goto block_28; +lean_object* x_28; lean_object* x_29; size_t x_30; size_t x_31; +x_28 = lean_ctor_get(x_20, 1); +lean_inc(x_28); +lean_dec(x_20); +x_29 = lean_ctor_get(x_21, 0); +lean_inc(x_29); +lean_dec(x_21); +x_30 = 1; +x_31 = lean_usize_add(x_6, x_30); +x_6 = x_31; +x_7 = x_29; +x_16 = x_28; +goto _start; } } else { -lean_object* x_56; lean_object* x_57; uint8_t x_58; lean_object* x_59; lean_object* x_60; uint8_t x_61; lean_object* x_62; lean_object* x_63; uint8_t x_64; -lean_dec(x_38); -x_56 = lean_unsigned_to_nat(0u); -x_57 = l_Lean_Syntax_getArg(x_19, x_56); -x_58 = l_Lean_Syntax_isNone(x_57); -x_59 = lean_unsigned_to_nat(1u); -x_60 = l_Lean_Syntax_getArg(x_19, x_59); -x_61 = l_Lean_Syntax_isNone(x_60); -lean_dec(x_60); -x_62 = lean_unsigned_to_nat(2u); -x_63 = l_Lean_Syntax_getArg(x_19, x_62); -if (x_58 == 0) +uint8_t 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); +x_33 = !lean_is_exclusive(x_20); +if (x_33 == 0) { -lean_object* x_245; lean_object* x_246; lean_object* x_247; uint8_t x_248; -x_245 = l_Lean_Syntax_getArg(x_57, x_56); -lean_dec(x_57); -x_246 = l_Lean_Syntax_getKind(x_245); -x_247 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__8; -x_248 = lean_name_eq(x_246, x_247); -lean_dec(x_246); -x_64 = x_248; -goto block_244; +return x_20; } else { -uint8_t x_249; -lean_dec(x_57); -x_249 = 1; -x_64 = x_249; -goto block_244; +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_20, 0); +x_35 = lean_ctor_get(x_20, 1); +lean_inc(x_35); +lean_inc(x_34); +lean_dec(x_20); +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; } -block_244: -{ -uint8_t x_65; -if (x_61 == 0) -{ -uint8_t x_242; -x_242 = 1; -x_65 = x_242; -goto block_241; } -else -{ -uint8_t x_243; -x_243 = 0; -x_65 = x_243; -goto block_241; } -block_241: -{ -lean_object* 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_63); -x_66 = l_Lean_Elab_Tactic_elabSimpArgs_resolveSimpIdTheorem_x3f(x_63, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); -if (lean_obj_tag(x_66) == 0) +block_89: { -lean_object* x_67; -x_67 = lean_ctor_get(x_66, 0); -lean_inc(x_67); -switch (lean_obj_tag(x_67)) { -case 0: +if (lean_obj_tag(x_38) == 0) { -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_66, 1); -lean_inc(x_68); -lean_dec(x_66); -x_69 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_68); -x_70 = !lean_is_exclusive(x_69); -if (x_70 == 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_38, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_39, 1); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_40, 1); +lean_inc(x_41); +x_42 = lean_ctor_get(x_41, 1); +lean_inc(x_42); +x_43 = !lean_is_exclusive(x_38); +if (x_43 == 0) { -lean_object* x_71; lean_object* x_72; -x_71 = lean_ctor_get(x_69, 1); -lean_ctor_set_tag(x_69, 2); -lean_ctor_set(x_69, 1, x_19); -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_72 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addSimpTheorem(x_35, x_69, x_63, x_64, x_65, x_10, x_11, x_12, x_13, x_14, x_15, x_71); -if (lean_obj_tag(x_72) == 0) +lean_object* x_44; uint8_t x_45; +x_44 = lean_ctor_get(x_38, 0); +lean_dec(x_44); +x_45 = !lean_is_exclusive(x_40); +if (x_45 == 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; -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); -if (lean_is_scalar(x_37)) { - x_75 = lean_alloc_ctor(0, 2, 0); -} else { - x_75 = x_37; -} -lean_ctor_set(x_75, 0, x_73); -lean_ctor_set(x_75, 1, x_36); -if (lean_is_scalar(x_34)) { - x_76 = lean_alloc_ctor(0, 2, 0); -} else { - x_76 = x_34; -} -lean_ctor_set(x_76, 0, x_33); -lean_ctor_set(x_76, 1, x_75); -if (lean_is_scalar(x_32)) { - x_77 = lean_alloc_ctor(0, 2, 0); -} else { - x_77 = x_32; -} -lean_ctor_set(x_77, 0, x_31); -lean_ctor_set(x_77, 1, x_76); -x_78 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_78, 0, x_77); -x_20 = x_78; -x_21 = x_74; -goto block_28; -} -else +lean_object* x_46; uint8_t x_47; +x_46 = lean_ctor_get(x_40, 1); +lean_dec(x_46); +x_47 = !lean_is_exclusive(x_41); +if (x_47 == 0) { -uint8_t x_79; -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); -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); -x_79 = !lean_is_exclusive(x_72); -if (x_79 == 0) +lean_object* x_48; uint8_t x_49; +x_48 = lean_ctor_get(x_41, 1); +lean_dec(x_48); +x_49 = !lean_is_exclusive(x_42); +if (x_49 == 0) { -return x_72; +lean_object* x_50; +x_50 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_50, 0, x_40); +lean_ctor_set(x_38, 0, x_50); +x_20 = x_38; +goto block_37; } 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_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_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_51 = lean_ctor_get(x_42, 0); +x_52 = lean_ctor_get(x_42, 1); +lean_inc(x_52); +lean_inc(x_51); +lean_dec(x_42); +x_53 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_53, 0, x_51); +lean_ctor_set(x_53, 1, x_52); +lean_ctor_set(x_41, 1, x_53); +x_54 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_54, 0, x_40); +lean_ctor_set(x_38, 0, x_54); +x_20 = x_38; +goto block_37; } } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; -x_83 = lean_ctor_get(x_69, 0); -x_84 = lean_ctor_get(x_69, 1); -lean_inc(x_84); -lean_inc(x_83); -lean_dec(x_69); -x_85 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_85, 0, x_83); -lean_ctor_set(x_85, 1, x_19); -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_86 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addSimpTheorem(x_35, x_85, x_63, x_64, x_65, x_10, x_11, x_12, x_13, x_14, x_15, x_84); -if (lean_obj_tag(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 = 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); -if (lean_is_scalar(x_37)) { - x_89 = lean_alloc_ctor(0, 2, 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; +x_55 = lean_ctor_get(x_41, 0); +lean_inc(x_55); +lean_dec(x_41); +x_56 = lean_ctor_get(x_42, 0); +lean_inc(x_56); +x_57 = lean_ctor_get(x_42, 1); +lean_inc(x_57); +if (lean_is_exclusive(x_42)) { + lean_ctor_release(x_42, 0); + lean_ctor_release(x_42, 1); + x_58 = x_42; } else { - x_89 = x_37; + lean_dec_ref(x_42); + x_58 = lean_box(0); } -lean_ctor_set(x_89, 0, x_87); -lean_ctor_set(x_89, 1, x_36); -if (lean_is_scalar(x_34)) { - x_90 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_58)) { + x_59 = lean_alloc_ctor(0, 2, 0); } else { - x_90 = x_34; + x_59 = x_58; } -lean_ctor_set(x_90, 0, x_33); -lean_ctor_set(x_90, 1, x_89); -if (lean_is_scalar(x_32)) { - x_91 = lean_alloc_ctor(0, 2, 0); -} else { - x_91 = x_32; +lean_ctor_set(x_59, 0, x_56); +lean_ctor_set(x_59, 1, x_57); +x_60 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_60, 0, x_55); +lean_ctor_set(x_60, 1, x_59); +lean_ctor_set(x_40, 1, x_60); +x_61 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_61, 0, x_40); +lean_ctor_set(x_38, 0, x_61); +x_20 = x_38; +goto block_37; } -lean_ctor_set(x_91, 0, x_31); -lean_ctor_set(x_91, 1, x_90); -x_92 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_92, 0, x_91); -x_20 = x_92; -x_21 = x_88; -goto block_28; } else { -lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); -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); -x_93 = lean_ctor_get(x_86, 0); -lean_inc(x_93); -x_94 = lean_ctor_get(x_86, 1); -lean_inc(x_94); -if (lean_is_exclusive(x_86)) { - lean_ctor_release(x_86, 0); - lean_ctor_release(x_86, 1); - x_95 = x_86; +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_62 = lean_ctor_get(x_40, 0); +lean_inc(x_62); +lean_dec(x_40); +x_63 = lean_ctor_get(x_41, 0); +lean_inc(x_63); +if (lean_is_exclusive(x_41)) { + lean_ctor_release(x_41, 0); + lean_ctor_release(x_41, 1); + x_64 = x_41; } else { - lean_dec_ref(x_86); - x_95 = lean_box(0); + lean_dec_ref(x_41); + x_64 = lean_box(0); } -if (lean_is_scalar(x_95)) { - x_96 = lean_alloc_ctor(1, 2, 0); +x_65 = lean_ctor_get(x_42, 0); +lean_inc(x_65); +x_66 = lean_ctor_get(x_42, 1); +lean_inc(x_66); +if (lean_is_exclusive(x_42)) { + lean_ctor_release(x_42, 0); + lean_ctor_release(x_42, 1); + x_67 = x_42; } else { - x_96 = x_95; + lean_dec_ref(x_42); + x_67 = lean_box(0); } -lean_ctor_set(x_96, 0, x_93); -lean_ctor_set(x_96, 1, x_94); -return x_96; +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_65); +lean_ctor_set(x_68, 1, x_66); +if (lean_is_scalar(x_64)) { + x_69 = lean_alloc_ctor(0, 2, 0); +} else { + x_69 = x_64; } +lean_ctor_set(x_69, 0, x_63); +lean_ctor_set(x_69, 1, x_68); +x_70 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_70, 0, x_62); +lean_ctor_set(x_70, 1, x_69); +x_71 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_38, 0, x_71); +x_20 = x_38; +goto block_37; } -case 1: -{ -lean_object* x_97; uint8_t x_98; -lean_dec(x_63); -x_97 = lean_ctor_get(x_66, 1); -lean_inc(x_97); -lean_dec(x_66); -x_98 = !lean_is_exclusive(x_67); -if (x_98 == 0) -{ -lean_object* x_99; lean_object* x_100; uint8_t x_101; -x_99 = lean_ctor_get(x_67, 0); -x_100 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_97); -x_101 = !lean_is_exclusive(x_100); -if (x_101 == 0) -{ -lean_object* x_102; lean_object* x_103; -x_102 = lean_ctor_get(x_100, 1); -lean_ctor_set_tag(x_100, 2); -lean_ctor_set(x_100, 1, x_19); -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -x_103 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem(x_35, x_100, x_99, x_64, x_65, x_3, x_12, x_13, x_14, x_15, x_102); -if (lean_obj_tag(x_103) == 0) +} +else { -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); -if (lean_is_scalar(x_37)) { - x_106 = lean_alloc_ctor(0, 2, 0); +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_72 = lean_ctor_get(x_38, 1); +lean_inc(x_72); +lean_dec(x_38); +x_73 = lean_ctor_get(x_40, 0); +lean_inc(x_73); +if (lean_is_exclusive(x_40)) { + lean_ctor_release(x_40, 0); + lean_ctor_release(x_40, 1); + x_74 = x_40; } else { - x_106 = x_37; + lean_dec_ref(x_40); + x_74 = lean_box(0); } -lean_ctor_set(x_106, 0, x_104); -lean_ctor_set(x_106, 1, x_36); -if (lean_is_scalar(x_34)) { - x_107 = lean_alloc_ctor(0, 2, 0); +x_75 = lean_ctor_get(x_41, 0); +lean_inc(x_75); +if (lean_is_exclusive(x_41)) { + lean_ctor_release(x_41, 0); + lean_ctor_release(x_41, 1); + x_76 = x_41; } else { - x_107 = x_34; + lean_dec_ref(x_41); + x_76 = lean_box(0); } -lean_ctor_set(x_107, 0, x_33); -lean_ctor_set(x_107, 1, x_106); -if (lean_is_scalar(x_32)) { - x_108 = lean_alloc_ctor(0, 2, 0); +x_77 = lean_ctor_get(x_42, 0); +lean_inc(x_77); +x_78 = lean_ctor_get(x_42, 1); +lean_inc(x_78); +if (lean_is_exclusive(x_42)) { + lean_ctor_release(x_42, 0); + lean_ctor_release(x_42, 1); + x_79 = x_42; } else { - x_108 = x_32; + lean_dec_ref(x_42); + x_79 = lean_box(0); } -lean_ctor_set(x_108, 0, x_31); -lean_ctor_set(x_108, 1, x_107); -lean_ctor_set(x_67, 0, x_108); -x_20 = x_67; -x_21 = x_105; -goto block_28; +if (lean_is_scalar(x_79)) { + x_80 = lean_alloc_ctor(0, 2, 0); +} else { + x_80 = x_79; } -else -{ -uint8_t x_109; -lean_free_object(x_67); -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); -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); -x_109 = !lean_is_exclusive(x_103); -if (x_109 == 0) +lean_ctor_set(x_80, 0, x_77); +lean_ctor_set(x_80, 1, x_78); +if (lean_is_scalar(x_76)) { + x_81 = lean_alloc_ctor(0, 2, 0); +} else { + x_81 = x_76; +} +lean_ctor_set(x_81, 0, x_75); +lean_ctor_set(x_81, 1, x_80); +if (lean_is_scalar(x_74)) { + x_82 = lean_alloc_ctor(0, 2, 0); +} else { + x_82 = x_74; +} +lean_ctor_set(x_82, 0, x_73); +lean_ctor_set(x_82, 1, x_81); +x_83 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_83, 0, 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_72); +x_20 = x_84; +goto block_37; +} +} +else { -return x_103; +uint8_t x_85; +x_85 = !lean_is_exclusive(x_38); +if (x_85 == 0) +{ +x_20 = x_38; +goto block_37; } 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_object* x_86; lean_object* x_87; lean_object* x_88; +x_86 = lean_ctor_get(x_38, 0); +x_87 = lean_ctor_get(x_38, 1); +lean_inc(x_87); +lean_inc(x_86); +lean_dec(x_38); +x_88 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_88, 0, x_86); +lean_ctor_set(x_88, 1, x_87); +x_20 = x_88; +goto block_37; +} +} +} +block_510: +{ +lean_object* x_105; lean_object* x_106; +if (x_102 == 0) +{ +lean_object* x_138; uint8_t x_139; +x_138 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; +x_139 = lean_name_eq(x_99, x_138); +if (x_139 == 0) +{ +lean_object* x_140; uint8_t x_141; +lean_dec(x_19); +x_140 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__6; +x_141 = lean_name_eq(x_99, x_140); +lean_dec(x_99); +if (x_141 == 0) +{ +lean_object* x_142; lean_object* x_143; lean_object* x_144; +x_142 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_elabSimpArgs___spec__1___rarg(x_104); +x_143 = lean_ctor_get(x_142, 0); +lean_inc(x_143); +x_144 = lean_ctor_get(x_142, 1); +lean_inc(x_144); +lean_dec(x_142); +x_105 = x_143; +x_106 = x_144; +goto block_137; +} +else +{ +lean_object* x_145; uint8_t 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_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; +lean_dec(x_98); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +x_145 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_145, 0, x_96); +lean_ctor_set(x_145, 1, x_97); +x_146 = 1; +x_147 = lean_box(x_146); +x_148 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_148, 0, x_147); +lean_ctor_set(x_148, 1, x_145); +x_149 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_149, 0, x_92); +lean_ctor_set(x_149, 1, x_148); +x_150 = lean_box(0); +x_151 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_151, 0, x_150); +lean_ctor_set(x_151, 1, x_149); +x_152 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_152, 0, x_151); +lean_ctor_set(x_152, 1, x_104); +x_38 = x_152; +goto block_89; } } +else +{ +lean_object* x_153; lean_object* x_154; uint8_t x_155; lean_object* x_156; lean_object* x_157; uint8_t x_158; lean_object* x_159; lean_object* x_160; uint8_t x_161; +lean_dec(x_99); +x_153 = lean_unsigned_to_nat(0u); +x_154 = l_Lean_Syntax_getArg(x_19, x_153); +x_155 = l_Lean_Syntax_isNone(x_154); +x_156 = lean_unsigned_to_nat(1u); +x_157 = l_Lean_Syntax_getArg(x_19, x_156); +x_158 = l_Lean_Syntax_isNone(x_157); +lean_dec(x_157); +x_159 = lean_unsigned_to_nat(2u); +x_160 = l_Lean_Syntax_getArg(x_19, x_159); +if (x_155 == 0) +{ +lean_object* x_484; lean_object* x_485; lean_object* x_486; uint8_t x_487; +x_484 = l_Lean_Syntax_getArg(x_154, x_153); +lean_dec(x_154); +x_485 = l_Lean_Syntax_getKind(x_484); +x_486 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__8; +x_487 = lean_name_eq(x_485, x_486); +lean_dec(x_485); +x_161 = x_487; +goto block_483; } else { -lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; -x_113 = lean_ctor_get(x_100, 0); -x_114 = lean_ctor_get(x_100, 1); -lean_inc(x_114); -lean_inc(x_113); -lean_dec(x_100); -x_115 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_115, 0, x_113); -lean_ctor_set(x_115, 1, x_19); +uint8_t x_488; +lean_dec(x_154); +x_488 = 1; +x_161 = x_488; +goto block_483; +} +block_483: +{ +uint8_t x_162; +if (x_158 == 0) +{ +uint8_t x_481; +x_481 = 1; +x_162 = x_481; +goto block_480; +} +else +{ +uint8_t x_482; +x_482 = 0; +x_162 = x_482; +goto block_480; +} +block_480: +{ +lean_object* x_163; lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); -x_116 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem(x_35, x_115, x_99, x_64, x_65, x_3, x_12, x_13, x_14, x_15, x_114); -if (lean_obj_tag(x_116) == 0) +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_160); +x_163 = l_Lean_Elab_Tactic_elabSimpArgs_resolveSimpIdTheorem_x3f(x_160, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_104); +if (lean_obj_tag(x_163) == 0) { -lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; -x_117 = lean_ctor_get(x_116, 0); -lean_inc(x_117); -x_118 = lean_ctor_get(x_116, 1); -lean_inc(x_118); -lean_dec(x_116); -if (lean_is_scalar(x_37)) { - x_119 = lean_alloc_ctor(0, 2, 0); +lean_object* x_164; +x_164 = lean_ctor_get(x_163, 0); +lean_inc(x_164); +switch (lean_obj_tag(x_164)) { +case 0: +{ +uint8_t x_165; +x_165 = !lean_is_exclusive(x_163); +if (x_165 == 0) +{ +lean_object* x_166; lean_object* x_167; lean_object* x_168; uint8_t x_169; +x_166 = lean_ctor_get(x_163, 1); +x_167 = lean_ctor_get(x_163, 0); +lean_dec(x_167); +x_168 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_166); +x_169 = !lean_is_exclusive(x_168); +if (x_169 == 0) +{ +lean_object* x_170; lean_object* x_171; +x_170 = lean_ctor_get(x_168, 1); +lean_ctor_set_tag(x_168, 2); +lean_ctor_set(x_168, 1, x_19); +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_96); +x_171 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addSimpTheorem(x_96, x_168, x_160, x_161, x_162, x_10, x_11, x_12, x_13, x_14, x_15, x_170); +if (lean_obj_tag(x_171) == 0) +{ +uint8_t x_172; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_93); +x_172 = !lean_is_exclusive(x_171); +if (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_171, 0); +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_173); +x_174 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_174, 0, x_94); +lean_ctor_set(x_174, 1, x_163); +x_175 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_175, 0, x_92); +lean_ctor_set(x_175, 1, x_174); +x_176 = lean_box(0); +x_177 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_177, 0, x_176); +lean_ctor_set(x_177, 1, x_175); +lean_ctor_set(x_171, 0, x_177); +x_38 = x_171; +goto block_89; +} +else +{ +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; +x_178 = lean_ctor_get(x_171, 0); +x_179 = lean_ctor_get(x_171, 1); +lean_inc(x_179); +lean_inc(x_178); +lean_dec(x_171); +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_178); +x_180 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_180, 0, x_94); +lean_ctor_set(x_180, 1, x_163); +x_181 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_181, 0, x_92); +lean_ctor_set(x_181, 1, x_180); +x_182 = lean_box(0); +x_183 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_183, 0, x_182); +lean_ctor_set(x_183, 1, x_181); +x_184 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_184, 0, x_183); +lean_ctor_set(x_184, 1, x_179); +x_38 = x_184; +goto block_89; +} +} +else +{ +lean_object* x_185; lean_object* x_186; +lean_free_object(x_163); +x_185 = lean_ctor_get(x_171, 0); +lean_inc(x_185); +x_186 = lean_ctor_get(x_171, 1); +lean_inc(x_186); +lean_dec(x_171); +x_105 = x_185; +x_106 = x_186; +goto block_137; +} +} +else +{ +lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; +x_187 = lean_ctor_get(x_168, 0); +x_188 = lean_ctor_get(x_168, 1); +lean_inc(x_188); +lean_inc(x_187); +lean_dec(x_168); +x_189 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_189, 0, x_187); +lean_ctor_set(x_189, 1, x_19); +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_96); +x_190 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addSimpTheorem(x_96, x_189, x_160, x_161, x_162, x_10, x_11, x_12, x_13, x_14, x_15, 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_dec(x_103); +lean_dec(x_98); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_93); +x_191 = lean_ctor_get(x_190, 0); +lean_inc(x_191); +x_192 = lean_ctor_get(x_190, 1); +lean_inc(x_192); +if (lean_is_exclusive(x_190)) { + lean_ctor_release(x_190, 0); + lean_ctor_release(x_190, 1); + x_193 = x_190; } else { - x_119 = x_37; -} -lean_ctor_set(x_119, 0, x_117); -lean_ctor_set(x_119, 1, x_36); -if (lean_is_scalar(x_34)) { - x_120 = lean_alloc_ctor(0, 2, 0); + lean_dec_ref(x_190); + x_193 = lean_box(0); +} +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_191); +x_194 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_194, 0, x_94); +lean_ctor_set(x_194, 1, x_163); +x_195 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_195, 0, x_92); +lean_ctor_set(x_195, 1, x_194); +x_196 = lean_box(0); +x_197 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_197, 0, x_196); +lean_ctor_set(x_197, 1, x_195); +if (lean_is_scalar(x_193)) { + x_198 = lean_alloc_ctor(0, 2, 0); } else { - x_120 = x_34; + x_198 = x_193; +} +lean_ctor_set(x_198, 0, x_197); +lean_ctor_set(x_198, 1, x_192); +x_38 = x_198; +goto block_89; +} +else +{ +lean_object* x_199; lean_object* x_200; +lean_free_object(x_163); +x_199 = lean_ctor_get(x_190, 0); +lean_inc(x_199); +x_200 = lean_ctor_get(x_190, 1); +lean_inc(x_200); +lean_dec(x_190); +x_105 = x_199; +x_106 = x_200; +goto block_137; } -lean_ctor_set(x_120, 0, x_33); -lean_ctor_set(x_120, 1, x_119); -if (lean_is_scalar(x_32)) { - x_121 = lean_alloc_ctor(0, 2, 0); -} else { - x_121 = x_32; } -lean_ctor_set(x_121, 0, x_31); -lean_ctor_set(x_121, 1, x_120); -lean_ctor_set(x_67, 0, x_121); -x_20 = x_67; -x_21 = x_118; -goto block_28; } else { -lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; -lean_free_object(x_67); -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); -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); -x_122 = lean_ctor_get(x_116, 0); -lean_inc(x_122); -x_123 = lean_ctor_get(x_116, 1); -lean_inc(x_123); -if (lean_is_exclusive(x_116)) { - lean_ctor_release(x_116, 0); - lean_ctor_release(x_116, 1); - x_124 = x_116; +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; +x_201 = lean_ctor_get(x_163, 1); +lean_inc(x_201); +lean_dec(x_163); +x_202 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_201); +x_203 = lean_ctor_get(x_202, 0); +lean_inc(x_203); +x_204 = lean_ctor_get(x_202, 1); +lean_inc(x_204); +if (lean_is_exclusive(x_202)) { + lean_ctor_release(x_202, 0); + lean_ctor_release(x_202, 1); + x_205 = x_202; } else { - lean_dec_ref(x_116); - x_124 = lean_box(0); + lean_dec_ref(x_202); + x_205 = lean_box(0); } -if (lean_is_scalar(x_124)) { - x_125 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_205)) { + x_206 = lean_alloc_ctor(2, 2, 0); } else { - x_125 = x_124; + x_206 = x_205; + lean_ctor_set_tag(x_206, 2); } -lean_ctor_set(x_125, 0, x_122); -lean_ctor_set(x_125, 1, x_123); -return x_125; +lean_ctor_set(x_206, 0, x_203); +lean_ctor_set(x_206, 1, x_19); +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_96); +x_207 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addSimpTheorem(x_96, x_206, x_160, x_161, x_162, x_10, x_11, x_12, x_13, x_14, x_15, x_204); +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; lean_object* x_213; lean_object* x_214; lean_object* x_215; lean_object* x_216; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_93); +x_208 = lean_ctor_get(x_207, 0); +lean_inc(x_208); +x_209 = lean_ctor_get(x_207, 1); +lean_inc(x_209); +if (lean_is_exclusive(x_207)) { + lean_ctor_release(x_207, 0); + lean_ctor_release(x_207, 1); + x_210 = x_207; +} else { + lean_dec_ref(x_207); + x_210 = lean_box(0); } +x_211 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_211, 0, x_208); +lean_ctor_set(x_211, 1, x_97); +x_212 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_212, 0, x_94); +lean_ctor_set(x_212, 1, x_211); +x_213 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_213, 0, x_92); +lean_ctor_set(x_213, 1, x_212); +x_214 = lean_box(0); +x_215 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_215, 0, x_214); +lean_ctor_set(x_215, 1, x_213); +if (lean_is_scalar(x_210)) { + x_216 = lean_alloc_ctor(0, 2, 0); +} else { + x_216 = x_210; } +lean_ctor_set(x_216, 0, x_215); +lean_ctor_set(x_216, 1, x_209); +x_38 = x_216; +goto block_89; } else { -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_126 = lean_ctor_get(x_67, 0); -lean_inc(x_126); -lean_dec(x_67); -x_127 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_97); -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_127); - x_130 = lean_box(0); -} -if (lean_is_scalar(x_130)) { - x_131 = lean_alloc_ctor(2, 2, 0); -} else { - x_131 = x_130; - lean_ctor_set_tag(x_131, 2); -} -lean_ctor_set(x_131, 0, x_128); -lean_ctor_set(x_131, 1, x_19); +lean_object* x_217; lean_object* x_218; +x_217 = lean_ctor_get(x_207, 0); +lean_inc(x_217); +x_218 = lean_ctor_get(x_207, 1); +lean_inc(x_218); +lean_dec(x_207); +x_105 = x_217; +x_106 = x_218; +goto block_137; +} +} +} +case 1: +{ +uint8_t x_219; +lean_dec(x_160); +x_219 = !lean_is_exclusive(x_163); +if (x_219 == 0) +{ +lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; uint8_t x_224; +x_220 = lean_ctor_get(x_163, 1); +x_221 = lean_ctor_get(x_163, 0); +lean_dec(x_221); +x_222 = lean_ctor_get(x_164, 0); +lean_inc(x_222); +lean_dec(x_164); +x_223 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_220); +x_224 = !lean_is_exclusive(x_223); +if (x_224 == 0) +{ +lean_object* x_225; lean_object* x_226; +x_225 = lean_ctor_get(x_223, 1); +lean_ctor_set_tag(x_223, 2); +lean_ctor_set(x_223, 1, x_19); lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); -x_132 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem(x_35, x_131, x_126, x_64, x_65, x_3, x_12, x_13, x_14, x_15, x_129); -if (lean_obj_tag(x_132) == 0) +lean_inc(x_96); +x_226 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem(x_96, x_223, x_222, x_161, x_162, x_3, x_12, x_13, x_14, x_15, x_225); +if (lean_obj_tag(x_226) == 0) { -lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; -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); -if (lean_is_scalar(x_37)) { - x_135 = lean_alloc_ctor(0, 2, 0); +uint8_t x_227; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_93); +x_227 = !lean_is_exclusive(x_226); +if (x_227 == 0) +{ +lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; +x_228 = lean_ctor_get(x_226, 0); +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_228); +x_229 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_229, 0, x_94); +lean_ctor_set(x_229, 1, x_163); +x_230 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_230, 0, x_92); +lean_ctor_set(x_230, 1, x_229); +x_231 = lean_box(0); +x_232 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_232, 0, x_231); +lean_ctor_set(x_232, 1, x_230); +lean_ctor_set(x_226, 0, x_232); +x_38 = x_226; +goto block_89; +} +else +{ +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_233 = lean_ctor_get(x_226, 0); +x_234 = lean_ctor_get(x_226, 1); +lean_inc(x_234); +lean_inc(x_233); +lean_dec(x_226); +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_233); +x_235 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_235, 0, x_94); +lean_ctor_set(x_235, 1, x_163); +x_236 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_236, 0, x_92); +lean_ctor_set(x_236, 1, x_235); +x_237 = lean_box(0); +x_238 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_238, 0, x_237); +lean_ctor_set(x_238, 1, x_236); +x_239 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_239, 0, x_238); +lean_ctor_set(x_239, 1, x_234); +x_38 = x_239; +goto block_89; +} +} +else +{ +lean_object* x_240; lean_object* x_241; +lean_free_object(x_163); +x_240 = lean_ctor_get(x_226, 0); +lean_inc(x_240); +x_241 = lean_ctor_get(x_226, 1); +lean_inc(x_241); +lean_dec(x_226); +x_105 = x_240; +x_106 = x_241; +goto block_137; +} +} +else +{ +lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; +x_242 = lean_ctor_get(x_223, 0); +x_243 = lean_ctor_get(x_223, 1); +lean_inc(x_243); +lean_inc(x_242); +lean_dec(x_223); +x_244 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_244, 0, x_242); +lean_ctor_set(x_244, 1, x_19); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_96); +x_245 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem(x_96, x_244, x_222, x_161, x_162, x_3, x_12, x_13, x_14, x_15, x_243); +if (lean_obj_tag(x_245) == 0) +{ +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_dec(x_103); +lean_dec(x_98); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_93); +x_246 = lean_ctor_get(x_245, 0); +lean_inc(x_246); +x_247 = lean_ctor_get(x_245, 1); +lean_inc(x_247); +if (lean_is_exclusive(x_245)) { + lean_ctor_release(x_245, 0); + lean_ctor_release(x_245, 1); + x_248 = x_245; +} else { + lean_dec_ref(x_245); + x_248 = lean_box(0); +} +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_246); +x_249 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_249, 0, x_94); +lean_ctor_set(x_249, 1, x_163); +x_250 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_250, 0, x_92); +lean_ctor_set(x_250, 1, x_249); +x_251 = lean_box(0); +x_252 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_252, 0, x_251); +lean_ctor_set(x_252, 1, x_250); +if (lean_is_scalar(x_248)) { + x_253 = lean_alloc_ctor(0, 2, 0); } else { - x_135 = x_37; + x_253 = x_248; } -lean_ctor_set(x_135, 0, x_133); -lean_ctor_set(x_135, 1, x_36); -if (lean_is_scalar(x_34)) { - x_136 = lean_alloc_ctor(0, 2, 0); -} else { - x_136 = x_34; +lean_ctor_set(x_253, 0, x_252); +lean_ctor_set(x_253, 1, x_247); +x_38 = x_253; +goto block_89; +} +else +{ +lean_object* x_254; lean_object* x_255; +lean_free_object(x_163); +x_254 = lean_ctor_get(x_245, 0); +lean_inc(x_254); +x_255 = lean_ctor_get(x_245, 1); +lean_inc(x_255); +lean_dec(x_245); +x_105 = x_254; +x_106 = x_255; +goto block_137; } -lean_ctor_set(x_136, 0, x_33); -lean_ctor_set(x_136, 1, x_135); -if (lean_is_scalar(x_32)) { - x_137 = lean_alloc_ctor(0, 2, 0); -} else { - x_137 = x_32; } -lean_ctor_set(x_137, 0, x_31); -lean_ctor_set(x_137, 1, x_136); -x_138 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_138, 0, x_137); -x_20 = x_138; -x_21 = x_134; -goto block_28; } else { -lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); -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); -x_139 = lean_ctor_get(x_132, 0); -lean_inc(x_139); -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; -} else { - lean_dec_ref(x_132); - x_141 = lean_box(0); -} -if (lean_is_scalar(x_141)) { - x_142 = lean_alloc_ctor(1, 2, 0); +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; +x_256 = lean_ctor_get(x_163, 1); +lean_inc(x_256); +lean_dec(x_163); +x_257 = lean_ctor_get(x_164, 0); +lean_inc(x_257); +lean_dec(x_164); +x_258 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_256); +x_259 = lean_ctor_get(x_258, 0); +lean_inc(x_259); +x_260 = lean_ctor_get(x_258, 1); +lean_inc(x_260); +if (lean_is_exclusive(x_258)) { + lean_ctor_release(x_258, 0); + lean_ctor_release(x_258, 1); + x_261 = x_258; +} else { + lean_dec_ref(x_258); + x_261 = lean_box(0); +} +if (lean_is_scalar(x_261)) { + x_262 = lean_alloc_ctor(2, 2, 0); } else { - x_142 = x_141; + x_262 = x_261; + lean_ctor_set_tag(x_262, 2); } -lean_ctor_set(x_142, 0, x_139); -lean_ctor_set(x_142, 1, x_140); -return x_142; +lean_ctor_set(x_262, 0, x_259); +lean_ctor_set(x_262, 1, x_19); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_96); +x_263 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem(x_96, x_262, x_257, x_161, x_162, x_3, x_12, x_13, x_14, x_15, x_260); +if (lean_obj_tag(x_263) == 0) +{ +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_dec(x_103); +lean_dec(x_98); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_93); +x_264 = lean_ctor_get(x_263, 0); +lean_inc(x_264); +x_265 = lean_ctor_get(x_263, 1); +lean_inc(x_265); +if (lean_is_exclusive(x_263)) { + lean_ctor_release(x_263, 0); + lean_ctor_release(x_263, 1); + x_266 = x_263; +} else { + lean_dec_ref(x_263); + x_266 = lean_box(0); +} +x_267 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_267, 0, x_264); +lean_ctor_set(x_267, 1, x_97); +x_268 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_268, 0, x_94); +lean_ctor_set(x_268, 1, x_267); +x_269 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_269, 0, x_92); +lean_ctor_set(x_269, 1, x_268); +x_270 = lean_box(0); +x_271 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_271, 0, x_270); +lean_ctor_set(x_271, 1, x_269); +if (lean_is_scalar(x_266)) { + x_272 = lean_alloc_ctor(0, 2, 0); +} else { + x_272 = x_266; +} +lean_ctor_set(x_272, 0, x_271); +lean_ctor_set(x_272, 1, x_265); +x_38 = x_272; +goto block_89; +} +else +{ +lean_object* x_273; lean_object* x_274; +x_273 = lean_ctor_get(x_263, 0); +lean_inc(x_273); +x_274 = lean_ctor_get(x_263, 1); +lean_inc(x_274); +lean_dec(x_263); +x_105 = x_273; +x_106 = x_274; +goto block_137; } } } case 2: { -lean_object* x_143; uint8_t x_144; -lean_dec(x_63); +uint8_t x_275; +lean_dec(x_160); lean_dec(x_19); -x_143 = lean_ctor_get(x_66, 1); -lean_inc(x_143); -lean_dec(x_66); -x_144 = !lean_is_exclusive(x_67); -if (x_144 == 0) +x_275 = !lean_is_exclusive(x_163); +if (x_275 == 0) { -lean_object* x_145; lean_object* x_146; -x_145 = lean_ctor_get(x_67, 0); +lean_object* x_276; lean_object* x_277; lean_object* x_278; lean_object* x_279; +x_276 = lean_ctor_get(x_163, 1); +x_277 = lean_ctor_get(x_163, 0); +lean_dec(x_277); +x_278 = lean_ctor_get(x_164, 0); +lean_inc(x_278); +lean_dec(x_164); lean_inc(x_15); lean_inc(x_14); -x_146 = l_Lean_Meta_Simp_SimprocsArray_add(x_31, x_145, x_64, x_14, x_15, x_143); -if (lean_obj_tag(x_146) == 0) +lean_inc(x_92); +x_279 = l_Lean_Meta_Simp_SimprocsArray_add(x_92, x_278, x_161, x_14, x_15, x_276); +if (lean_obj_tag(x_279) == 0) { -lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; -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); -if (lean_is_scalar(x_37)) { - x_149 = lean_alloc_ctor(0, 2, 0); -} else { - x_149 = x_37; +uint8_t x_280; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_95); +lean_dec(x_93); +lean_dec(x_92); +x_280 = !lean_is_exclusive(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; +x_281 = lean_ctor_get(x_279, 0); +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_96); +x_282 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_282, 0, x_94); +lean_ctor_set(x_282, 1, x_163); +x_283 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_283, 0, x_281); +lean_ctor_set(x_283, 1, x_282); +x_284 = lean_box(0); +x_285 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_285, 0, x_284); +lean_ctor_set(x_285, 1, x_283); +lean_ctor_set(x_279, 0, x_285); +x_38 = x_279; +goto block_89; +} +else +{ +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; +x_286 = lean_ctor_get(x_279, 0); +x_287 = lean_ctor_get(x_279, 1); +lean_inc(x_287); +lean_inc(x_286); +lean_dec(x_279); +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_96); +x_288 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_288, 0, x_94); +lean_ctor_set(x_288, 1, x_163); +x_289 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_289, 0, x_286); +lean_ctor_set(x_289, 1, x_288); +x_290 = lean_box(0); +x_291 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_291, 0, x_290); +lean_ctor_set(x_291, 1, x_289); +x_292 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_292, 0, x_291); +lean_ctor_set(x_292, 1, x_287); +x_38 = x_292; +goto block_89; } -lean_ctor_set(x_149, 0, x_35); -lean_ctor_set(x_149, 1, x_36); -if (lean_is_scalar(x_34)) { - x_150 = lean_alloc_ctor(0, 2, 0); -} else { - x_150 = x_34; } -lean_ctor_set(x_150, 0, x_33); -lean_ctor_set(x_150, 1, x_149); -if (lean_is_scalar(x_32)) { - x_151 = lean_alloc_ctor(0, 2, 0); -} else { - x_151 = x_32; +else +{ +lean_object* x_293; lean_object* x_294; +lean_free_object(x_163); +x_293 = lean_ctor_get(x_279, 0); +lean_inc(x_293); +x_294 = lean_ctor_get(x_279, 1); +lean_inc(x_294); +lean_dec(x_279); +x_105 = x_293; +x_106 = x_294; +goto block_137; } -lean_ctor_set(x_151, 0, x_147); -lean_ctor_set(x_151, 1, x_150); -lean_ctor_set_tag(x_67, 1); -lean_ctor_set(x_67, 0, x_151); -x_20 = x_67; -x_21 = x_148; -goto block_28; } else { -uint8_t x_152; -lean_free_object(x_67); -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -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); -x_152 = !lean_is_exclusive(x_146); -if (x_152 == 0) -{ -return x_146; -} -else -{ -lean_object* x_153; lean_object* x_154; lean_object* x_155; -x_153 = lean_ctor_get(x_146, 0); -x_154 = lean_ctor_get(x_146, 1); -lean_inc(x_154); -lean_inc(x_153); -lean_dec(x_146); -x_155 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_155, 0, x_153); -lean_ctor_set(x_155, 1, x_154); -return x_155; -} -} -} -else -{ -lean_object* x_156; lean_object* x_157; -x_156 = lean_ctor_get(x_67, 0); -lean_inc(x_156); -lean_dec(x_67); +lean_object* x_295; lean_object* x_296; lean_object* x_297; +x_295 = lean_ctor_get(x_163, 1); +lean_inc(x_295); +lean_dec(x_163); +x_296 = lean_ctor_get(x_164, 0); +lean_inc(x_296); +lean_dec(x_164); lean_inc(x_15); lean_inc(x_14); -x_157 = l_Lean_Meta_Simp_SimprocsArray_add(x_31, x_156, x_64, x_14, x_15, x_143); -if (lean_obj_tag(x_157) == 0) -{ -lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; -x_158 = lean_ctor_get(x_157, 0); -lean_inc(x_158); -x_159 = lean_ctor_get(x_157, 1); -lean_inc(x_159); -lean_dec(x_157); -if (lean_is_scalar(x_37)) { - x_160 = lean_alloc_ctor(0, 2, 0); -} else { - x_160 = x_37; -} -lean_ctor_set(x_160, 0, x_35); -lean_ctor_set(x_160, 1, x_36); -if (lean_is_scalar(x_34)) { - x_161 = lean_alloc_ctor(0, 2, 0); -} else { - x_161 = x_34; -} -lean_ctor_set(x_161, 0, x_33); -lean_ctor_set(x_161, 1, x_160); -if (lean_is_scalar(x_32)) { - x_162 = lean_alloc_ctor(0, 2, 0); -} else { - x_162 = x_32; -} -lean_ctor_set(x_162, 0, x_158); -lean_ctor_set(x_162, 1, x_161); -x_163 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_163, 0, x_162); -x_20 = x_163; -x_21 = x_159; -goto block_28; -} -else +lean_inc(x_92); +x_297 = l_Lean_Meta_Simp_SimprocsArray_add(x_92, x_296, x_161, x_14, x_15, x_295); +if (lean_obj_tag(x_297) == 0) { -lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -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); -x_164 = lean_ctor_get(x_157, 0); -lean_inc(x_164); -x_165 = lean_ctor_get(x_157, 1); -lean_inc(x_165); -if (lean_is_exclusive(x_157)) { - lean_ctor_release(x_157, 0); - lean_ctor_release(x_157, 1); - x_166 = x_157; -} else { - lean_dec_ref(x_157); - 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; +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; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_95); +lean_dec(x_93); +lean_dec(x_92); +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; +} else { + lean_dec_ref(x_297); + x_300 = lean_box(0); +} +x_301 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_301, 0, x_96); +lean_ctor_set(x_301, 1, x_97); +x_302 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_302, 0, x_94); +lean_ctor_set(x_302, 1, x_301); +x_303 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_303, 0, x_298); +lean_ctor_set(x_303, 1, x_302); +x_304 = lean_box(0); +x_305 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_305, 0, x_304); +lean_ctor_set(x_305, 1, x_303); +if (lean_is_scalar(x_300)) { + x_306 = lean_alloc_ctor(0, 2, 0); +} else { + x_306 = x_300; +} +lean_ctor_set(x_306, 0, x_305); +lean_ctor_set(x_306, 1, x_299); +x_38 = x_306; +goto block_89; +} +else +{ +lean_object* x_307; lean_object* x_308; +x_307 = lean_ctor_get(x_297, 0); +lean_inc(x_307); +x_308 = lean_ctor_get(x_297, 1); +lean_inc(x_308); +lean_dec(x_297); +x_105 = x_307; +x_106 = x_308; +goto block_137; } } } default: { -lean_object* x_168; -lean_dec(x_63); +lean_object* x_309; +lean_dec(x_160); +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_95); +lean_dec(x_93); lean_dec(x_19); -x_168 = lean_ctor_get(x_67, 0); -lean_inc(x_168); -if (lean_obj_tag(x_168) == 0) -{ -lean_object* x_169; lean_object* x_170; uint8_t x_171; -x_169 = lean_ctor_get(x_67, 1); -lean_inc(x_169); -lean_dec(x_67); -x_170 = lean_ctor_get(x_66, 1); -lean_inc(x_170); -lean_dec(x_66); -x_171 = !lean_is_exclusive(x_169); -if (x_171 == 0) -{ -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_172 = lean_ctor_get(x_169, 0); -x_173 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_172, x_14, x_15, x_170); -lean_dec(x_172); -x_174 = lean_ctor_get(x_173, 0); -lean_inc(x_174); -x_175 = lean_ctor_get(x_173, 1); -lean_inc(x_175); -lean_dec(x_173); -x_176 = lean_array_push(x_31, x_174); -if (lean_is_scalar(x_37)) { - x_177 = lean_alloc_ctor(0, 2, 0); -} else { - x_177 = x_37; -} -lean_ctor_set(x_177, 0, x_35); -lean_ctor_set(x_177, 1, x_36); -if (lean_is_scalar(x_34)) { - x_178 = lean_alloc_ctor(0, 2, 0); -} else { - x_178 = x_34; -} -lean_ctor_set(x_178, 0, x_33); -lean_ctor_set(x_178, 1, x_177); -if (lean_is_scalar(x_32)) { - x_179 = lean_alloc_ctor(0, 2, 0); -} else { - x_179 = x_32; -} -lean_ctor_set(x_179, 0, x_176); -lean_ctor_set(x_179, 1, x_178); -lean_ctor_set(x_169, 0, x_179); -x_20 = x_169; -x_21 = x_175; -goto block_28; -} -else -{ -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; -x_180 = lean_ctor_get(x_169, 0); -lean_inc(x_180); -lean_dec(x_169); -x_181 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_180, x_14, x_15, x_170); -lean_dec(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 = lean_array_push(x_31, x_182); -if (lean_is_scalar(x_37)) { - x_185 = lean_alloc_ctor(0, 2, 0); -} else { - x_185 = x_37; -} -lean_ctor_set(x_185, 0, x_35); -lean_ctor_set(x_185, 1, x_36); -if (lean_is_scalar(x_34)) { - x_186 = lean_alloc_ctor(0, 2, 0); -} else { - x_186 = x_34; -} -lean_ctor_set(x_186, 0, x_33); -lean_ctor_set(x_186, 1, x_185); -if (lean_is_scalar(x_32)) { - x_187 = lean_alloc_ctor(0, 2, 0); -} else { - x_187 = x_32; -} -lean_ctor_set(x_187, 0, x_184); -lean_ctor_set(x_187, 1, x_186); -x_188 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_188, 0, x_187); -x_20 = x_188; -x_21 = x_183; -goto block_28; +x_309 = lean_ctor_get(x_164, 0); +lean_inc(x_309); +if (lean_obj_tag(x_309) == 0) +{ +uint8_t x_310; +x_310 = !lean_is_exclusive(x_164); +if (x_310 == 0) +{ +lean_object* x_311; lean_object* x_312; uint8_t x_313; +x_311 = lean_ctor_get(x_164, 1); +x_312 = lean_ctor_get(x_164, 0); +lean_dec(x_312); +x_313 = !lean_is_exclusive(x_163); +if (x_313 == 0) +{ +lean_object* x_314; lean_object* x_315; lean_object* x_316; lean_object* x_317; uint8_t x_318; +x_314 = lean_ctor_get(x_163, 1); +x_315 = lean_ctor_get(x_163, 0); +lean_dec(x_315); +x_316 = lean_ctor_get(x_311, 0); +lean_inc(x_316); +lean_dec(x_311); +x_317 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_316, x_14, x_15, x_314); +lean_dec(x_316); +x_318 = !lean_is_exclusive(x_317); +if (x_318 == 0) +{ +lean_object* x_319; lean_object* x_320; lean_object* x_321; lean_object* x_322; lean_object* x_323; +x_319 = lean_ctor_get(x_317, 0); +x_320 = lean_array_push(x_92, x_319); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_97); +lean_ctor_set(x_164, 0, x_96); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_94); +x_321 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_321, 0, x_320); +lean_ctor_set(x_321, 1, x_163); +x_322 = lean_box(0); +x_323 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_323, 0, x_322); +lean_ctor_set(x_323, 1, x_321); +lean_ctor_set(x_317, 0, x_323); +x_38 = x_317; +goto block_89; +} +else +{ +lean_object* x_324; lean_object* x_325; lean_object* x_326; lean_object* x_327; lean_object* x_328; lean_object* x_329; lean_object* x_330; +x_324 = lean_ctor_get(x_317, 0); +x_325 = lean_ctor_get(x_317, 1); +lean_inc(x_325); +lean_inc(x_324); +lean_dec(x_317); +x_326 = lean_array_push(x_92, x_324); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_97); +lean_ctor_set(x_164, 0, x_96); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_94); +x_327 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_327, 0, x_326); +lean_ctor_set(x_327, 1, x_163); +x_328 = lean_box(0); +x_329 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_329, 0, x_328); +lean_ctor_set(x_329, 1, x_327); +x_330 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_330, 0, x_329); +lean_ctor_set(x_330, 1, x_325); +x_38 = x_330; +goto block_89; } } else { -lean_object* x_189; -x_189 = lean_ctor_get(x_67, 1); -lean_inc(x_189); -lean_dec(x_67); -if (lean_obj_tag(x_189) == 0) -{ -lean_object* x_190; uint8_t x_191; -x_190 = lean_ctor_get(x_66, 1); -lean_inc(x_190); -lean_dec(x_66); -x_191 = !lean_is_exclusive(x_168); -if (x_191 == 0) -{ -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; -x_192 = lean_ctor_get(x_168, 0); -x_193 = l_Lean_Meta_SimpExtension_getTheorems(x_192, x_14, x_15, x_190); -lean_dec(x_192); -x_194 = lean_ctor_get(x_193, 0); -lean_inc(x_194); -x_195 = lean_ctor_get(x_193, 1); -lean_inc(x_195); -lean_dec(x_193); -x_196 = lean_array_push(x_36, x_194); -if (lean_is_scalar(x_37)) { - x_197 = lean_alloc_ctor(0, 2, 0); -} else { - x_197 = x_37; -} -lean_ctor_set(x_197, 0, x_35); -lean_ctor_set(x_197, 1, x_196); -if (lean_is_scalar(x_34)) { - x_198 = lean_alloc_ctor(0, 2, 0); +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_object* x_342; +x_331 = lean_ctor_get(x_163, 1); +lean_inc(x_331); +lean_dec(x_163); +x_332 = lean_ctor_get(x_311, 0); +lean_inc(x_332); +lean_dec(x_311); +x_333 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_332, x_14, x_15, x_331); +lean_dec(x_332); +x_334 = lean_ctor_get(x_333, 0); +lean_inc(x_334); +x_335 = lean_ctor_get(x_333, 1); +lean_inc(x_335); +if (lean_is_exclusive(x_333)) { + lean_ctor_release(x_333, 0); + lean_ctor_release(x_333, 1); + x_336 = x_333; +} else { + lean_dec_ref(x_333); + x_336 = lean_box(0); +} +x_337 = lean_array_push(x_92, x_334); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_97); +lean_ctor_set(x_164, 0, x_96); +x_338 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_338, 0, x_94); +lean_ctor_set(x_338, 1, x_164); +x_339 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_339, 0, x_337); +lean_ctor_set(x_339, 1, x_338); +x_340 = lean_box(0); +x_341 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_341, 0, x_340); +lean_ctor_set(x_341, 1, x_339); +if (lean_is_scalar(x_336)) { + x_342 = lean_alloc_ctor(0, 2, 0); +} else { + x_342 = x_336; +} +lean_ctor_set(x_342, 0, x_341); +lean_ctor_set(x_342, 1, x_335); +x_38 = x_342; +goto block_89; +} +} +else +{ +lean_object* x_343; lean_object* x_344; 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_355; lean_object* x_356; lean_object* x_357; +x_343 = lean_ctor_get(x_164, 1); +lean_inc(x_343); +lean_dec(x_164); +x_344 = lean_ctor_get(x_163, 1); +lean_inc(x_344); +if (lean_is_exclusive(x_163)) { + lean_ctor_release(x_163, 0); + lean_ctor_release(x_163, 1); + x_345 = x_163; } else { - x_198 = x_34; + lean_dec_ref(x_163); + x_345 = lean_box(0); } -lean_ctor_set(x_198, 0, x_33); -lean_ctor_set(x_198, 1, x_197); -if (lean_is_scalar(x_32)) { - x_199 = lean_alloc_ctor(0, 2, 0); -} else { - x_199 = x_32; +x_346 = lean_ctor_get(x_343, 0); +lean_inc(x_346); +lean_dec(x_343); +x_347 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_346, x_14, x_15, x_344); +lean_dec(x_346); +x_348 = lean_ctor_get(x_347, 0); +lean_inc(x_348); +x_349 = lean_ctor_get(x_347, 1); +lean_inc(x_349); +if (lean_is_exclusive(x_347)) { + lean_ctor_release(x_347, 0); + lean_ctor_release(x_347, 1); + x_350 = x_347; +} else { + lean_dec_ref(x_347); + x_350 = lean_box(0); +} +x_351 = lean_array_push(x_92, x_348); +x_352 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_352, 0, x_96); +lean_ctor_set(x_352, 1, x_97); +if (lean_is_scalar(x_345)) { + x_353 = lean_alloc_ctor(0, 2, 0); +} else { + x_353 = x_345; +} +lean_ctor_set(x_353, 0, x_94); +lean_ctor_set(x_353, 1, x_352); +x_354 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_354, 0, x_351); +lean_ctor_set(x_354, 1, x_353); +x_355 = lean_box(0); +x_356 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_356, 0, x_355); +lean_ctor_set(x_356, 1, x_354); +if (lean_is_scalar(x_350)) { + x_357 = lean_alloc_ctor(0, 2, 0); +} else { + x_357 = x_350; +} +lean_ctor_set(x_357, 0, x_356); +lean_ctor_set(x_357, 1, x_349); +x_38 = x_357; +goto block_89; +} +} +else +{ +uint8_t x_358; +x_358 = !lean_is_exclusive(x_164); +if (x_358 == 0) +{ +lean_object* x_359; lean_object* x_360; +x_359 = lean_ctor_get(x_164, 1); +x_360 = lean_ctor_get(x_164, 0); +lean_dec(x_360); +if (lean_obj_tag(x_359) == 0) +{ +uint8_t x_361; +x_361 = !lean_is_exclusive(x_163); +if (x_361 == 0) +{ +lean_object* x_362; lean_object* x_363; lean_object* x_364; lean_object* x_365; uint8_t x_366; +x_362 = lean_ctor_get(x_163, 1); +x_363 = lean_ctor_get(x_163, 0); +lean_dec(x_363); +x_364 = lean_ctor_get(x_309, 0); +lean_inc(x_364); +lean_dec(x_309); +x_365 = l_Lean_Meta_SimpExtension_getTheorems(x_364, x_14, x_15, x_362); +lean_dec(x_364); +x_366 = !lean_is_exclusive(x_365); +if (x_366 == 0) +{ +lean_object* x_367; lean_object* x_368; lean_object* x_369; lean_object* x_370; lean_object* x_371; +x_367 = lean_ctor_get(x_365, 0); +x_368 = lean_array_push(x_97, x_367); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_368); +lean_ctor_set(x_164, 0, x_96); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_94); +x_369 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_369, 0, x_92); +lean_ctor_set(x_369, 1, x_163); +x_370 = lean_box(0); +x_371 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_371, 0, x_370); +lean_ctor_set(x_371, 1, x_369); +lean_ctor_set(x_365, 0, x_371); +x_38 = x_365; +goto block_89; +} +else +{ +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; +x_372 = lean_ctor_get(x_365, 0); +x_373 = lean_ctor_get(x_365, 1); +lean_inc(x_373); +lean_inc(x_372); +lean_dec(x_365); +x_374 = lean_array_push(x_97, x_372); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_374); +lean_ctor_set(x_164, 0, x_96); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_94); +x_375 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_375, 0, x_92); +lean_ctor_set(x_375, 1, x_163); +x_376 = lean_box(0); +x_377 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_377, 0, x_376); +lean_ctor_set(x_377, 1, x_375); +x_378 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_378, 0, x_377); +lean_ctor_set(x_378, 1, x_373); +x_38 = x_378; +goto block_89; } -lean_ctor_set(x_199, 0, x_31); -lean_ctor_set(x_199, 1, x_198); -lean_ctor_set(x_168, 0, x_199); -x_20 = x_168; -x_21 = x_195; -goto block_28; } 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; -x_200 = lean_ctor_get(x_168, 0); -lean_inc(x_200); -lean_dec(x_168); -x_201 = l_Lean_Meta_SimpExtension_getTheorems(x_200, x_14, x_15, x_190); -lean_dec(x_200); -x_202 = lean_ctor_get(x_201, 0); -lean_inc(x_202); -x_203 = lean_ctor_get(x_201, 1); -lean_inc(x_203); -lean_dec(x_201); -x_204 = lean_array_push(x_36, x_202); -if (lean_is_scalar(x_37)) { - x_205 = lean_alloc_ctor(0, 2, 0); +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; +x_379 = lean_ctor_get(x_163, 1); +lean_inc(x_379); +lean_dec(x_163); +x_380 = lean_ctor_get(x_309, 0); +lean_inc(x_380); +lean_dec(x_309); +x_381 = l_Lean_Meta_SimpExtension_getTheorems(x_380, x_14, x_15, x_379); +lean_dec(x_380); +x_382 = lean_ctor_get(x_381, 0); +lean_inc(x_382); +x_383 = lean_ctor_get(x_381, 1); +lean_inc(x_383); +if (lean_is_exclusive(x_381)) { + lean_ctor_release(x_381, 0); + lean_ctor_release(x_381, 1); + x_384 = x_381; +} else { + lean_dec_ref(x_381); + x_384 = lean_box(0); +} +x_385 = lean_array_push(x_97, x_382); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_385); +lean_ctor_set(x_164, 0, x_96); +x_386 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_386, 0, x_94); +lean_ctor_set(x_386, 1, x_164); +x_387 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_387, 0, x_92); +lean_ctor_set(x_387, 1, x_386); +x_388 = lean_box(0); +x_389 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_389, 0, x_388); +lean_ctor_set(x_389, 1, x_387); +if (lean_is_scalar(x_384)) { + x_390 = lean_alloc_ctor(0, 2, 0); +} else { + x_390 = x_384; +} +lean_ctor_set(x_390, 0, x_389); +lean_ctor_set(x_390, 1, x_383); +x_38 = x_390; +goto block_89; +} +} +else +{ +uint8_t x_391; +x_391 = !lean_is_exclusive(x_163); +if (x_391 == 0) +{ +lean_object* x_392; lean_object* x_393; lean_object* x_394; lean_object* x_395; lean_object* x_396; uint8_t x_397; +x_392 = lean_ctor_get(x_163, 1); +x_393 = lean_ctor_get(x_163, 0); +lean_dec(x_393); +x_394 = lean_ctor_get(x_309, 0); +lean_inc(x_394); +lean_dec(x_309); +x_395 = lean_ctor_get(x_359, 0); +lean_inc(x_395); +lean_dec(x_359); +x_396 = l_Lean_Meta_SimpExtension_getTheorems(x_394, x_14, x_15, x_392); +lean_dec(x_394); +x_397 = !lean_is_exclusive(x_396); +if (x_397 == 0) +{ +lean_object* x_398; lean_object* x_399; lean_object* x_400; lean_object* x_401; uint8_t x_402; +x_398 = lean_ctor_get(x_396, 0); +x_399 = lean_ctor_get(x_396, 1); +x_400 = lean_array_push(x_97, x_398); +x_401 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_395, x_14, x_15, x_399); +lean_dec(x_395); +x_402 = !lean_is_exclusive(x_401); +if (x_402 == 0) +{ +lean_object* x_403; lean_object* x_404; lean_object* x_405; lean_object* x_406; +x_403 = lean_ctor_get(x_401, 0); +x_404 = lean_array_push(x_92, x_403); +lean_ctor_set(x_396, 1, x_400); +lean_ctor_set(x_396, 0, x_96); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_396); +lean_ctor_set(x_164, 0, x_94); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_404); +x_405 = lean_box(0); +x_406 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_406, 0, x_405); +lean_ctor_set(x_406, 1, x_163); +lean_ctor_set(x_401, 0, x_406); +x_38 = x_401; +goto block_89; +} +else +{ +lean_object* x_407; lean_object* x_408; lean_object* x_409; lean_object* x_410; lean_object* x_411; lean_object* x_412; +x_407 = lean_ctor_get(x_401, 0); +x_408 = lean_ctor_get(x_401, 1); +lean_inc(x_408); +lean_inc(x_407); +lean_dec(x_401); +x_409 = lean_array_push(x_92, x_407); +lean_ctor_set(x_396, 1, x_400); +lean_ctor_set(x_396, 0, x_96); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_396); +lean_ctor_set(x_164, 0, x_94); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_409); +x_410 = lean_box(0); +x_411 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_411, 0, x_410); +lean_ctor_set(x_411, 1, x_163); +x_412 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_412, 0, x_411); +lean_ctor_set(x_412, 1, x_408); +x_38 = x_412; +goto block_89; +} +} +else +{ +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; lean_object* x_421; lean_object* x_422; lean_object* x_423; lean_object* x_424; +x_413 = lean_ctor_get(x_396, 0); +x_414 = lean_ctor_get(x_396, 1); +lean_inc(x_414); +lean_inc(x_413); +lean_dec(x_396); +x_415 = lean_array_push(x_97, x_413); +x_416 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_395, x_14, x_15, x_414); +lean_dec(x_395); +x_417 = lean_ctor_get(x_416, 0); +lean_inc(x_417); +x_418 = lean_ctor_get(x_416, 1); +lean_inc(x_418); +if (lean_is_exclusive(x_416)) { + lean_ctor_release(x_416, 0); + lean_ctor_release(x_416, 1); + x_419 = x_416; } else { - x_205 = x_37; -} -lean_ctor_set(x_205, 0, x_35); -lean_ctor_set(x_205, 1, x_204); -if (lean_is_scalar(x_34)) { - x_206 = lean_alloc_ctor(0, 2, 0); + lean_dec_ref(x_416); + x_419 = lean_box(0); +} +x_420 = lean_array_push(x_92, x_417); +x_421 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_421, 0, x_96); +lean_ctor_set(x_421, 1, x_415); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_421); +lean_ctor_set(x_164, 0, x_94); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_420); +x_422 = lean_box(0); +x_423 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_423, 0, x_422); +lean_ctor_set(x_423, 1, x_163); +if (lean_is_scalar(x_419)) { + x_424 = lean_alloc_ctor(0, 2, 0); +} else { + x_424 = x_419; +} +lean_ctor_set(x_424, 0, x_423); +lean_ctor_set(x_424, 1, x_418); +x_38 = x_424; +goto block_89; +} +} +else +{ +lean_object* x_425; lean_object* x_426; 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_object* x_440; lean_object* x_441; lean_object* x_442; +x_425 = lean_ctor_get(x_163, 1); +lean_inc(x_425); +lean_dec(x_163); +x_426 = lean_ctor_get(x_309, 0); +lean_inc(x_426); +lean_dec(x_309); +x_427 = lean_ctor_get(x_359, 0); +lean_inc(x_427); +lean_dec(x_359); +x_428 = l_Lean_Meta_SimpExtension_getTheorems(x_426, x_14, x_15, x_425); +lean_dec(x_426); +x_429 = lean_ctor_get(x_428, 0); +lean_inc(x_429); +x_430 = lean_ctor_get(x_428, 1); +lean_inc(x_430); +if (lean_is_exclusive(x_428)) { + lean_ctor_release(x_428, 0); + lean_ctor_release(x_428, 1); + x_431 = x_428; +} else { + lean_dec_ref(x_428); + x_431 = lean_box(0); +} +x_432 = lean_array_push(x_97, x_429); +x_433 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_427, x_14, x_15, x_430); +lean_dec(x_427); +x_434 = lean_ctor_get(x_433, 0); +lean_inc(x_434); +x_435 = lean_ctor_get(x_433, 1); +lean_inc(x_435); +if (lean_is_exclusive(x_433)) { + lean_ctor_release(x_433, 0); + lean_ctor_release(x_433, 1); + x_436 = x_433; +} else { + lean_dec_ref(x_433); + x_436 = lean_box(0); +} +x_437 = lean_array_push(x_92, x_434); +if (lean_is_scalar(x_431)) { + x_438 = lean_alloc_ctor(0, 2, 0); +} else { + x_438 = x_431; +} +lean_ctor_set(x_438, 0, x_96); +lean_ctor_set(x_438, 1, x_432); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_438); +lean_ctor_set(x_164, 0, x_94); +x_439 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_439, 0, x_437); +lean_ctor_set(x_439, 1, x_164); +x_440 = lean_box(0); +x_441 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_441, 0, x_440); +lean_ctor_set(x_441, 1, x_439); +if (lean_is_scalar(x_436)) { + x_442 = lean_alloc_ctor(0, 2, 0); +} else { + x_442 = x_436; +} +lean_ctor_set(x_442, 0, x_441); +lean_ctor_set(x_442, 1, x_435); +x_38 = x_442; +goto block_89; +} +} +} +else +{ +lean_object* x_443; +x_443 = lean_ctor_get(x_164, 1); +lean_inc(x_443); +lean_dec(x_164); +if (lean_obj_tag(x_443) == 0) +{ +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_object* x_457; +x_444 = lean_ctor_get(x_163, 1); +lean_inc(x_444); +if (lean_is_exclusive(x_163)) { + lean_ctor_release(x_163, 0); + lean_ctor_release(x_163, 1); + x_445 = x_163; +} else { + lean_dec_ref(x_163); + x_445 = lean_box(0); +} +x_446 = lean_ctor_get(x_309, 0); +lean_inc(x_446); +lean_dec(x_309); +x_447 = l_Lean_Meta_SimpExtension_getTheorems(x_446, x_14, x_15, x_444); +lean_dec(x_446); +x_448 = lean_ctor_get(x_447, 0); +lean_inc(x_448); +x_449 = lean_ctor_get(x_447, 1); +lean_inc(x_449); +if (lean_is_exclusive(x_447)) { + lean_ctor_release(x_447, 0); + lean_ctor_release(x_447, 1); + x_450 = x_447; +} else { + lean_dec_ref(x_447); + x_450 = lean_box(0); +} +x_451 = lean_array_push(x_97, x_448); +x_452 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_452, 0, x_96); +lean_ctor_set(x_452, 1, x_451); +if (lean_is_scalar(x_445)) { + x_453 = lean_alloc_ctor(0, 2, 0); +} else { + x_453 = x_445; +} +lean_ctor_set(x_453, 0, x_94); +lean_ctor_set(x_453, 1, x_452); +x_454 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_454, 0, x_92); +lean_ctor_set(x_454, 1, x_453); +x_455 = lean_box(0); +x_456 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_456, 0, x_455); +lean_ctor_set(x_456, 1, x_454); +if (lean_is_scalar(x_450)) { + x_457 = lean_alloc_ctor(0, 2, 0); +} else { + x_457 = x_450; +} +lean_ctor_set(x_457, 0, x_456); +lean_ctor_set(x_457, 1, x_449); +x_38 = x_457; +goto block_89; +} +else +{ +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; lean_object* x_468; 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; lean_object* x_477; +x_458 = lean_ctor_get(x_163, 1); +lean_inc(x_458); +if (lean_is_exclusive(x_163)) { + lean_ctor_release(x_163, 0); + lean_ctor_release(x_163, 1); + x_459 = x_163; } else { - x_206 = x_34; + lean_dec_ref(x_163); + x_459 = lean_box(0); } -lean_ctor_set(x_206, 0, x_33); -lean_ctor_set(x_206, 1, x_205); -if (lean_is_scalar(x_32)) { - x_207 = lean_alloc_ctor(0, 2, 0); +x_460 = lean_ctor_get(x_309, 0); +lean_inc(x_460); +lean_dec(x_309); +x_461 = lean_ctor_get(x_443, 0); +lean_inc(x_461); +lean_dec(x_443); +x_462 = l_Lean_Meta_SimpExtension_getTheorems(x_460, x_14, x_15, x_458); +lean_dec(x_460); +x_463 = lean_ctor_get(x_462, 0); +lean_inc(x_463); +x_464 = lean_ctor_get(x_462, 1); +lean_inc(x_464); +if (lean_is_exclusive(x_462)) { + lean_ctor_release(x_462, 0); + lean_ctor_release(x_462, 1); + x_465 = x_462; +} else { + lean_dec_ref(x_462); + x_465 = lean_box(0); +} +x_466 = lean_array_push(x_97, x_463); +x_467 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_461, x_14, x_15, x_464); +lean_dec(x_461); +x_468 = lean_ctor_get(x_467, 0); +lean_inc(x_468); +x_469 = lean_ctor_get(x_467, 1); +lean_inc(x_469); +if (lean_is_exclusive(x_467)) { + lean_ctor_release(x_467, 0); + lean_ctor_release(x_467, 1); + x_470 = x_467; } else { - x_207 = x_32; + lean_dec_ref(x_467); + x_470 = lean_box(0); } -lean_ctor_set(x_207, 0, x_31); -lean_ctor_set(x_207, 1, x_206); -x_208 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_208, 0, x_207); -x_20 = x_208; -x_21 = x_203; -goto block_28; -} -} -else -{ -lean_object* x_209; lean_object* x_210; uint8_t x_211; -x_209 = lean_ctor_get(x_66, 1); -lean_inc(x_209); -lean_dec(x_66); -x_210 = lean_ctor_get(x_168, 0); -lean_inc(x_210); -lean_dec(x_168); -x_211 = !lean_is_exclusive(x_189); -if (x_211 == 0) -{ -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; lean_object* x_219; lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; -x_212 = lean_ctor_get(x_189, 0); -x_213 = l_Lean_Meta_SimpExtension_getTheorems(x_210, x_14, x_15, x_209); -lean_dec(x_210); -x_214 = lean_ctor_get(x_213, 0); -lean_inc(x_214); -x_215 = lean_ctor_get(x_213, 1); -lean_inc(x_215); -lean_dec(x_213); -x_216 = lean_array_push(x_36, x_214); -x_217 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_212, x_14, x_15, x_215); -lean_dec(x_212); -x_218 = lean_ctor_get(x_217, 0); -lean_inc(x_218); -x_219 = lean_ctor_get(x_217, 1); -lean_inc(x_219); -lean_dec(x_217); -x_220 = lean_array_push(x_31, x_218); -if (lean_is_scalar(x_37)) { - x_221 = lean_alloc_ctor(0, 2, 0); +x_471 = lean_array_push(x_92, x_468); +if (lean_is_scalar(x_465)) { + x_472 = lean_alloc_ctor(0, 2, 0); } else { - x_221 = x_37; + x_472 = x_465; } -lean_ctor_set(x_221, 0, x_35); -lean_ctor_set(x_221, 1, x_216); -if (lean_is_scalar(x_34)) { - x_222 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_472, 0, x_96); +lean_ctor_set(x_472, 1, x_466); +x_473 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_473, 0, x_94); +lean_ctor_set(x_473, 1, x_472); +if (lean_is_scalar(x_459)) { + x_474 = lean_alloc_ctor(0, 2, 0); } else { - x_222 = x_34; + x_474 = x_459; } -lean_ctor_set(x_222, 0, x_33); -lean_ctor_set(x_222, 1, x_221); -if (lean_is_scalar(x_32)) { - x_223 = lean_alloc_ctor(0, 2, 0); -} else { - x_223 = x_32; -} -lean_ctor_set(x_223, 0, x_220); -lean_ctor_set(x_223, 1, x_222); -lean_ctor_set(x_189, 0, x_223); -x_20 = x_189; -x_21 = x_219; -goto block_28; -} -else -{ -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; -x_224 = lean_ctor_get(x_189, 0); -lean_inc(x_224); -lean_dec(x_189); -x_225 = l_Lean_Meta_SimpExtension_getTheorems(x_210, x_14, x_15, x_209); -lean_dec(x_210); -x_226 = lean_ctor_get(x_225, 0); -lean_inc(x_226); -x_227 = lean_ctor_get(x_225, 1); -lean_inc(x_227); -lean_dec(x_225); -x_228 = lean_array_push(x_36, x_226); -x_229 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_224, x_14, x_15, x_227); -lean_dec(x_224); -x_230 = lean_ctor_get(x_229, 0); -lean_inc(x_230); -x_231 = lean_ctor_get(x_229, 1); -lean_inc(x_231); -lean_dec(x_229); -x_232 = lean_array_push(x_31, x_230); -if (lean_is_scalar(x_37)) { - x_233 = lean_alloc_ctor(0, 2, 0); -} else { - x_233 = x_37; -} -lean_ctor_set(x_233, 0, x_35); -lean_ctor_set(x_233, 1, x_228); -if (lean_is_scalar(x_34)) { - x_234 = lean_alloc_ctor(0, 2, 0); -} else { - x_234 = x_34; -} -lean_ctor_set(x_234, 0, x_33); -lean_ctor_set(x_234, 1, x_233); -if (lean_is_scalar(x_32)) { - x_235 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_474, 0, x_471); +lean_ctor_set(x_474, 1, x_473); +x_475 = lean_box(0); +x_476 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_476, 0, x_475); +lean_ctor_set(x_476, 1, x_474); +if (lean_is_scalar(x_470)) { + x_477 = lean_alloc_ctor(0, 2, 0); } else { - x_235 = x_32; + x_477 = x_470; } -lean_ctor_set(x_235, 0, x_232); -lean_ctor_set(x_235, 1, x_234); -x_236 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_236, 0, x_235); -x_20 = x_236; -x_21 = x_231; -goto block_28; +lean_ctor_set(x_477, 0, x_476); +lean_ctor_set(x_477, 1, x_469); +x_38 = x_477; +goto block_89; } } } @@ -9714,42 +10361,17 @@ goto block_28; } else { -uint8_t x_237; -lean_dec(x_63); -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); +lean_object* x_478; lean_object* x_479; +lean_dec(x_160); 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); -x_237 = !lean_is_exclusive(x_66); -if (x_237 == 0) -{ -return x_66; -} -else -{ -lean_object* x_238; lean_object* x_239; lean_object* x_240; -x_238 = lean_ctor_get(x_66, 0); -x_239 = lean_ctor_get(x_66, 1); -lean_inc(x_239); -lean_inc(x_238); -lean_dec(x_66); -x_240 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_240, 0, x_238); -lean_ctor_set(x_240, 1, x_239); -return x_240; -} +x_478 = lean_ctor_get(x_163, 0); +lean_inc(x_478); +x_479 = lean_ctor_get(x_163, 1); +lean_inc(x_479); +lean_dec(x_163); +x_105 = x_478; +x_106 = x_479; +goto block_137; } } } @@ -9757,18 +10379,15 @@ return x_240; } else { -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_32); +lean_dec(x_99); if (x_2 == 0) { -uint8_t x_250; -x_250 = lean_unbox(x_33); -if (x_250 == 0) +uint8_t x_489; +x_489 = lean_unbox(x_94); +if (x_489 == 0) { -lean_object* x_251; lean_object* x_252; -x_251 = lean_box(0); +lean_object* x_490; lean_object* x_491; +x_490 = lean_box(0); lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); @@ -9777,68 +10396,55 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_252 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___lambda__1(x_19, x_36, x_33, x_1, x_31, x_35, x_251, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +lean_inc(x_96); +lean_inc(x_92); +lean_inc(x_94); +lean_inc(x_97); +x_491 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___lambda__1(x_19, x_97, x_94, x_1, x_92, x_96, x_490, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_104); lean_dec(x_19); -if (lean_obj_tag(x_252) == 0) -{ -lean_object* x_253; lean_object* x_254; -x_253 = lean_ctor_get(x_252, 0); -lean_inc(x_253); -x_254 = lean_ctor_get(x_252, 1); -lean_inc(x_254); -lean_dec(x_252); -x_20 = x_253; -x_21 = x_254; -goto block_28; -} -else -{ -uint8_t x_255; -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); -x_255 = !lean_is_exclusive(x_252); -if (x_255 == 0) +if (lean_obj_tag(x_491) == 0) { -return x_252; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_38 = x_491; +goto block_89; } else { -lean_object* x_256; lean_object* x_257; lean_object* x_258; -x_256 = lean_ctor_get(x_252, 0); -x_257 = lean_ctor_get(x_252, 1); -lean_inc(x_257); -lean_inc(x_256); -lean_dec(x_252); -x_258 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_258, 0, x_256); -lean_ctor_set(x_258, 1, x_257); -return x_258; -} +lean_object* x_492; lean_object* x_493; +x_492 = lean_ctor_get(x_491, 0); +lean_inc(x_492); +x_493 = lean_ctor_get(x_491, 1); +lean_inc(x_493); +lean_dec(x_491); +x_105 = x_492; +x_106 = x_493; +goto block_137; } } else { -lean_object* x_259; lean_object* x_260; lean_object* x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; -x_259 = lean_unsigned_to_nat(1u); -x_260 = l_Lean_Syntax_getArg(x_19, x_259); +lean_object* x_494; lean_object* x_495; lean_object* x_496; lean_object* x_497; lean_object* x_498; lean_object* x_499; +x_494 = lean_unsigned_to_nat(1u); +x_495 = l_Lean_Syntax_getArg(x_19, x_494); 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_261 = l_Lean_Elab_Term_isLocalIdent_x3f(x_260, x_10, x_11, x_12, x_13, x_14, x_15, x_16); -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_496 = l_Lean_Elab_Term_isLocalIdent_x3f(x_495, x_10, x_11, x_12, x_13, x_14, x_15, x_104); +x_497 = lean_ctor_get(x_496, 0); +lean_inc(x_497); +x_498 = lean_ctor_get(x_496, 1); +lean_inc(x_498); +lean_dec(x_496); lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); @@ -9847,69 +10453,56 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_264 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___lambda__1(x_19, x_36, x_33, x_1, x_31, x_35, x_262, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_263); +lean_inc(x_96); +lean_inc(x_92); +lean_inc(x_94); +lean_inc(x_97); +x_499 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___lambda__1(x_19, x_97, x_94, x_1, x_92, x_96, x_497, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_498); lean_dec(x_19); -if (lean_obj_tag(x_264) == 0) -{ -lean_object* x_265; lean_object* x_266; -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_20 = x_265; -x_21 = x_266; -goto block_28; -} -else -{ -uint8_t x_267; -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); -x_267 = !lean_is_exclusive(x_264); -if (x_267 == 0) +if (lean_obj_tag(x_499) == 0) { -return x_264; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_38 = x_499; +goto block_89; } else { -lean_object* x_268; lean_object* x_269; lean_object* x_270; -x_268 = lean_ctor_get(x_264, 0); -x_269 = lean_ctor_get(x_264, 1); -lean_inc(x_269); -lean_inc(x_268); -lean_dec(x_264); -x_270 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_270, 0, x_268); -lean_ctor_set(x_270, 1, x_269); -return x_270; -} +lean_object* x_500; lean_object* x_501; +x_500 = lean_ctor_get(x_499, 0); +lean_inc(x_500); +x_501 = lean_ctor_get(x_499, 1); +lean_inc(x_501); +lean_dec(x_499); +x_105 = x_500; +x_106 = x_501; +goto block_137; } } } 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; -x_271 = lean_unsigned_to_nat(1u); -x_272 = l_Lean_Syntax_getArg(x_19, x_271); +lean_object* x_502; lean_object* x_503; lean_object* x_504; lean_object* x_505; lean_object* x_506; lean_object* x_507; +x_502 = lean_unsigned_to_nat(1u); +x_503 = l_Lean_Syntax_getArg(x_19, x_502); 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_273 = l_Lean_Elab_Term_isLocalIdent_x3f(x_272, x_10, x_11, x_12, x_13, x_14, x_15, x_16); -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_504 = l_Lean_Elab_Term_isLocalIdent_x3f(x_503, x_10, x_11, x_12, x_13, x_14, x_15, x_104); +x_505 = lean_ctor_get(x_504, 0); +lean_inc(x_505); +x_506 = lean_ctor_get(x_504, 1); +lean_inc(x_506); +lean_dec(x_504); lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); @@ -9918,91 +10511,257 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_276 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___lambda__1(x_19, x_36, x_33, x_1, x_31, x_35, x_274, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_275); +lean_inc(x_96); +lean_inc(x_92); +lean_inc(x_94); +lean_inc(x_97); +x_507 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___lambda__1(x_19, x_97, x_94, x_1, x_92, x_96, x_505, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_506); lean_dec(x_19); -if (lean_obj_tag(x_276) == 0) -{ -lean_object* x_277; lean_object* x_278; -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_20 = x_277; -x_21 = x_278; -goto block_28; -} -else -{ -uint8_t x_279; -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); -x_279 = !lean_is_exclusive(x_276); -if (x_279 == 0) +if (lean_obj_tag(x_507) == 0) { -return x_276; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_38 = x_507; +goto block_89; } else { -lean_object* x_280; lean_object* x_281; lean_object* x_282; -x_280 = lean_ctor_get(x_276, 0); -x_281 = lean_ctor_get(x_276, 1); -lean_inc(x_281); -lean_inc(x_280); -lean_dec(x_276); -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_508; lean_object* x_509; +x_508 = lean_ctor_get(x_507, 0); +lean_inc(x_508); +x_509 = lean_ctor_get(x_507, 1); +lean_inc(x_509); +lean_dec(x_507); +x_105 = x_508; +x_106 = x_509; +goto block_137; } } } -block_28: +block_137: { -if (lean_obj_tag(x_20) == 0) +uint8_t x_107; +x_107 = l_Lean_Exception_isInterrupt(x_105); +if (x_107 == 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); -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; +uint8_t x_108; +x_108 = l_Lean_Exception_isRuntime(x_105); +if (x_108 == 0) +{ +uint8_t x_109; lean_object* x_110; uint8_t x_111; +x_109 = 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); +x_110 = l_Lean_Elab_Tactic_SavedState_restore(x_103, x_109, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_106); +x_111 = lean_ctor_get_uint8(x_8, sizeof(void*)*1); +if (x_111 == 0) +{ +uint8_t x_112; +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_112 = !lean_is_exclusive(x_110); +if (x_112 == 0) +{ +lean_object* x_113; +x_113 = lean_ctor_get(x_110, 0); +lean_dec(x_113); +lean_ctor_set_tag(x_110, 1); +lean_ctor_set(x_110, 0, x_105); +x_38 = x_110; +goto block_89; } 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_object* x_114; lean_object* x_115; +x_114 = lean_ctor_get(x_110, 1); +lean_inc(x_114); +lean_dec(x_110); +x_115 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_115, 0, x_105); +lean_ctor_set(x_115, 1, x_114); +x_38 = x_115; +goto block_89; +} +} +else +{ +lean_object* x_116; lean_object* x_117; +x_116 = lean_ctor_get(x_110, 1); +lean_inc(x_116); +lean_dec(x_110); +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); +x_117 = l_Lean_Elab_logException___at_Lean_Elab_Tactic_closeUsingOrAdmit___spec__1(x_105, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_116); +if (lean_obj_tag(x_117) == 0) +{ +uint8_t x_118; +x_118 = !lean_is_exclusive(x_117); +if (x_118 == 0) +{ +lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; +x_119 = lean_ctor_get(x_117, 0); +if (lean_is_scalar(x_98)) { + x_120 = lean_alloc_ctor(0, 2, 0); +} else { + x_120 = x_98; +} +lean_ctor_set(x_120, 0, x_96); +lean_ctor_set(x_120, 1, x_97); +if (lean_is_scalar(x_95)) { + x_121 = lean_alloc_ctor(0, 2, 0); +} else { + x_121 = x_95; } +lean_ctor_set(x_121, 0, x_94); +lean_ctor_set(x_121, 1, x_120); +if (lean_is_scalar(x_93)) { + x_122 = lean_alloc_ctor(0, 2, 0); +} else { + x_122 = x_93; } +lean_ctor_set(x_122, 0, x_92); +lean_ctor_set(x_122, 1, x_121); +x_123 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_123, 0, x_119); +lean_ctor_set(x_123, 1, x_122); +lean_ctor_set(x_117, 0, x_123); +x_38 = x_117; +goto block_89; } +else +{ +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_124 = lean_ctor_get(x_117, 0); +x_125 = lean_ctor_get(x_117, 1); +lean_inc(x_125); +lean_inc(x_124); +lean_dec(x_117); +if (lean_is_scalar(x_98)) { + x_126 = lean_alloc_ctor(0, 2, 0); +} else { + x_126 = x_98; } +lean_ctor_set(x_126, 0, x_96); +lean_ctor_set(x_126, 1, x_97); +if (lean_is_scalar(x_95)) { + x_127 = lean_alloc_ctor(0, 2, 0); +} else { + x_127 = x_95; } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6(lean_object* x_1, uint8_t x_2, uint8_t 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) { +lean_ctor_set(x_127, 0, x_94); +lean_ctor_set(x_127, 1, x_126); +if (lean_is_scalar(x_93)) { + x_128 = lean_alloc_ctor(0, 2, 0); +} else { + x_128 = x_93; +} +lean_ctor_set(x_128, 0, x_92); +lean_ctor_set(x_128, 1, x_127); +x_129 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_129, 0, x_124); +lean_ctor_set(x_129, 1, x_128); +x_130 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_130, 0, x_129); +lean_ctor_set(x_130, 1, x_125); +x_38 = x_130; +goto block_89; +} +} +else +{ +uint8_t x_131; +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_131 = !lean_is_exclusive(x_117); +if (x_131 == 0) +{ +x_38 = x_117; +goto block_89; +} +else +{ +lean_object* x_132; lean_object* x_133; lean_object* x_134; +x_132 = lean_ctor_get(x_117, 0); +x_133 = lean_ctor_get(x_117, 1); +lean_inc(x_133); +lean_inc(x_132); +lean_dec(x_117); +x_134 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_134, 0, x_132); +lean_ctor_set(x_134, 1, x_133); +x_38 = x_134; +goto block_89; +} +} +} +} +else +{ +lean_object* x_135; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_135 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_135, 0, x_105); +lean_ctor_set(x_135, 1, x_106); +x_38 = x_135; +goto block_89; +} +} +else +{ +lean_object* x_136; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_136 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_136, 0, x_105); +lean_ctor_set(x_136, 1, x_106); +x_38 = x_136; +goto block_89; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__7(lean_object* x_1, uint8_t x_2, uint8_t 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; @@ -10025,70 +10784,87 @@ return x_18; } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; 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_object* x_19; lean_object* x_20; lean_object* x_38; 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; uint8_t x_101; uint8_t x_102; lean_object* x_103; lean_object* x_104; lean_object* x_511; x_19 = lean_array_uget(x_4, x_6); -x_29 = lean_ctor_get(x_7, 1); -lean_inc(x_29); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -x_31 = lean_ctor_get(x_7, 0); -lean_inc(x_31); +x_90 = lean_ctor_get(x_7, 1); +lean_inc(x_90); +x_91 = lean_ctor_get(x_90, 1); +lean_inc(x_91); +x_92 = lean_ctor_get(x_7, 0); +lean_inc(x_92); if (lean_is_exclusive(x_7)) { lean_ctor_release(x_7, 0); lean_ctor_release(x_7, 1); - x_32 = x_7; + x_93 = x_7; } else { lean_dec_ref(x_7); - x_32 = lean_box(0); + x_93 = lean_box(0); } -x_33 = lean_ctor_get(x_29, 0); -lean_inc(x_33); -if (lean_is_exclusive(x_29)) { - lean_ctor_release(x_29, 0); - lean_ctor_release(x_29, 1); - x_34 = x_29; +x_94 = lean_ctor_get(x_90, 0); +lean_inc(x_94); +if (lean_is_exclusive(x_90)) { + lean_ctor_release(x_90, 0); + lean_ctor_release(x_90, 1); + x_95 = x_90; } else { - lean_dec_ref(x_29); - x_34 = lean_box(0); + lean_dec_ref(x_90); + x_95 = lean_box(0); } -x_35 = lean_ctor_get(x_30, 0); -lean_inc(x_35); -x_36 = lean_ctor_get(x_30, 1); -lean_inc(x_36); -if (lean_is_exclusive(x_30)) { - lean_ctor_release(x_30, 0); - lean_ctor_release(x_30, 1); - x_37 = x_30; +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; } else { - lean_dec_ref(x_30); - x_37 = lean_box(0); + lean_dec_ref(x_91); + x_98 = lean_box(0); } lean_inc(x_19); -x_38 = l_Lean_Syntax_getKind(x_19); -x_39 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__2; -x_40 = lean_name_eq(x_38, x_39); -if (x_40 == 0) +x_99 = l_Lean_Syntax_getKind(x_19); +x_100 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__2; +x_101 = lean_name_eq(x_99, x_100); +x_511 = l_Lean_Elab_Tactic_saveState___rarg(x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +if (x_101 == 0) { -lean_object* x_41; uint8_t x_42; -x_41 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; -x_42 = lean_name_eq(x_38, x_41); -if (x_42 == 0) +lean_object* x_512; lean_object* x_513; uint8_t x_514; +x_512 = lean_ctor_get(x_511, 0); +lean_inc(x_512); +x_513 = lean_ctor_get(x_511, 1); +lean_inc(x_513); +lean_dec(x_511); +x_514 = 0; +x_102 = x_514; +x_103 = x_512; +x_104 = x_513; +goto block_510; +} +else +{ +lean_object* x_515; lean_object* x_516; uint8_t x_517; +x_515 = lean_ctor_get(x_511, 0); +lean_inc(x_515); +x_516 = lean_ctor_get(x_511, 1); +lean_inc(x_516); +lean_dec(x_511); +x_517 = 1; +x_102 = x_517; +x_103 = x_515; +x_104 = x_516; +goto block_510; +} +block_37: { -lean_object* x_43; uint8_t x_44; -lean_dec(x_33); -lean_dec(x_19); -x_43 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__6; -x_44 = lean_name_eq(x_38, x_43); -lean_dec(x_38); -if (x_44 == 0) +if (lean_obj_tag(x_20) == 0) { -lean_object* x_45; uint8_t x_46; -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_34); -lean_dec(x_32); -lean_dec(x_31); +lean_object* x_21; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +if (lean_obj_tag(x_21) == 0) +{ +uint8_t x_22; lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); @@ -10097,1074 +10873,1788 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_45 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_elabSimpArgs___spec__1___rarg(x_16); -x_46 = !lean_is_exclusive(x_45); -if (x_46 == 0) +x_22 = !lean_is_exclusive(x_20); +if (x_22 == 0) { -return x_45; +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_20, 0); +lean_dec(x_23); +x_24 = lean_ctor_get(x_21, 0); +lean_inc(x_24); +lean_dec(x_21); +lean_ctor_set(x_20, 0, x_24); +return x_20; } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_47 = lean_ctor_get(x_45, 0); -x_48 = lean_ctor_get(x_45, 1); -lean_inc(x_48); -lean_inc(x_47); -lean_dec(x_45); -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_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_20, 1); +lean_inc(x_25); +lean_dec(x_20); +x_26 = lean_ctor_get(x_21, 0); +lean_inc(x_26); +lean_dec(x_21); +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_50; uint8_t x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -if (lean_is_scalar(x_37)) { - x_50 = lean_alloc_ctor(0, 2, 0); -} else { - x_50 = x_37; -} -lean_ctor_set(x_50, 0, x_35); -lean_ctor_set(x_50, 1, x_36); -x_51 = 1; -x_52 = lean_box(x_51); -if (lean_is_scalar(x_34)) { - x_53 = lean_alloc_ctor(0, 2, 0); -} else { - x_53 = x_34; -} -lean_ctor_set(x_53, 0, x_52); -lean_ctor_set(x_53, 1, x_50); -if (lean_is_scalar(x_32)) { - x_54 = lean_alloc_ctor(0, 2, 0); -} else { - x_54 = x_32; -} -lean_ctor_set(x_54, 0, x_31); -lean_ctor_set(x_54, 1, x_53); -x_55 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_55, 0, x_54); -x_20 = x_55; -x_21 = x_16; -goto block_28; +lean_object* x_28; lean_object* x_29; size_t x_30; size_t x_31; +x_28 = lean_ctor_get(x_20, 1); +lean_inc(x_28); +lean_dec(x_20); +x_29 = lean_ctor_get(x_21, 0); +lean_inc(x_29); +lean_dec(x_21); +x_30 = 1; +x_31 = lean_usize_add(x_6, x_30); +x_6 = x_31; +x_7 = x_29; +x_16 = x_28; +goto _start; } } else { -lean_object* x_56; lean_object* x_57; uint8_t x_58; lean_object* x_59; lean_object* x_60; uint8_t x_61; lean_object* x_62; lean_object* x_63; uint8_t x_64; -lean_dec(x_38); -x_56 = lean_unsigned_to_nat(0u); -x_57 = l_Lean_Syntax_getArg(x_19, x_56); -x_58 = l_Lean_Syntax_isNone(x_57); -x_59 = lean_unsigned_to_nat(1u); -x_60 = l_Lean_Syntax_getArg(x_19, x_59); -x_61 = l_Lean_Syntax_isNone(x_60); -lean_dec(x_60); -x_62 = lean_unsigned_to_nat(2u); -x_63 = l_Lean_Syntax_getArg(x_19, x_62); -if (x_58 == 0) +uint8_t 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); +x_33 = !lean_is_exclusive(x_20); +if (x_33 == 0) { -lean_object* x_245; lean_object* x_246; lean_object* x_247; uint8_t x_248; -x_245 = l_Lean_Syntax_getArg(x_57, x_56); -lean_dec(x_57); -x_246 = l_Lean_Syntax_getKind(x_245); -x_247 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__8; -x_248 = lean_name_eq(x_246, x_247); -lean_dec(x_246); -x_64 = x_248; -goto block_244; +return x_20; } else { -uint8_t x_249; -lean_dec(x_57); -x_249 = 1; -x_64 = x_249; -goto block_244; +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_20, 0); +x_35 = lean_ctor_get(x_20, 1); +lean_inc(x_35); +lean_inc(x_34); +lean_dec(x_20); +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; +} +} } -block_244: +block_89: { -uint8_t x_65; -if (x_61 == 0) +if (lean_obj_tag(x_38) == 0) { -uint8_t x_242; -x_242 = 1; -x_65 = x_242; -goto block_241; -} -else +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_38, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_39, 1); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_ctor_get(x_40, 1); +lean_inc(x_41); +x_42 = lean_ctor_get(x_41, 1); +lean_inc(x_42); +x_43 = !lean_is_exclusive(x_38); +if (x_43 == 0) { -uint8_t x_243; -x_243 = 0; -x_65 = x_243; -goto block_241; -} -block_241: +lean_object* x_44; uint8_t x_45; +x_44 = lean_ctor_get(x_38, 0); +lean_dec(x_44); +x_45 = !lean_is_exclusive(x_40); +if (x_45 == 0) { -lean_object* 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_63); -x_66 = l_Lean_Elab_Tactic_elabSimpArgs_resolveSimpIdTheorem_x3f(x_63, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); -if (lean_obj_tag(x_66) == 0) +lean_object* x_46; uint8_t x_47; +x_46 = lean_ctor_get(x_40, 1); +lean_dec(x_46); +x_47 = !lean_is_exclusive(x_41); +if (x_47 == 0) { -lean_object* x_67; -x_67 = lean_ctor_get(x_66, 0); -lean_inc(x_67); -switch (lean_obj_tag(x_67)) { -case 0: +lean_object* x_48; uint8_t x_49; +x_48 = lean_ctor_get(x_41, 1); +lean_dec(x_48); +x_49 = !lean_is_exclusive(x_42); +if (x_49 == 0) { -lean_object* x_68; lean_object* x_69; uint8_t x_70; -x_68 = lean_ctor_get(x_66, 1); -lean_inc(x_68); -lean_dec(x_66); -x_69 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_68); -x_70 = !lean_is_exclusive(x_69); -if (x_70 == 0) +lean_object* x_50; +x_50 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_50, 0, x_40); +lean_ctor_set(x_38, 0, x_50); +x_20 = x_38; +goto block_37; +} +else { -lean_object* x_71; lean_object* x_72; -x_71 = lean_ctor_get(x_69, 1); -lean_ctor_set_tag(x_69, 2); -lean_ctor_set(x_69, 1, x_19); -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_72 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addSimpTheorem(x_35, x_69, x_63, x_64, x_65, x_10, x_11, x_12, x_13, x_14, x_15, x_71); -if (lean_obj_tag(x_72) == 0) +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_51 = lean_ctor_get(x_42, 0); +x_52 = lean_ctor_get(x_42, 1); +lean_inc(x_52); +lean_inc(x_51); +lean_dec(x_42); +x_53 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_53, 0, x_51); +lean_ctor_set(x_53, 1, x_52); +lean_ctor_set(x_41, 1, x_53); +x_54 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_54, 0, x_40); +lean_ctor_set(x_38, 0, x_54); +x_20 = x_38; +goto block_37; +} +} +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_72, 0); -lean_inc(x_73); -x_74 = lean_ctor_get(x_72, 1); -lean_inc(x_74); -lean_dec(x_72); -if (lean_is_scalar(x_37)) { - x_75 = lean_alloc_ctor(0, 2, 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; +x_55 = lean_ctor_get(x_41, 0); +lean_inc(x_55); +lean_dec(x_41); +x_56 = lean_ctor_get(x_42, 0); +lean_inc(x_56); +x_57 = lean_ctor_get(x_42, 1); +lean_inc(x_57); +if (lean_is_exclusive(x_42)) { + lean_ctor_release(x_42, 0); + lean_ctor_release(x_42, 1); + x_58 = x_42; } else { - x_75 = x_37; + lean_dec_ref(x_42); + x_58 = lean_box(0); } -lean_ctor_set(x_75, 0, x_73); -lean_ctor_set(x_75, 1, x_36); -if (lean_is_scalar(x_34)) { - x_76 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_58)) { + x_59 = lean_alloc_ctor(0, 2, 0); } else { - x_76 = x_34; + x_59 = x_58; } -lean_ctor_set(x_76, 0, x_33); -lean_ctor_set(x_76, 1, x_75); -if (lean_is_scalar(x_32)) { - x_77 = lean_alloc_ctor(0, 2, 0); -} else { - x_77 = x_32; +lean_ctor_set(x_59, 0, x_56); +lean_ctor_set(x_59, 1, x_57); +x_60 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_60, 0, x_55); +lean_ctor_set(x_60, 1, x_59); +lean_ctor_set(x_40, 1, x_60); +x_61 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_61, 0, x_40); +lean_ctor_set(x_38, 0, x_61); +x_20 = x_38; +goto block_37; } -lean_ctor_set(x_77, 0, x_31); -lean_ctor_set(x_77, 1, x_76); -x_78 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_78, 0, x_77); -x_20 = x_78; -x_21 = x_74; -goto block_28; } else { -uint8_t x_79; -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); -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); -x_79 = !lean_is_exclusive(x_72); -if (x_79 == 0) -{ -return x_72; +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_62 = lean_ctor_get(x_40, 0); +lean_inc(x_62); +lean_dec(x_40); +x_63 = lean_ctor_get(x_41, 0); +lean_inc(x_63); +if (lean_is_exclusive(x_41)) { + lean_ctor_release(x_41, 0); + lean_ctor_release(x_41, 1); + x_64 = x_41; +} else { + lean_dec_ref(x_41); + x_64 = lean_box(0); } -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_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; +x_65 = lean_ctor_get(x_42, 0); +lean_inc(x_65); +x_66 = lean_ctor_get(x_42, 1); +lean_inc(x_66); +if (lean_is_exclusive(x_42)) { + lean_ctor_release(x_42, 0); + lean_ctor_release(x_42, 1); + x_67 = x_42; +} else { + lean_dec_ref(x_42); + 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_65); +lean_ctor_set(x_68, 1, x_66); +if (lean_is_scalar(x_64)) { + x_69 = lean_alloc_ctor(0, 2, 0); +} else { + x_69 = x_64; +} +lean_ctor_set(x_69, 0, x_63); +lean_ctor_set(x_69, 1, x_68); +x_70 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_70, 0, x_62); +lean_ctor_set(x_70, 1, x_69); +x_71 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_38, 0, x_71); +x_20 = x_38; +goto block_37; } } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; -x_83 = lean_ctor_get(x_69, 0); -x_84 = lean_ctor_get(x_69, 1); -lean_inc(x_84); -lean_inc(x_83); -lean_dec(x_69); -x_85 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_85, 0, x_83); -lean_ctor_set(x_85, 1, x_19); -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_86 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addSimpTheorem(x_35, x_85, x_63, x_64, x_65, x_10, x_11, x_12, x_13, x_14, x_15, x_84); -if (lean_obj_tag(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 = 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); -if (lean_is_scalar(x_37)) { - x_89 = lean_alloc_ctor(0, 2, 0); +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_72 = lean_ctor_get(x_38, 1); +lean_inc(x_72); +lean_dec(x_38); +x_73 = lean_ctor_get(x_40, 0); +lean_inc(x_73); +if (lean_is_exclusive(x_40)) { + lean_ctor_release(x_40, 0); + lean_ctor_release(x_40, 1); + x_74 = x_40; } else { - x_89 = x_37; + lean_dec_ref(x_40); + x_74 = lean_box(0); } -lean_ctor_set(x_89, 0, x_87); -lean_ctor_set(x_89, 1, x_36); -if (lean_is_scalar(x_34)) { - x_90 = lean_alloc_ctor(0, 2, 0); +x_75 = lean_ctor_get(x_41, 0); +lean_inc(x_75); +if (lean_is_exclusive(x_41)) { + lean_ctor_release(x_41, 0); + lean_ctor_release(x_41, 1); + x_76 = x_41; } else { - x_90 = x_34; + lean_dec_ref(x_41); + x_76 = lean_box(0); } -lean_ctor_set(x_90, 0, x_33); -lean_ctor_set(x_90, 1, x_89); -if (lean_is_scalar(x_32)) { - x_91 = lean_alloc_ctor(0, 2, 0); +x_77 = lean_ctor_get(x_42, 0); +lean_inc(x_77); +x_78 = lean_ctor_get(x_42, 1); +lean_inc(x_78); +if (lean_is_exclusive(x_42)) { + lean_ctor_release(x_42, 0); + lean_ctor_release(x_42, 1); + x_79 = x_42; } else { - x_91 = x_32; + lean_dec_ref(x_42); + x_79 = lean_box(0); } -lean_ctor_set(x_91, 0, x_31); -lean_ctor_set(x_91, 1, x_90); -x_92 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_92, 0, x_91); -x_20 = x_92; -x_21 = x_88; -goto block_28; +if (lean_is_scalar(x_79)) { + x_80 = lean_alloc_ctor(0, 2, 0); +} else { + x_80 = x_79; } -else -{ -lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); -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); -x_93 = lean_ctor_get(x_86, 0); -lean_inc(x_93); -x_94 = lean_ctor_get(x_86, 1); -lean_inc(x_94); -if (lean_is_exclusive(x_86)) { - lean_ctor_release(x_86, 0); - lean_ctor_release(x_86, 1); - x_95 = x_86; +lean_ctor_set(x_80, 0, x_77); +lean_ctor_set(x_80, 1, x_78); +if (lean_is_scalar(x_76)) { + x_81 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_86); - x_95 = lean_box(0); + x_81 = x_76; } -if (lean_is_scalar(x_95)) { - x_96 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_81, 0, x_75); +lean_ctor_set(x_81, 1, x_80); +if (lean_is_scalar(x_74)) { + x_82 = lean_alloc_ctor(0, 2, 0); } else { - x_96 = x_95; + x_82 = x_74; } -lean_ctor_set(x_96, 0, x_93); -lean_ctor_set(x_96, 1, x_94); -return x_96; +lean_ctor_set(x_82, 0, x_73); +lean_ctor_set(x_82, 1, x_81); +x_83 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_83, 0, 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_72); +x_20 = x_84; +goto block_37; } } +else +{ +uint8_t x_85; +x_85 = !lean_is_exclusive(x_38); +if (x_85 == 0) +{ +x_20 = x_38; +goto block_37; } -case 1: +else { -lean_object* x_97; uint8_t x_98; -lean_dec(x_63); -x_97 = lean_ctor_get(x_66, 1); -lean_inc(x_97); -lean_dec(x_66); -x_98 = !lean_is_exclusive(x_67); -if (x_98 == 0) +lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_86 = lean_ctor_get(x_38, 0); +x_87 = lean_ctor_get(x_38, 1); +lean_inc(x_87); +lean_inc(x_86); +lean_dec(x_38); +x_88 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_88, 0, x_86); +lean_ctor_set(x_88, 1, x_87); +x_20 = x_88; +goto block_37; +} +} +} +block_510: { -lean_object* x_99; lean_object* x_100; uint8_t x_101; -x_99 = lean_ctor_get(x_67, 0); -x_100 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_97); -x_101 = !lean_is_exclusive(x_100); -if (x_101 == 0) +lean_object* x_105; lean_object* x_106; +if (x_102 == 0) { -lean_object* x_102; lean_object* x_103; -x_102 = lean_ctor_get(x_100, 1); -lean_ctor_set_tag(x_100, 2); -lean_ctor_set(x_100, 1, x_19); -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -x_103 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem(x_35, x_100, x_99, x_64, x_65, x_3, x_12, x_13, x_14, x_15, x_102); -if (lean_obj_tag(x_103) == 0) +lean_object* x_138; uint8_t x_139; +x_138 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; +x_139 = lean_name_eq(x_99, x_138); +if (x_139 == 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_object* x_140; uint8_t x_141; +lean_dec(x_19); +x_140 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__6; +x_141 = lean_name_eq(x_99, x_140); +lean_dec(x_99); +if (x_141 == 0) +{ +lean_object* x_142; lean_object* x_143; lean_object* x_144; +x_142 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_elabSimpArgs___spec__1___rarg(x_104); +x_143 = lean_ctor_get(x_142, 0); +lean_inc(x_143); +x_144 = lean_ctor_get(x_142, 1); +lean_inc(x_144); +lean_dec(x_142); +x_105 = x_143; +x_106 = x_144; +goto block_137; +} +else +{ +lean_object* x_145; uint8_t 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_dec(x_103); -if (lean_is_scalar(x_37)) { - x_106 = lean_alloc_ctor(0, 2, 0); -} else { - x_106 = x_37; +lean_dec(x_98); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +x_145 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_145, 0, x_96); +lean_ctor_set(x_145, 1, x_97); +x_146 = 1; +x_147 = lean_box(x_146); +x_148 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_148, 0, x_147); +lean_ctor_set(x_148, 1, x_145); +x_149 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_149, 0, x_92); +lean_ctor_set(x_149, 1, x_148); +x_150 = lean_box(0); +x_151 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_151, 0, x_150); +lean_ctor_set(x_151, 1, x_149); +x_152 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_152, 0, x_151); +lean_ctor_set(x_152, 1, x_104); +x_38 = x_152; +goto block_89; } -lean_ctor_set(x_106, 0, x_104); -lean_ctor_set(x_106, 1, x_36); -if (lean_is_scalar(x_34)) { - x_107 = lean_alloc_ctor(0, 2, 0); -} else { - x_107 = x_34; } -lean_ctor_set(x_107, 0, x_33); -lean_ctor_set(x_107, 1, x_106); -if (lean_is_scalar(x_32)) { - x_108 = lean_alloc_ctor(0, 2, 0); -} else { - x_108 = x_32; +else +{ +lean_object* x_153; lean_object* x_154; uint8_t x_155; lean_object* x_156; lean_object* x_157; uint8_t x_158; lean_object* x_159; lean_object* x_160; uint8_t x_161; +lean_dec(x_99); +x_153 = lean_unsigned_to_nat(0u); +x_154 = l_Lean_Syntax_getArg(x_19, x_153); +x_155 = l_Lean_Syntax_isNone(x_154); +x_156 = lean_unsigned_to_nat(1u); +x_157 = l_Lean_Syntax_getArg(x_19, x_156); +x_158 = l_Lean_Syntax_isNone(x_157); +lean_dec(x_157); +x_159 = lean_unsigned_to_nat(2u); +x_160 = l_Lean_Syntax_getArg(x_19, x_159); +if (x_155 == 0) +{ +lean_object* x_484; lean_object* x_485; lean_object* x_486; uint8_t x_487; +x_484 = l_Lean_Syntax_getArg(x_154, x_153); +lean_dec(x_154); +x_485 = l_Lean_Syntax_getKind(x_484); +x_486 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__8; +x_487 = lean_name_eq(x_485, x_486); +lean_dec(x_485); +x_161 = x_487; +goto block_483; } -lean_ctor_set(x_108, 0, x_31); -lean_ctor_set(x_108, 1, x_107); -lean_ctor_set(x_67, 0, x_108); -x_20 = x_67; -x_21 = x_105; -goto block_28; +else +{ +uint8_t x_488; +lean_dec(x_154); +x_488 = 1; +x_161 = x_488; +goto block_483; +} +block_483: +{ +uint8_t x_162; +if (x_158 == 0) +{ +uint8_t x_481; +x_481 = 1; +x_162 = x_481; +goto block_480; } else { -uint8_t x_109; -lean_free_object(x_67); -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); -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); -x_109 = !lean_is_exclusive(x_103); -if (x_109 == 0) +uint8_t x_482; +x_482 = 0; +x_162 = x_482; +goto block_480; +} +block_480: { -return x_103; +lean_object* x_163; +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_160); +x_163 = l_Lean_Elab_Tactic_elabSimpArgs_resolveSimpIdTheorem_x3f(x_160, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_104); +if (lean_obj_tag(x_163) == 0) +{ +lean_object* x_164; +x_164 = lean_ctor_get(x_163, 0); +lean_inc(x_164); +switch (lean_obj_tag(x_164)) { +case 0: +{ +uint8_t x_165; +x_165 = !lean_is_exclusive(x_163); +if (x_165 == 0) +{ +lean_object* x_166; lean_object* x_167; lean_object* x_168; uint8_t x_169; +x_166 = lean_ctor_get(x_163, 1); +x_167 = lean_ctor_get(x_163, 0); +lean_dec(x_167); +x_168 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_166); +x_169 = !lean_is_exclusive(x_168); +if (x_169 == 0) +{ +lean_object* x_170; lean_object* x_171; +x_170 = lean_ctor_get(x_168, 1); +lean_ctor_set_tag(x_168, 2); +lean_ctor_set(x_168, 1, x_19); +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_96); +x_171 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addSimpTheorem(x_96, x_168, x_160, x_161, x_162, x_10, x_11, x_12, x_13, x_14, x_15, x_170); +if (lean_obj_tag(x_171) == 0) +{ +uint8_t x_172; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_93); +x_172 = !lean_is_exclusive(x_171); +if (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_171, 0); +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_173); +x_174 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_174, 0, x_94); +lean_ctor_set(x_174, 1, x_163); +x_175 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_175, 0, x_92); +lean_ctor_set(x_175, 1, x_174); +x_176 = lean_box(0); +x_177 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_177, 0, x_176); +lean_ctor_set(x_177, 1, x_175); +lean_ctor_set(x_171, 0, x_177); +x_38 = x_171; +goto block_89; +} +else +{ +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; +x_178 = lean_ctor_get(x_171, 0); +x_179 = lean_ctor_get(x_171, 1); +lean_inc(x_179); +lean_inc(x_178); +lean_dec(x_171); +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_178); +x_180 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_180, 0, x_94); +lean_ctor_set(x_180, 1, x_163); +x_181 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_181, 0, x_92); +lean_ctor_set(x_181, 1, x_180); +x_182 = lean_box(0); +x_183 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_183, 0, x_182); +lean_ctor_set(x_183, 1, x_181); +x_184 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_184, 0, x_183); +lean_ctor_set(x_184, 1, x_179); +x_38 = x_184; +goto block_89; +} +} +else +{ +lean_object* x_185; lean_object* x_186; +lean_free_object(x_163); +x_185 = lean_ctor_get(x_171, 0); +lean_inc(x_185); +x_186 = lean_ctor_get(x_171, 1); +lean_inc(x_186); +lean_dec(x_171); +x_105 = x_185; +x_106 = x_186; +goto block_137; +} +} +else +{ +lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; +x_187 = lean_ctor_get(x_168, 0); +x_188 = lean_ctor_get(x_168, 1); +lean_inc(x_188); +lean_inc(x_187); +lean_dec(x_168); +x_189 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_189, 0, x_187); +lean_ctor_set(x_189, 1, x_19); +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_96); +x_190 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addSimpTheorem(x_96, x_189, x_160, x_161, x_162, x_10, x_11, x_12, x_13, x_14, x_15, 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_dec(x_103); +lean_dec(x_98); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_93); +x_191 = lean_ctor_get(x_190, 0); +lean_inc(x_191); +x_192 = lean_ctor_get(x_190, 1); +lean_inc(x_192); +if (lean_is_exclusive(x_190)) { + lean_ctor_release(x_190, 0); + lean_ctor_release(x_190, 1); + x_193 = x_190; +} else { + lean_dec_ref(x_190); + x_193 = lean_box(0); +} +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_191); +x_194 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_194, 0, x_94); +lean_ctor_set(x_194, 1, x_163); +x_195 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_195, 0, x_92); +lean_ctor_set(x_195, 1, x_194); +x_196 = lean_box(0); +x_197 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_197, 0, x_196); +lean_ctor_set(x_197, 1, x_195); +if (lean_is_scalar(x_193)) { + x_198 = lean_alloc_ctor(0, 2, 0); +} else { + x_198 = x_193; +} +lean_ctor_set(x_198, 0, x_197); +lean_ctor_set(x_198, 1, x_192); +x_38 = x_198; +goto block_89; } 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; +lean_object* x_199; lean_object* x_200; +lean_free_object(x_163); +x_199 = lean_ctor_get(x_190, 0); +lean_inc(x_199); +x_200 = lean_ctor_get(x_190, 1); +lean_inc(x_200); +lean_dec(x_190); +x_105 = x_199; +x_106 = x_200; +goto block_137; } } } else { -lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; -x_113 = lean_ctor_get(x_100, 0); -x_114 = lean_ctor_get(x_100, 1); -lean_inc(x_114); -lean_inc(x_113); -lean_dec(x_100); -x_115 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_115, 0, x_113); -lean_ctor_set(x_115, 1, x_19); +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; +x_201 = lean_ctor_get(x_163, 1); +lean_inc(x_201); +lean_dec(x_163); +x_202 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_201); +x_203 = lean_ctor_get(x_202, 0); +lean_inc(x_203); +x_204 = lean_ctor_get(x_202, 1); +lean_inc(x_204); +if (lean_is_exclusive(x_202)) { + lean_ctor_release(x_202, 0); + lean_ctor_release(x_202, 1); + x_205 = x_202; +} else { + lean_dec_ref(x_202); + x_205 = lean_box(0); +} +if (lean_is_scalar(x_205)) { + x_206 = lean_alloc_ctor(2, 2, 0); +} else { + x_206 = x_205; + lean_ctor_set_tag(x_206, 2); +} +lean_ctor_set(x_206, 0, x_203); +lean_ctor_set(x_206, 1, x_19); lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); -x_116 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem(x_35, x_115, x_99, x_64, x_65, x_3, x_12, x_13, x_14, x_15, x_114); -if (lean_obj_tag(x_116) == 0) +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_96); +x_207 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addSimpTheorem(x_96, x_206, x_160, x_161, x_162, x_10, x_11, x_12, x_13, x_14, x_15, x_204); +if (lean_obj_tag(x_207) == 0) { -lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; -x_117 = lean_ctor_get(x_116, 0); -lean_inc(x_117); -x_118 = lean_ctor_get(x_116, 1); -lean_inc(x_118); -lean_dec(x_116); -if (lean_is_scalar(x_37)) { - x_119 = lean_alloc_ctor(0, 2, 0); -} else { - x_119 = x_37; -} -lean_ctor_set(x_119, 0, x_117); -lean_ctor_set(x_119, 1, x_36); -if (lean_is_scalar(x_34)) { - x_120 = lean_alloc_ctor(0, 2, 0); +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_dec(x_103); +lean_dec(x_98); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_93); +x_208 = lean_ctor_get(x_207, 0); +lean_inc(x_208); +x_209 = lean_ctor_get(x_207, 1); +lean_inc(x_209); +if (lean_is_exclusive(x_207)) { + lean_ctor_release(x_207, 0); + lean_ctor_release(x_207, 1); + x_210 = x_207; } else { - x_120 = x_34; + lean_dec_ref(x_207); + x_210 = lean_box(0); } -lean_ctor_set(x_120, 0, x_33); -lean_ctor_set(x_120, 1, x_119); -if (lean_is_scalar(x_32)) { - x_121 = lean_alloc_ctor(0, 2, 0); +x_211 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_211, 0, x_208); +lean_ctor_set(x_211, 1, x_97); +x_212 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_212, 0, x_94); +lean_ctor_set(x_212, 1, x_211); +x_213 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_213, 0, x_92); +lean_ctor_set(x_213, 1, x_212); +x_214 = lean_box(0); +x_215 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_215, 0, x_214); +lean_ctor_set(x_215, 1, x_213); +if (lean_is_scalar(x_210)) { + x_216 = lean_alloc_ctor(0, 2, 0); } else { - x_121 = x_32; + x_216 = x_210; } -lean_ctor_set(x_121, 0, x_31); -lean_ctor_set(x_121, 1, x_120); -lean_ctor_set(x_67, 0, x_121); -x_20 = x_67; -x_21 = x_118; -goto block_28; +lean_ctor_set(x_216, 0, x_215); +lean_ctor_set(x_216, 1, x_209); +x_38 = x_216; +goto block_89; } else { -lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; -lean_free_object(x_67); -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); -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); -x_122 = lean_ctor_get(x_116, 0); -lean_inc(x_122); -x_123 = lean_ctor_get(x_116, 1); -lean_inc(x_123); -if (lean_is_exclusive(x_116)) { - lean_ctor_release(x_116, 0); - lean_ctor_release(x_116, 1); - x_124 = x_116; -} else { - lean_dec_ref(x_116); - x_124 = lean_box(0); -} -if (lean_is_scalar(x_124)) { - x_125 = lean_alloc_ctor(1, 2, 0); -} else { - x_125 = x_124; -} -lean_ctor_set(x_125, 0, x_122); -lean_ctor_set(x_125, 1, x_123); -return x_125; +lean_object* x_217; lean_object* x_218; +x_217 = lean_ctor_get(x_207, 0); +lean_inc(x_217); +x_218 = lean_ctor_get(x_207, 1); +lean_inc(x_218); +lean_dec(x_207); +x_105 = x_217; +x_106 = x_218; +goto block_137; } } } -else +case 1: { -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_126 = lean_ctor_get(x_67, 0); -lean_inc(x_126); -lean_dec(x_67); -x_127 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_97); -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_127); - x_130 = lean_box(0); -} -if (lean_is_scalar(x_130)) { - x_131 = lean_alloc_ctor(2, 2, 0); -} else { - x_131 = x_130; - lean_ctor_set_tag(x_131, 2); -} -lean_ctor_set(x_131, 0, x_128); -lean_ctor_set(x_131, 1, x_19); +uint8_t x_219; +lean_dec(x_160); +x_219 = !lean_is_exclusive(x_163); +if (x_219 == 0) +{ +lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; uint8_t x_224; +x_220 = lean_ctor_get(x_163, 1); +x_221 = lean_ctor_get(x_163, 0); +lean_dec(x_221); +x_222 = lean_ctor_get(x_164, 0); +lean_inc(x_222); +lean_dec(x_164); +x_223 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_220); +x_224 = !lean_is_exclusive(x_223); +if (x_224 == 0) +{ +lean_object* x_225; lean_object* x_226; +x_225 = lean_ctor_get(x_223, 1); +lean_ctor_set_tag(x_223, 2); +lean_ctor_set(x_223, 1, x_19); lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); -x_132 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem(x_35, x_131, x_126, x_64, x_65, x_3, x_12, x_13, x_14, x_15, x_129); -if (lean_obj_tag(x_132) == 0) +lean_inc(x_96); +x_226 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem(x_96, x_223, x_222, x_161, x_162, x_3, x_12, x_13, x_14, x_15, x_225); +if (lean_obj_tag(x_226) == 0) { -lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; -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); -if (lean_is_scalar(x_37)) { - x_135 = lean_alloc_ctor(0, 2, 0); +uint8_t x_227; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_93); +x_227 = !lean_is_exclusive(x_226); +if (x_227 == 0) +{ +lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; +x_228 = lean_ctor_get(x_226, 0); +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_228); +x_229 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_229, 0, x_94); +lean_ctor_set(x_229, 1, x_163); +x_230 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_230, 0, x_92); +lean_ctor_set(x_230, 1, x_229); +x_231 = lean_box(0); +x_232 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_232, 0, x_231); +lean_ctor_set(x_232, 1, x_230); +lean_ctor_set(x_226, 0, x_232); +x_38 = x_226; +goto block_89; +} +else +{ +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_233 = lean_ctor_get(x_226, 0); +x_234 = lean_ctor_get(x_226, 1); +lean_inc(x_234); +lean_inc(x_233); +lean_dec(x_226); +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_233); +x_235 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_235, 0, x_94); +lean_ctor_set(x_235, 1, x_163); +x_236 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_236, 0, x_92); +lean_ctor_set(x_236, 1, x_235); +x_237 = lean_box(0); +x_238 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_238, 0, x_237); +lean_ctor_set(x_238, 1, x_236); +x_239 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_239, 0, x_238); +lean_ctor_set(x_239, 1, x_234); +x_38 = x_239; +goto block_89; +} +} +else +{ +lean_object* x_240; lean_object* x_241; +lean_free_object(x_163); +x_240 = lean_ctor_get(x_226, 0); +lean_inc(x_240); +x_241 = lean_ctor_get(x_226, 1); +lean_inc(x_241); +lean_dec(x_226); +x_105 = x_240; +x_106 = x_241; +goto block_137; +} +} +else +{ +lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; +x_242 = lean_ctor_get(x_223, 0); +x_243 = lean_ctor_get(x_223, 1); +lean_inc(x_243); +lean_inc(x_242); +lean_dec(x_223); +x_244 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_244, 0, x_242); +lean_ctor_set(x_244, 1, x_19); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_96); +x_245 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem(x_96, x_244, x_222, x_161, x_162, x_3, x_12, x_13, x_14, x_15, x_243); +if (lean_obj_tag(x_245) == 0) +{ +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_dec(x_103); +lean_dec(x_98); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_93); +x_246 = lean_ctor_get(x_245, 0); +lean_inc(x_246); +x_247 = lean_ctor_get(x_245, 1); +lean_inc(x_247); +if (lean_is_exclusive(x_245)) { + lean_ctor_release(x_245, 0); + lean_ctor_release(x_245, 1); + x_248 = x_245; +} else { + lean_dec_ref(x_245); + x_248 = lean_box(0); +} +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_246); +x_249 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_249, 0, x_94); +lean_ctor_set(x_249, 1, x_163); +x_250 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_250, 0, x_92); +lean_ctor_set(x_250, 1, x_249); +x_251 = lean_box(0); +x_252 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_252, 0, x_251); +lean_ctor_set(x_252, 1, x_250); +if (lean_is_scalar(x_248)) { + x_253 = lean_alloc_ctor(0, 2, 0); } else { - x_135 = x_37; + x_253 = x_248; } -lean_ctor_set(x_135, 0, x_133); -lean_ctor_set(x_135, 1, x_36); -if (lean_is_scalar(x_34)) { - x_136 = lean_alloc_ctor(0, 2, 0); -} else { - x_136 = x_34; +lean_ctor_set(x_253, 0, x_252); +lean_ctor_set(x_253, 1, x_247); +x_38 = x_253; +goto block_89; +} +else +{ +lean_object* x_254; lean_object* x_255; +lean_free_object(x_163); +x_254 = lean_ctor_get(x_245, 0); +lean_inc(x_254); +x_255 = lean_ctor_get(x_245, 1); +lean_inc(x_255); +lean_dec(x_245); +x_105 = x_254; +x_106 = x_255; +goto block_137; } -lean_ctor_set(x_136, 0, x_33); -lean_ctor_set(x_136, 1, x_135); -if (lean_is_scalar(x_32)) { - x_137 = lean_alloc_ctor(0, 2, 0); -} else { - x_137 = x_32; } -lean_ctor_set(x_137, 0, x_31); -lean_ctor_set(x_137, 1, x_136); -x_138 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_138, 0, x_137); -x_20 = x_138; -x_21 = x_134; -goto block_28; } else { -lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); -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); -x_139 = lean_ctor_get(x_132, 0); -lean_inc(x_139); -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; -} else { - lean_dec_ref(x_132); - x_141 = lean_box(0); -} -if (lean_is_scalar(x_141)) { - x_142 = lean_alloc_ctor(1, 2, 0); +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; +x_256 = lean_ctor_get(x_163, 1); +lean_inc(x_256); +lean_dec(x_163); +x_257 = lean_ctor_get(x_164, 0); +lean_inc(x_257); +lean_dec(x_164); +x_258 = l_Lean_mkFreshId___at_Lean_Elab_Tactic_elabSimpArgs___spec__2___rarg(x_15, x_256); +x_259 = lean_ctor_get(x_258, 0); +lean_inc(x_259); +x_260 = lean_ctor_get(x_258, 1); +lean_inc(x_260); +if (lean_is_exclusive(x_258)) { + lean_ctor_release(x_258, 0); + lean_ctor_release(x_258, 1); + x_261 = x_258; +} else { + lean_dec_ref(x_258); + x_261 = lean_box(0); +} +if (lean_is_scalar(x_261)) { + x_262 = lean_alloc_ctor(2, 2, 0); } else { - x_142 = x_141; + x_262 = x_261; + lean_ctor_set_tag(x_262, 2); } -lean_ctor_set(x_142, 0, x_139); -lean_ctor_set(x_142, 1, x_140); -return x_142; +lean_ctor_set(x_262, 0, x_259); +lean_ctor_set(x_262, 1, x_19); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_96); +x_263 = l___private_Lean_Elab_Tactic_Simp_0__Lean_Elab_Tactic_addDeclToUnfoldOrTheorem(x_96, x_262, x_257, x_161, x_162, x_3, x_12, x_13, x_14, x_15, x_260); +if (lean_obj_tag(x_263) == 0) +{ +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_dec(x_103); +lean_dec(x_98); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_93); +x_264 = lean_ctor_get(x_263, 0); +lean_inc(x_264); +x_265 = lean_ctor_get(x_263, 1); +lean_inc(x_265); +if (lean_is_exclusive(x_263)) { + lean_ctor_release(x_263, 0); + lean_ctor_release(x_263, 1); + x_266 = x_263; +} else { + lean_dec_ref(x_263); + x_266 = lean_box(0); +} +x_267 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_267, 0, x_264); +lean_ctor_set(x_267, 1, x_97); +x_268 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_268, 0, x_94); +lean_ctor_set(x_268, 1, x_267); +x_269 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_269, 0, x_92); +lean_ctor_set(x_269, 1, x_268); +x_270 = lean_box(0); +x_271 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_271, 0, x_270); +lean_ctor_set(x_271, 1, x_269); +if (lean_is_scalar(x_266)) { + x_272 = lean_alloc_ctor(0, 2, 0); +} else { + x_272 = x_266; +} +lean_ctor_set(x_272, 0, x_271); +lean_ctor_set(x_272, 1, x_265); +x_38 = x_272; +goto block_89; +} +else +{ +lean_object* x_273; lean_object* x_274; +x_273 = lean_ctor_get(x_263, 0); +lean_inc(x_273); +x_274 = lean_ctor_get(x_263, 1); +lean_inc(x_274); +lean_dec(x_263); +x_105 = x_273; +x_106 = x_274; +goto block_137; } } } case 2: { -lean_object* x_143; uint8_t x_144; -lean_dec(x_63); +uint8_t x_275; +lean_dec(x_160); lean_dec(x_19); -x_143 = lean_ctor_get(x_66, 1); -lean_inc(x_143); -lean_dec(x_66); -x_144 = !lean_is_exclusive(x_67); -if (x_144 == 0) +x_275 = !lean_is_exclusive(x_163); +if (x_275 == 0) { -lean_object* x_145; lean_object* x_146; -x_145 = lean_ctor_get(x_67, 0); +lean_object* x_276; lean_object* x_277; lean_object* x_278; lean_object* x_279; +x_276 = lean_ctor_get(x_163, 1); +x_277 = lean_ctor_get(x_163, 0); +lean_dec(x_277); +x_278 = lean_ctor_get(x_164, 0); +lean_inc(x_278); +lean_dec(x_164); lean_inc(x_15); lean_inc(x_14); -x_146 = l_Lean_Meta_Simp_SimprocsArray_add(x_31, x_145, x_64, x_14, x_15, x_143); -if (lean_obj_tag(x_146) == 0) -{ -lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; -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); -if (lean_is_scalar(x_37)) { - x_149 = lean_alloc_ctor(0, 2, 0); -} else { - x_149 = x_37; -} -lean_ctor_set(x_149, 0, x_35); -lean_ctor_set(x_149, 1, x_36); -if (lean_is_scalar(x_34)) { - x_150 = lean_alloc_ctor(0, 2, 0); -} else { - x_150 = x_34; -} -lean_ctor_set(x_150, 0, x_33); -lean_ctor_set(x_150, 1, x_149); -if (lean_is_scalar(x_32)) { - x_151 = lean_alloc_ctor(0, 2, 0); -} else { - x_151 = x_32; -} -lean_ctor_set(x_151, 0, x_147); -lean_ctor_set(x_151, 1, x_150); -lean_ctor_set_tag(x_67, 1); -lean_ctor_set(x_67, 0, x_151); -x_20 = x_67; -x_21 = x_148; -goto block_28; -} -else +lean_inc(x_92); +x_279 = l_Lean_Meta_Simp_SimprocsArray_add(x_92, x_278, x_161, x_14, x_15, x_276); +if (lean_obj_tag(x_279) == 0) { -uint8_t x_152; -lean_free_object(x_67); -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -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); -x_152 = !lean_is_exclusive(x_146); -if (x_152 == 0) +uint8_t x_280; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_95); +lean_dec(x_93); +lean_dec(x_92); +x_280 = !lean_is_exclusive(x_279); +if (x_280 == 0) { -return x_146; +lean_object* x_281; lean_object* x_282; lean_object* x_283; lean_object* x_284; lean_object* x_285; +x_281 = lean_ctor_get(x_279, 0); +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_96); +x_282 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_282, 0, x_94); +lean_ctor_set(x_282, 1, x_163); +x_283 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_283, 0, x_281); +lean_ctor_set(x_283, 1, x_282); +x_284 = lean_box(0); +x_285 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_285, 0, x_284); +lean_ctor_set(x_285, 1, x_283); +lean_ctor_set(x_279, 0, x_285); +x_38 = x_279; +goto block_89; +} +else +{ +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; +x_286 = lean_ctor_get(x_279, 0); +x_287 = lean_ctor_get(x_279, 1); +lean_inc(x_287); +lean_inc(x_286); +lean_dec(x_279); +lean_ctor_set(x_163, 1, x_97); +lean_ctor_set(x_163, 0, x_96); +x_288 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_288, 0, x_94); +lean_ctor_set(x_288, 1, x_163); +x_289 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_289, 0, x_286); +lean_ctor_set(x_289, 1, x_288); +x_290 = lean_box(0); +x_291 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_291, 0, x_290); +lean_ctor_set(x_291, 1, x_289); +x_292 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_292, 0, x_291); +lean_ctor_set(x_292, 1, x_287); +x_38 = x_292; +goto block_89; +} } else { -lean_object* x_153; lean_object* x_154; lean_object* x_155; -x_153 = lean_ctor_get(x_146, 0); -x_154 = lean_ctor_get(x_146, 1); -lean_inc(x_154); -lean_inc(x_153); -lean_dec(x_146); -x_155 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_155, 0, x_153); -lean_ctor_set(x_155, 1, x_154); -return x_155; -} +lean_object* x_293; lean_object* x_294; +lean_free_object(x_163); +x_293 = lean_ctor_get(x_279, 0); +lean_inc(x_293); +x_294 = lean_ctor_get(x_279, 1); +lean_inc(x_294); +lean_dec(x_279); +x_105 = x_293; +x_106 = x_294; +goto block_137; } } else { -lean_object* x_156; lean_object* x_157; -x_156 = lean_ctor_get(x_67, 0); -lean_inc(x_156); -lean_dec(x_67); +lean_object* x_295; lean_object* x_296; lean_object* x_297; +x_295 = lean_ctor_get(x_163, 1); +lean_inc(x_295); +lean_dec(x_163); +x_296 = lean_ctor_get(x_164, 0); +lean_inc(x_296); +lean_dec(x_164); lean_inc(x_15); lean_inc(x_14); -x_157 = l_Lean_Meta_Simp_SimprocsArray_add(x_31, x_156, x_64, x_14, x_15, x_143); -if (lean_obj_tag(x_157) == 0) -{ -lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; -x_158 = lean_ctor_get(x_157, 0); -lean_inc(x_158); -x_159 = lean_ctor_get(x_157, 1); -lean_inc(x_159); -lean_dec(x_157); -if (lean_is_scalar(x_37)) { - x_160 = lean_alloc_ctor(0, 2, 0); -} else { - x_160 = x_37; -} -lean_ctor_set(x_160, 0, x_35); -lean_ctor_set(x_160, 1, x_36); -if (lean_is_scalar(x_34)) { - x_161 = lean_alloc_ctor(0, 2, 0); -} else { - x_161 = x_34; -} -lean_ctor_set(x_161, 0, x_33); -lean_ctor_set(x_161, 1, x_160); -if (lean_is_scalar(x_32)) { - x_162 = lean_alloc_ctor(0, 2, 0); -} else { - x_162 = x_32; -} -lean_ctor_set(x_162, 0, x_158); -lean_ctor_set(x_162, 1, x_161); -x_163 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_163, 0, x_162); -x_20 = x_163; -x_21 = x_159; -goto block_28; -} -else +lean_inc(x_92); +x_297 = l_Lean_Meta_Simp_SimprocsArray_add(x_92, x_296, x_161, x_14, x_15, x_295); +if (lean_obj_tag(x_297) == 0) { -lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -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); -x_164 = lean_ctor_get(x_157, 0); -lean_inc(x_164); -x_165 = lean_ctor_get(x_157, 1); -lean_inc(x_165); -if (lean_is_exclusive(x_157)) { - lean_ctor_release(x_157, 0); - lean_ctor_release(x_157, 1); - x_166 = x_157; -} else { - lean_dec_ref(x_157); - 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; +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; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_95); +lean_dec(x_93); +lean_dec(x_92); +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; +} else { + lean_dec_ref(x_297); + x_300 = lean_box(0); +} +x_301 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_301, 0, x_96); +lean_ctor_set(x_301, 1, x_97); +x_302 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_302, 0, x_94); +lean_ctor_set(x_302, 1, x_301); +x_303 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_303, 0, x_298); +lean_ctor_set(x_303, 1, x_302); +x_304 = lean_box(0); +x_305 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_305, 0, x_304); +lean_ctor_set(x_305, 1, x_303); +if (lean_is_scalar(x_300)) { + x_306 = lean_alloc_ctor(0, 2, 0); +} else { + x_306 = x_300; +} +lean_ctor_set(x_306, 0, x_305); +lean_ctor_set(x_306, 1, x_299); +x_38 = x_306; +goto block_89; +} +else +{ +lean_object* x_307; lean_object* x_308; +x_307 = lean_ctor_get(x_297, 0); +lean_inc(x_307); +x_308 = lean_ctor_get(x_297, 1); +lean_inc(x_308); +lean_dec(x_297); +x_105 = x_307; +x_106 = x_308; +goto block_137; } } } default: { -lean_object* x_168; -lean_dec(x_63); +lean_object* x_309; +lean_dec(x_160); +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_95); +lean_dec(x_93); lean_dec(x_19); -x_168 = lean_ctor_get(x_67, 0); -lean_inc(x_168); -if (lean_obj_tag(x_168) == 0) -{ -lean_object* x_169; lean_object* x_170; uint8_t x_171; -x_169 = lean_ctor_get(x_67, 1); -lean_inc(x_169); -lean_dec(x_67); -x_170 = lean_ctor_get(x_66, 1); -lean_inc(x_170); -lean_dec(x_66); -x_171 = !lean_is_exclusive(x_169); -if (x_171 == 0) -{ -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_172 = lean_ctor_get(x_169, 0); -x_173 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_172, x_14, x_15, x_170); -lean_dec(x_172); -x_174 = lean_ctor_get(x_173, 0); -lean_inc(x_174); -x_175 = lean_ctor_get(x_173, 1); -lean_inc(x_175); -lean_dec(x_173); -x_176 = lean_array_push(x_31, x_174); -if (lean_is_scalar(x_37)) { - x_177 = lean_alloc_ctor(0, 2, 0); -} else { - x_177 = x_37; -} -lean_ctor_set(x_177, 0, x_35); -lean_ctor_set(x_177, 1, x_36); -if (lean_is_scalar(x_34)) { - x_178 = lean_alloc_ctor(0, 2, 0); -} else { - x_178 = x_34; -} -lean_ctor_set(x_178, 0, x_33); -lean_ctor_set(x_178, 1, x_177); -if (lean_is_scalar(x_32)) { - x_179 = lean_alloc_ctor(0, 2, 0); -} else { - x_179 = x_32; -} -lean_ctor_set(x_179, 0, x_176); -lean_ctor_set(x_179, 1, x_178); -lean_ctor_set(x_169, 0, x_179); -x_20 = x_169; -x_21 = x_175; -goto block_28; -} -else -{ -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; -x_180 = lean_ctor_get(x_169, 0); -lean_inc(x_180); -lean_dec(x_169); -x_181 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_180, x_14, x_15, x_170); -lean_dec(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 = lean_array_push(x_31, x_182); -if (lean_is_scalar(x_37)) { - x_185 = lean_alloc_ctor(0, 2, 0); -} else { - x_185 = x_37; -} -lean_ctor_set(x_185, 0, x_35); -lean_ctor_set(x_185, 1, x_36); -if (lean_is_scalar(x_34)) { - x_186 = lean_alloc_ctor(0, 2, 0); -} else { - x_186 = x_34; -} -lean_ctor_set(x_186, 0, x_33); -lean_ctor_set(x_186, 1, x_185); -if (lean_is_scalar(x_32)) { - x_187 = lean_alloc_ctor(0, 2, 0); -} else { - x_187 = x_32; -} -lean_ctor_set(x_187, 0, x_184); -lean_ctor_set(x_187, 1, x_186); -x_188 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_188, 0, x_187); -x_20 = x_188; -x_21 = x_183; -goto block_28; +x_309 = lean_ctor_get(x_164, 0); +lean_inc(x_309); +if (lean_obj_tag(x_309) == 0) +{ +uint8_t x_310; +x_310 = !lean_is_exclusive(x_164); +if (x_310 == 0) +{ +lean_object* x_311; lean_object* x_312; uint8_t x_313; +x_311 = lean_ctor_get(x_164, 1); +x_312 = lean_ctor_get(x_164, 0); +lean_dec(x_312); +x_313 = !lean_is_exclusive(x_163); +if (x_313 == 0) +{ +lean_object* x_314; lean_object* x_315; lean_object* x_316; lean_object* x_317; uint8_t x_318; +x_314 = lean_ctor_get(x_163, 1); +x_315 = lean_ctor_get(x_163, 0); +lean_dec(x_315); +x_316 = lean_ctor_get(x_311, 0); +lean_inc(x_316); +lean_dec(x_311); +x_317 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_316, x_14, x_15, x_314); +lean_dec(x_316); +x_318 = !lean_is_exclusive(x_317); +if (x_318 == 0) +{ +lean_object* x_319; lean_object* x_320; lean_object* x_321; lean_object* x_322; lean_object* x_323; +x_319 = lean_ctor_get(x_317, 0); +x_320 = lean_array_push(x_92, x_319); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_97); +lean_ctor_set(x_164, 0, x_96); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_94); +x_321 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_321, 0, x_320); +lean_ctor_set(x_321, 1, x_163); +x_322 = lean_box(0); +x_323 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_323, 0, x_322); +lean_ctor_set(x_323, 1, x_321); +lean_ctor_set(x_317, 0, x_323); +x_38 = x_317; +goto block_89; +} +else +{ +lean_object* x_324; lean_object* x_325; lean_object* x_326; lean_object* x_327; lean_object* x_328; lean_object* x_329; lean_object* x_330; +x_324 = lean_ctor_get(x_317, 0); +x_325 = lean_ctor_get(x_317, 1); +lean_inc(x_325); +lean_inc(x_324); +lean_dec(x_317); +x_326 = lean_array_push(x_92, x_324); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_97); +lean_ctor_set(x_164, 0, x_96); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_94); +x_327 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_327, 0, x_326); +lean_ctor_set(x_327, 1, x_163); +x_328 = lean_box(0); +x_329 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_329, 0, x_328); +lean_ctor_set(x_329, 1, x_327); +x_330 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_330, 0, x_329); +lean_ctor_set(x_330, 1, x_325); +x_38 = x_330; +goto block_89; } } else { -lean_object* x_189; -x_189 = lean_ctor_get(x_67, 1); -lean_inc(x_189); -lean_dec(x_67); -if (lean_obj_tag(x_189) == 0) -{ -lean_object* x_190; uint8_t x_191; -x_190 = lean_ctor_get(x_66, 1); -lean_inc(x_190); -lean_dec(x_66); -x_191 = !lean_is_exclusive(x_168); -if (x_191 == 0) -{ -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; -x_192 = lean_ctor_get(x_168, 0); -x_193 = l_Lean_Meta_SimpExtension_getTheorems(x_192, x_14, x_15, x_190); -lean_dec(x_192); -x_194 = lean_ctor_get(x_193, 0); -lean_inc(x_194); -x_195 = lean_ctor_get(x_193, 1); -lean_inc(x_195); -lean_dec(x_193); -x_196 = lean_array_push(x_36, x_194); -if (lean_is_scalar(x_37)) { - x_197 = lean_alloc_ctor(0, 2, 0); -} else { - x_197 = x_37; -} -lean_ctor_set(x_197, 0, x_35); -lean_ctor_set(x_197, 1, x_196); -if (lean_is_scalar(x_34)) { - x_198 = lean_alloc_ctor(0, 2, 0); +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_object* x_342; +x_331 = lean_ctor_get(x_163, 1); +lean_inc(x_331); +lean_dec(x_163); +x_332 = lean_ctor_get(x_311, 0); +lean_inc(x_332); +lean_dec(x_311); +x_333 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_332, x_14, x_15, x_331); +lean_dec(x_332); +x_334 = lean_ctor_get(x_333, 0); +lean_inc(x_334); +x_335 = lean_ctor_get(x_333, 1); +lean_inc(x_335); +if (lean_is_exclusive(x_333)) { + lean_ctor_release(x_333, 0); + lean_ctor_release(x_333, 1); + x_336 = x_333; +} else { + lean_dec_ref(x_333); + x_336 = lean_box(0); +} +x_337 = lean_array_push(x_92, x_334); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_97); +lean_ctor_set(x_164, 0, x_96); +x_338 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_338, 0, x_94); +lean_ctor_set(x_338, 1, x_164); +x_339 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_339, 0, x_337); +lean_ctor_set(x_339, 1, x_338); +x_340 = lean_box(0); +x_341 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_341, 0, x_340); +lean_ctor_set(x_341, 1, x_339); +if (lean_is_scalar(x_336)) { + x_342 = lean_alloc_ctor(0, 2, 0); +} else { + x_342 = x_336; +} +lean_ctor_set(x_342, 0, x_341); +lean_ctor_set(x_342, 1, x_335); +x_38 = x_342; +goto block_89; +} +} +else +{ +lean_object* x_343; lean_object* x_344; 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_355; lean_object* x_356; lean_object* x_357; +x_343 = lean_ctor_get(x_164, 1); +lean_inc(x_343); +lean_dec(x_164); +x_344 = lean_ctor_get(x_163, 1); +lean_inc(x_344); +if (lean_is_exclusive(x_163)) { + lean_ctor_release(x_163, 0); + lean_ctor_release(x_163, 1); + x_345 = x_163; } else { - x_198 = x_34; + lean_dec_ref(x_163); + x_345 = lean_box(0); } -lean_ctor_set(x_198, 0, x_33); -lean_ctor_set(x_198, 1, x_197); -if (lean_is_scalar(x_32)) { - x_199 = lean_alloc_ctor(0, 2, 0); -} else { - x_199 = x_32; +x_346 = lean_ctor_get(x_343, 0); +lean_inc(x_346); +lean_dec(x_343); +x_347 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_346, x_14, x_15, x_344); +lean_dec(x_346); +x_348 = lean_ctor_get(x_347, 0); +lean_inc(x_348); +x_349 = lean_ctor_get(x_347, 1); +lean_inc(x_349); +if (lean_is_exclusive(x_347)) { + lean_ctor_release(x_347, 0); + lean_ctor_release(x_347, 1); + x_350 = x_347; +} else { + lean_dec_ref(x_347); + x_350 = lean_box(0); +} +x_351 = lean_array_push(x_92, x_348); +x_352 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_352, 0, x_96); +lean_ctor_set(x_352, 1, x_97); +if (lean_is_scalar(x_345)) { + x_353 = lean_alloc_ctor(0, 2, 0); +} else { + x_353 = x_345; +} +lean_ctor_set(x_353, 0, x_94); +lean_ctor_set(x_353, 1, x_352); +x_354 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_354, 0, x_351); +lean_ctor_set(x_354, 1, x_353); +x_355 = lean_box(0); +x_356 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_356, 0, x_355); +lean_ctor_set(x_356, 1, x_354); +if (lean_is_scalar(x_350)) { + x_357 = lean_alloc_ctor(0, 2, 0); +} else { + x_357 = x_350; +} +lean_ctor_set(x_357, 0, x_356); +lean_ctor_set(x_357, 1, x_349); +x_38 = x_357; +goto block_89; +} +} +else +{ +uint8_t x_358; +x_358 = !lean_is_exclusive(x_164); +if (x_358 == 0) +{ +lean_object* x_359; lean_object* x_360; +x_359 = lean_ctor_get(x_164, 1); +x_360 = lean_ctor_get(x_164, 0); +lean_dec(x_360); +if (lean_obj_tag(x_359) == 0) +{ +uint8_t x_361; +x_361 = !lean_is_exclusive(x_163); +if (x_361 == 0) +{ +lean_object* x_362; lean_object* x_363; lean_object* x_364; lean_object* x_365; uint8_t x_366; +x_362 = lean_ctor_get(x_163, 1); +x_363 = lean_ctor_get(x_163, 0); +lean_dec(x_363); +x_364 = lean_ctor_get(x_309, 0); +lean_inc(x_364); +lean_dec(x_309); +x_365 = l_Lean_Meta_SimpExtension_getTheorems(x_364, x_14, x_15, x_362); +lean_dec(x_364); +x_366 = !lean_is_exclusive(x_365); +if (x_366 == 0) +{ +lean_object* x_367; lean_object* x_368; lean_object* x_369; lean_object* x_370; lean_object* x_371; +x_367 = lean_ctor_get(x_365, 0); +x_368 = lean_array_push(x_97, x_367); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_368); +lean_ctor_set(x_164, 0, x_96); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_94); +x_369 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_369, 0, x_92); +lean_ctor_set(x_369, 1, x_163); +x_370 = lean_box(0); +x_371 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_371, 0, x_370); +lean_ctor_set(x_371, 1, x_369); +lean_ctor_set(x_365, 0, x_371); +x_38 = x_365; +goto block_89; +} +else +{ +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; +x_372 = lean_ctor_get(x_365, 0); +x_373 = lean_ctor_get(x_365, 1); +lean_inc(x_373); +lean_inc(x_372); +lean_dec(x_365); +x_374 = lean_array_push(x_97, x_372); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_374); +lean_ctor_set(x_164, 0, x_96); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_94); +x_375 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_375, 0, x_92); +lean_ctor_set(x_375, 1, x_163); +x_376 = lean_box(0); +x_377 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_377, 0, x_376); +lean_ctor_set(x_377, 1, x_375); +x_378 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_378, 0, x_377); +lean_ctor_set(x_378, 1, x_373); +x_38 = x_378; +goto block_89; } -lean_ctor_set(x_199, 0, x_31); -lean_ctor_set(x_199, 1, x_198); -lean_ctor_set(x_168, 0, x_199); -x_20 = x_168; -x_21 = x_195; -goto block_28; } 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; -x_200 = lean_ctor_get(x_168, 0); -lean_inc(x_200); -lean_dec(x_168); -x_201 = l_Lean_Meta_SimpExtension_getTheorems(x_200, x_14, x_15, x_190); -lean_dec(x_200); -x_202 = lean_ctor_get(x_201, 0); -lean_inc(x_202); -x_203 = lean_ctor_get(x_201, 1); -lean_inc(x_203); -lean_dec(x_201); -x_204 = lean_array_push(x_36, x_202); -if (lean_is_scalar(x_37)) { - x_205 = lean_alloc_ctor(0, 2, 0); +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; +x_379 = lean_ctor_get(x_163, 1); +lean_inc(x_379); +lean_dec(x_163); +x_380 = lean_ctor_get(x_309, 0); +lean_inc(x_380); +lean_dec(x_309); +x_381 = l_Lean_Meta_SimpExtension_getTheorems(x_380, x_14, x_15, x_379); +lean_dec(x_380); +x_382 = lean_ctor_get(x_381, 0); +lean_inc(x_382); +x_383 = lean_ctor_get(x_381, 1); +lean_inc(x_383); +if (lean_is_exclusive(x_381)) { + lean_ctor_release(x_381, 0); + lean_ctor_release(x_381, 1); + x_384 = x_381; +} else { + lean_dec_ref(x_381); + x_384 = lean_box(0); +} +x_385 = lean_array_push(x_97, x_382); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_385); +lean_ctor_set(x_164, 0, x_96); +x_386 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_386, 0, x_94); +lean_ctor_set(x_386, 1, x_164); +x_387 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_387, 0, x_92); +lean_ctor_set(x_387, 1, x_386); +x_388 = lean_box(0); +x_389 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_389, 0, x_388); +lean_ctor_set(x_389, 1, x_387); +if (lean_is_scalar(x_384)) { + x_390 = lean_alloc_ctor(0, 2, 0); +} else { + x_390 = x_384; +} +lean_ctor_set(x_390, 0, x_389); +lean_ctor_set(x_390, 1, x_383); +x_38 = x_390; +goto block_89; +} +} +else +{ +uint8_t x_391; +x_391 = !lean_is_exclusive(x_163); +if (x_391 == 0) +{ +lean_object* x_392; lean_object* x_393; lean_object* x_394; lean_object* x_395; lean_object* x_396; uint8_t x_397; +x_392 = lean_ctor_get(x_163, 1); +x_393 = lean_ctor_get(x_163, 0); +lean_dec(x_393); +x_394 = lean_ctor_get(x_309, 0); +lean_inc(x_394); +lean_dec(x_309); +x_395 = lean_ctor_get(x_359, 0); +lean_inc(x_395); +lean_dec(x_359); +x_396 = l_Lean_Meta_SimpExtension_getTheorems(x_394, x_14, x_15, x_392); +lean_dec(x_394); +x_397 = !lean_is_exclusive(x_396); +if (x_397 == 0) +{ +lean_object* x_398; lean_object* x_399; lean_object* x_400; lean_object* x_401; uint8_t x_402; +x_398 = lean_ctor_get(x_396, 0); +x_399 = lean_ctor_get(x_396, 1); +x_400 = lean_array_push(x_97, x_398); +x_401 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_395, x_14, x_15, x_399); +lean_dec(x_395); +x_402 = !lean_is_exclusive(x_401); +if (x_402 == 0) +{ +lean_object* x_403; lean_object* x_404; lean_object* x_405; lean_object* x_406; +x_403 = lean_ctor_get(x_401, 0); +x_404 = lean_array_push(x_92, x_403); +lean_ctor_set(x_396, 1, x_400); +lean_ctor_set(x_396, 0, x_96); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_396); +lean_ctor_set(x_164, 0, x_94); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_404); +x_405 = lean_box(0); +x_406 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_406, 0, x_405); +lean_ctor_set(x_406, 1, x_163); +lean_ctor_set(x_401, 0, x_406); +x_38 = x_401; +goto block_89; +} +else +{ +lean_object* x_407; lean_object* x_408; lean_object* x_409; lean_object* x_410; lean_object* x_411; lean_object* x_412; +x_407 = lean_ctor_get(x_401, 0); +x_408 = lean_ctor_get(x_401, 1); +lean_inc(x_408); +lean_inc(x_407); +lean_dec(x_401); +x_409 = lean_array_push(x_92, x_407); +lean_ctor_set(x_396, 1, x_400); +lean_ctor_set(x_396, 0, x_96); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_396); +lean_ctor_set(x_164, 0, x_94); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_409); +x_410 = lean_box(0); +x_411 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_411, 0, x_410); +lean_ctor_set(x_411, 1, x_163); +x_412 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_412, 0, x_411); +lean_ctor_set(x_412, 1, x_408); +x_38 = x_412; +goto block_89; +} +} +else +{ +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; lean_object* x_421; lean_object* x_422; lean_object* x_423; lean_object* x_424; +x_413 = lean_ctor_get(x_396, 0); +x_414 = lean_ctor_get(x_396, 1); +lean_inc(x_414); +lean_inc(x_413); +lean_dec(x_396); +x_415 = lean_array_push(x_97, x_413); +x_416 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_395, x_14, x_15, x_414); +lean_dec(x_395); +x_417 = lean_ctor_get(x_416, 0); +lean_inc(x_417); +x_418 = lean_ctor_get(x_416, 1); +lean_inc(x_418); +if (lean_is_exclusive(x_416)) { + lean_ctor_release(x_416, 0); + lean_ctor_release(x_416, 1); + x_419 = x_416; } else { - x_205 = x_37; -} -lean_ctor_set(x_205, 0, x_35); -lean_ctor_set(x_205, 1, x_204); -if (lean_is_scalar(x_34)) { - x_206 = lean_alloc_ctor(0, 2, 0); + lean_dec_ref(x_416); + x_419 = lean_box(0); +} +x_420 = lean_array_push(x_92, x_417); +x_421 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_421, 0, x_96); +lean_ctor_set(x_421, 1, x_415); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_421); +lean_ctor_set(x_164, 0, x_94); +lean_ctor_set(x_163, 1, x_164); +lean_ctor_set(x_163, 0, x_420); +x_422 = lean_box(0); +x_423 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_423, 0, x_422); +lean_ctor_set(x_423, 1, x_163); +if (lean_is_scalar(x_419)) { + x_424 = lean_alloc_ctor(0, 2, 0); +} else { + x_424 = x_419; +} +lean_ctor_set(x_424, 0, x_423); +lean_ctor_set(x_424, 1, x_418); +x_38 = x_424; +goto block_89; +} +} +else +{ +lean_object* x_425; lean_object* x_426; 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_object* x_440; lean_object* x_441; lean_object* x_442; +x_425 = lean_ctor_get(x_163, 1); +lean_inc(x_425); +lean_dec(x_163); +x_426 = lean_ctor_get(x_309, 0); +lean_inc(x_426); +lean_dec(x_309); +x_427 = lean_ctor_get(x_359, 0); +lean_inc(x_427); +lean_dec(x_359); +x_428 = l_Lean_Meta_SimpExtension_getTheorems(x_426, x_14, x_15, x_425); +lean_dec(x_426); +x_429 = lean_ctor_get(x_428, 0); +lean_inc(x_429); +x_430 = lean_ctor_get(x_428, 1); +lean_inc(x_430); +if (lean_is_exclusive(x_428)) { + lean_ctor_release(x_428, 0); + lean_ctor_release(x_428, 1); + x_431 = x_428; +} else { + lean_dec_ref(x_428); + x_431 = lean_box(0); +} +x_432 = lean_array_push(x_97, x_429); +x_433 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_427, x_14, x_15, x_430); +lean_dec(x_427); +x_434 = lean_ctor_get(x_433, 0); +lean_inc(x_434); +x_435 = lean_ctor_get(x_433, 1); +lean_inc(x_435); +if (lean_is_exclusive(x_433)) { + lean_ctor_release(x_433, 0); + lean_ctor_release(x_433, 1); + x_436 = x_433; +} else { + lean_dec_ref(x_433); + x_436 = lean_box(0); +} +x_437 = lean_array_push(x_92, x_434); +if (lean_is_scalar(x_431)) { + x_438 = lean_alloc_ctor(0, 2, 0); +} else { + x_438 = x_431; +} +lean_ctor_set(x_438, 0, x_96); +lean_ctor_set(x_438, 1, x_432); +lean_ctor_set_tag(x_164, 0); +lean_ctor_set(x_164, 1, x_438); +lean_ctor_set(x_164, 0, x_94); +x_439 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_439, 0, x_437); +lean_ctor_set(x_439, 1, x_164); +x_440 = lean_box(0); +x_441 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_441, 0, x_440); +lean_ctor_set(x_441, 1, x_439); +if (lean_is_scalar(x_436)) { + x_442 = lean_alloc_ctor(0, 2, 0); +} else { + x_442 = x_436; +} +lean_ctor_set(x_442, 0, x_441); +lean_ctor_set(x_442, 1, x_435); +x_38 = x_442; +goto block_89; +} +} +} +else +{ +lean_object* x_443; +x_443 = lean_ctor_get(x_164, 1); +lean_inc(x_443); +lean_dec(x_164); +if (lean_obj_tag(x_443) == 0) +{ +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_object* x_457; +x_444 = lean_ctor_get(x_163, 1); +lean_inc(x_444); +if (lean_is_exclusive(x_163)) { + lean_ctor_release(x_163, 0); + lean_ctor_release(x_163, 1); + x_445 = x_163; +} else { + lean_dec_ref(x_163); + x_445 = lean_box(0); +} +x_446 = lean_ctor_get(x_309, 0); +lean_inc(x_446); +lean_dec(x_309); +x_447 = l_Lean_Meta_SimpExtension_getTheorems(x_446, x_14, x_15, x_444); +lean_dec(x_446); +x_448 = lean_ctor_get(x_447, 0); +lean_inc(x_448); +x_449 = lean_ctor_get(x_447, 1); +lean_inc(x_449); +if (lean_is_exclusive(x_447)) { + lean_ctor_release(x_447, 0); + lean_ctor_release(x_447, 1); + x_450 = x_447; +} else { + lean_dec_ref(x_447); + x_450 = lean_box(0); +} +x_451 = lean_array_push(x_97, x_448); +x_452 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_452, 0, x_96); +lean_ctor_set(x_452, 1, x_451); +if (lean_is_scalar(x_445)) { + x_453 = lean_alloc_ctor(0, 2, 0); +} else { + x_453 = x_445; +} +lean_ctor_set(x_453, 0, x_94); +lean_ctor_set(x_453, 1, x_452); +x_454 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_454, 0, x_92); +lean_ctor_set(x_454, 1, x_453); +x_455 = lean_box(0); +x_456 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_456, 0, x_455); +lean_ctor_set(x_456, 1, x_454); +if (lean_is_scalar(x_450)) { + x_457 = lean_alloc_ctor(0, 2, 0); +} else { + x_457 = x_450; +} +lean_ctor_set(x_457, 0, x_456); +lean_ctor_set(x_457, 1, x_449); +x_38 = x_457; +goto block_89; +} +else +{ +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; lean_object* x_468; 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; lean_object* x_477; +x_458 = lean_ctor_get(x_163, 1); +lean_inc(x_458); +if (lean_is_exclusive(x_163)) { + lean_ctor_release(x_163, 0); + lean_ctor_release(x_163, 1); + x_459 = x_163; } else { - x_206 = x_34; + lean_dec_ref(x_163); + x_459 = lean_box(0); } -lean_ctor_set(x_206, 0, x_33); -lean_ctor_set(x_206, 1, x_205); -if (lean_is_scalar(x_32)) { - x_207 = lean_alloc_ctor(0, 2, 0); +x_460 = lean_ctor_get(x_309, 0); +lean_inc(x_460); +lean_dec(x_309); +x_461 = lean_ctor_get(x_443, 0); +lean_inc(x_461); +lean_dec(x_443); +x_462 = l_Lean_Meta_SimpExtension_getTheorems(x_460, x_14, x_15, x_458); +lean_dec(x_460); +x_463 = lean_ctor_get(x_462, 0); +lean_inc(x_463); +x_464 = lean_ctor_get(x_462, 1); +lean_inc(x_464); +if (lean_is_exclusive(x_462)) { + lean_ctor_release(x_462, 0); + lean_ctor_release(x_462, 1); + x_465 = x_462; +} else { + lean_dec_ref(x_462); + x_465 = lean_box(0); +} +x_466 = lean_array_push(x_97, x_463); +x_467 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_461, x_14, x_15, x_464); +lean_dec(x_461); +x_468 = lean_ctor_get(x_467, 0); +lean_inc(x_468); +x_469 = lean_ctor_get(x_467, 1); +lean_inc(x_469); +if (lean_is_exclusive(x_467)) { + lean_ctor_release(x_467, 0); + lean_ctor_release(x_467, 1); + x_470 = x_467; } else { - x_207 = x_32; -} -lean_ctor_set(x_207, 0, x_31); -lean_ctor_set(x_207, 1, x_206); -x_208 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_208, 0, x_207); -x_20 = x_208; -x_21 = x_203; -goto block_28; -} + lean_dec_ref(x_467); + x_470 = lean_box(0); } -else -{ -lean_object* x_209; lean_object* x_210; uint8_t x_211; -x_209 = lean_ctor_get(x_66, 1); -lean_inc(x_209); -lean_dec(x_66); -x_210 = lean_ctor_get(x_168, 0); -lean_inc(x_210); -lean_dec(x_168); -x_211 = !lean_is_exclusive(x_189); -if (x_211 == 0) -{ -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; lean_object* x_219; lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; -x_212 = lean_ctor_get(x_189, 0); -x_213 = l_Lean_Meta_SimpExtension_getTheorems(x_210, x_14, x_15, x_209); -lean_dec(x_210); -x_214 = lean_ctor_get(x_213, 0); -lean_inc(x_214); -x_215 = lean_ctor_get(x_213, 1); -lean_inc(x_215); -lean_dec(x_213); -x_216 = lean_array_push(x_36, x_214); -x_217 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_212, x_14, x_15, x_215); -lean_dec(x_212); -x_218 = lean_ctor_get(x_217, 0); -lean_inc(x_218); -x_219 = lean_ctor_get(x_217, 1); -lean_inc(x_219); -lean_dec(x_217); -x_220 = lean_array_push(x_31, x_218); -if (lean_is_scalar(x_37)) { - x_221 = lean_alloc_ctor(0, 2, 0); +x_471 = lean_array_push(x_92, x_468); +if (lean_is_scalar(x_465)) { + x_472 = lean_alloc_ctor(0, 2, 0); } else { - x_221 = x_37; + x_472 = x_465; } -lean_ctor_set(x_221, 0, x_35); -lean_ctor_set(x_221, 1, x_216); -if (lean_is_scalar(x_34)) { - x_222 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_472, 0, x_96); +lean_ctor_set(x_472, 1, x_466); +x_473 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_473, 0, x_94); +lean_ctor_set(x_473, 1, x_472); +if (lean_is_scalar(x_459)) { + x_474 = lean_alloc_ctor(0, 2, 0); } else { - x_222 = x_34; + x_474 = x_459; } -lean_ctor_set(x_222, 0, x_33); -lean_ctor_set(x_222, 1, x_221); -if (lean_is_scalar(x_32)) { - x_223 = lean_alloc_ctor(0, 2, 0); -} else { - x_223 = x_32; -} -lean_ctor_set(x_223, 0, x_220); -lean_ctor_set(x_223, 1, x_222); -lean_ctor_set(x_189, 0, x_223); -x_20 = x_189; -x_21 = x_219; -goto block_28; -} -else -{ -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; -x_224 = lean_ctor_get(x_189, 0); -lean_inc(x_224); -lean_dec(x_189); -x_225 = l_Lean_Meta_SimpExtension_getTheorems(x_210, x_14, x_15, x_209); -lean_dec(x_210); -x_226 = lean_ctor_get(x_225, 0); -lean_inc(x_226); -x_227 = lean_ctor_get(x_225, 1); -lean_inc(x_227); -lean_dec(x_225); -x_228 = lean_array_push(x_36, x_226); -x_229 = l_Lean_Meta_Simp_SimprocExtension_getSimprocs(x_224, x_14, x_15, x_227); -lean_dec(x_224); -x_230 = lean_ctor_get(x_229, 0); -lean_inc(x_230); -x_231 = lean_ctor_get(x_229, 1); -lean_inc(x_231); -lean_dec(x_229); -x_232 = lean_array_push(x_31, x_230); -if (lean_is_scalar(x_37)) { - x_233 = lean_alloc_ctor(0, 2, 0); -} else { - x_233 = x_37; -} -lean_ctor_set(x_233, 0, x_35); -lean_ctor_set(x_233, 1, x_228); -if (lean_is_scalar(x_34)) { - x_234 = lean_alloc_ctor(0, 2, 0); -} else { - x_234 = x_34; -} -lean_ctor_set(x_234, 0, x_33); -lean_ctor_set(x_234, 1, x_233); -if (lean_is_scalar(x_32)) { - x_235 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_474, 0, x_471); +lean_ctor_set(x_474, 1, x_473); +x_475 = lean_box(0); +x_476 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_476, 0, x_475); +lean_ctor_set(x_476, 1, x_474); +if (lean_is_scalar(x_470)) { + x_477 = lean_alloc_ctor(0, 2, 0); } else { - x_235 = x_32; + x_477 = x_470; } -lean_ctor_set(x_235, 0, x_232); -lean_ctor_set(x_235, 1, x_234); -x_236 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_236, 0, x_235); -x_20 = x_236; -x_21 = x_231; -goto block_28; +lean_ctor_set(x_477, 0, x_476); +lean_ctor_set(x_477, 1, x_469); +x_38 = x_477; +goto block_89; } } } @@ -11173,42 +12663,17 @@ goto block_28; } else { -uint8_t x_237; -lean_dec(x_63); -lean_dec(x_37); -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_34); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_31); +lean_object* x_478; lean_object* x_479; +lean_dec(x_160); 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); -x_237 = !lean_is_exclusive(x_66); -if (x_237 == 0) -{ -return x_66; -} -else -{ -lean_object* x_238; lean_object* x_239; lean_object* x_240; -x_238 = lean_ctor_get(x_66, 0); -x_239 = lean_ctor_get(x_66, 1); -lean_inc(x_239); -lean_inc(x_238); -lean_dec(x_66); -x_240 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_240, 0, x_238); -lean_ctor_set(x_240, 1, x_239); -return x_240; -} +x_478 = lean_ctor_get(x_163, 0); +lean_inc(x_478); +x_479 = lean_ctor_get(x_163, 1); +lean_inc(x_479); +lean_dec(x_163); +x_105 = x_478; +x_106 = x_479; +goto block_137; } } } @@ -11216,18 +12681,15 @@ return x_240; } else { -lean_dec(x_38); -lean_dec(x_37); -lean_dec(x_34); -lean_dec(x_32); +lean_dec(x_99); if (x_2 == 0) { -uint8_t x_250; -x_250 = lean_unbox(x_33); -if (x_250 == 0) +uint8_t x_489; +x_489 = lean_unbox(x_94); +if (x_489 == 0) { -lean_object* x_251; lean_object* x_252; -x_251 = lean_box(0); +lean_object* x_490; lean_object* x_491; +x_490 = lean_box(0); lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); @@ -11236,68 +12698,113 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_252 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___lambda__1(x_19, x_36, x_33, x_1, x_31, x_35, x_251, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +lean_inc(x_96); +lean_inc(x_92); +lean_inc(x_94); +lean_inc(x_97); +x_491 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___lambda__1(x_19, x_97, x_94, x_1, x_92, x_96, x_490, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_104); lean_dec(x_19); -if (lean_obj_tag(x_252) == 0) +if (lean_obj_tag(x_491) == 0) { -lean_object* x_253; lean_object* x_254; -x_253 = lean_ctor_get(x_252, 0); -lean_inc(x_253); -x_254 = lean_ctor_get(x_252, 1); -lean_inc(x_254); -lean_dec(x_252); -x_20 = x_253; -x_21 = x_254; -goto block_28; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_38 = x_491; +goto block_89; } else { -uint8_t x_255; -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); -x_255 = !lean_is_exclusive(x_252); -if (x_255 == 0) +lean_object* x_492; lean_object* x_493; +x_492 = lean_ctor_get(x_491, 0); +lean_inc(x_492); +x_493 = lean_ctor_get(x_491, 1); +lean_inc(x_493); +lean_dec(x_491); +x_105 = x_492; +x_106 = x_493; +goto block_137; +} +} +else +{ +lean_object* x_494; lean_object* x_495; lean_object* x_496; lean_object* x_497; lean_object* x_498; lean_object* x_499; +x_494 = lean_unsigned_to_nat(1u); +x_495 = l_Lean_Syntax_getArg(x_19, x_494); +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_496 = l_Lean_Elab_Term_isLocalIdent_x3f(x_495, x_10, x_11, x_12, x_13, x_14, x_15, x_104); +x_497 = lean_ctor_get(x_496, 0); +lean_inc(x_497); +x_498 = lean_ctor_get(x_496, 1); +lean_inc(x_498); +lean_dec(x_496); +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_96); +lean_inc(x_92); +lean_inc(x_94); +lean_inc(x_97); +x_499 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___lambda__1(x_19, x_97, x_94, x_1, x_92, x_96, x_497, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_498); +lean_dec(x_19); +if (lean_obj_tag(x_499) == 0) { -return x_252; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_38 = x_499; +goto block_89; } else { -lean_object* x_256; lean_object* x_257; lean_object* x_258; -x_256 = lean_ctor_get(x_252, 0); -x_257 = lean_ctor_get(x_252, 1); -lean_inc(x_257); -lean_inc(x_256); -lean_dec(x_252); -x_258 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_258, 0, x_256); -lean_ctor_set(x_258, 1, x_257); -return x_258; +lean_object* x_500; lean_object* x_501; +x_500 = lean_ctor_get(x_499, 0); +lean_inc(x_500); +x_501 = lean_ctor_get(x_499, 1); +lean_inc(x_501); +lean_dec(x_499); +x_105 = x_500; +x_106 = x_501; +goto block_137; } } } else { -lean_object* x_259; lean_object* x_260; lean_object* x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; -x_259 = lean_unsigned_to_nat(1u); -x_260 = l_Lean_Syntax_getArg(x_19, x_259); +lean_object* x_502; lean_object* x_503; lean_object* x_504; lean_object* x_505; lean_object* x_506; lean_object* x_507; +x_502 = lean_unsigned_to_nat(1u); +x_503 = l_Lean_Syntax_getArg(x_19, x_502); 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_261 = l_Lean_Elab_Term_isLocalIdent_x3f(x_260, x_10, x_11, x_12, x_13, x_14, x_15, x_16); -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_504 = l_Lean_Elab_Term_isLocalIdent_x3f(x_503, x_10, x_11, x_12, x_13, x_14, x_15, x_104); +x_505 = lean_ctor_get(x_504, 0); +lean_inc(x_505); +x_506 = lean_ctor_get(x_504, 1); +lean_inc(x_506); +lean_dec(x_504); lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); @@ -11306,69 +12813,99 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_264 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___lambda__1(x_19, x_36, x_33, x_1, x_31, x_35, x_262, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_263); +lean_inc(x_96); +lean_inc(x_92); +lean_inc(x_94); +lean_inc(x_97); +x_507 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___lambda__1(x_19, x_97, x_94, x_1, x_92, x_96, x_505, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_506); lean_dec(x_19); -if (lean_obj_tag(x_264) == 0) -{ -lean_object* x_265; lean_object* x_266; -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_20 = x_265; -x_21 = x_266; -goto block_28; -} -else -{ -uint8_t x_267; -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); -x_267 = !lean_is_exclusive(x_264); -if (x_267 == 0) +if (lean_obj_tag(x_507) == 0) { -return x_264; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_38 = x_507; +goto block_89; } else { -lean_object* x_268; lean_object* x_269; lean_object* x_270; -x_268 = lean_ctor_get(x_264, 0); -x_269 = lean_ctor_get(x_264, 1); -lean_inc(x_269); -lean_inc(x_268); -lean_dec(x_264); -x_270 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_270, 0, x_268); -lean_ctor_set(x_270, 1, x_269); -return x_270; -} +lean_object* x_508; lean_object* x_509; +x_508 = lean_ctor_get(x_507, 0); +lean_inc(x_508); +x_509 = lean_ctor_get(x_507, 1); +lean_inc(x_509); +lean_dec(x_507); +x_105 = x_508; +x_106 = x_509; +goto block_137; } } } -else +block_137: +{ +uint8_t x_107; +x_107 = l_Lean_Exception_isInterrupt(x_105); +if (x_107 == 0) +{ +uint8_t x_108; +x_108 = l_Lean_Exception_isRuntime(x_105); +if (x_108 == 0) { -lean_object* x_271; lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; lean_object* x_276; -x_271 = lean_unsigned_to_nat(1u); -x_272 = l_Lean_Syntax_getArg(x_19, x_271); +uint8_t x_109; lean_object* x_110; uint8_t x_111; +x_109 = 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); -x_273 = l_Lean_Elab_Term_isLocalIdent_x3f(x_272, x_10, x_11, x_12, x_13, x_14, x_15, x_16); -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_110 = l_Lean_Elab_Tactic_SavedState_restore(x_103, x_109, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_106); +x_111 = lean_ctor_get_uint8(x_8, sizeof(void*)*1); +if (x_111 == 0) +{ +uint8_t x_112; +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_112 = !lean_is_exclusive(x_110); +if (x_112 == 0) +{ +lean_object* x_113; +x_113 = lean_ctor_get(x_110, 0); +lean_dec(x_113); +lean_ctor_set_tag(x_110, 1); +lean_ctor_set(x_110, 0, x_105); +x_38 = x_110; +goto block_89; +} +else +{ +lean_object* x_114; lean_object* x_115; +x_114 = lean_ctor_get(x_110, 1); +lean_inc(x_114); +lean_dec(x_110); +x_115 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_115, 0, x_105); +lean_ctor_set(x_115, 1, x_114); +x_38 = x_115; +goto block_89; +} +} +else +{ +lean_object* x_116; lean_object* x_117; +x_116 = lean_ctor_get(x_110, 1); +lean_inc(x_116); +lean_dec(x_110); lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); @@ -11377,85 +12914,150 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_276 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___lambda__1(x_19, x_36, x_33, x_1, x_31, x_35, x_274, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_275); -lean_dec(x_19); -if (lean_obj_tag(x_276) == 0) +x_117 = l_Lean_Elab_logException___at_Lean_Elab_Tactic_closeUsingOrAdmit___spec__1(x_105, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_116); +if (lean_obj_tag(x_117) == 0) { -lean_object* x_277; lean_object* x_278; -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_20 = x_277; -x_21 = x_278; -goto block_28; +uint8_t x_118; +x_118 = !lean_is_exclusive(x_117); +if (x_118 == 0) +{ +lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; +x_119 = lean_ctor_get(x_117, 0); +if (lean_is_scalar(x_98)) { + x_120 = lean_alloc_ctor(0, 2, 0); +} else { + x_120 = x_98; +} +lean_ctor_set(x_120, 0, x_96); +lean_ctor_set(x_120, 1, x_97); +if (lean_is_scalar(x_95)) { + x_121 = lean_alloc_ctor(0, 2, 0); +} else { + x_121 = x_95; +} +lean_ctor_set(x_121, 0, x_94); +lean_ctor_set(x_121, 1, x_120); +if (lean_is_scalar(x_93)) { + x_122 = lean_alloc_ctor(0, 2, 0); +} else { + x_122 = x_93; +} +lean_ctor_set(x_122, 0, x_92); +lean_ctor_set(x_122, 1, x_121); +x_123 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_123, 0, x_119); +lean_ctor_set(x_123, 1, x_122); +lean_ctor_set(x_117, 0, x_123); +x_38 = x_117; +goto block_89; } else { -uint8_t x_279; -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); -x_279 = !lean_is_exclusive(x_276); -if (x_279 == 0) +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_124 = lean_ctor_get(x_117, 0); +x_125 = lean_ctor_get(x_117, 1); +lean_inc(x_125); +lean_inc(x_124); +lean_dec(x_117); +if (lean_is_scalar(x_98)) { + x_126 = lean_alloc_ctor(0, 2, 0); +} else { + x_126 = x_98; +} +lean_ctor_set(x_126, 0, x_96); +lean_ctor_set(x_126, 1, x_97); +if (lean_is_scalar(x_95)) { + x_127 = lean_alloc_ctor(0, 2, 0); +} else { + x_127 = x_95; +} +lean_ctor_set(x_127, 0, x_94); +lean_ctor_set(x_127, 1, x_126); +if (lean_is_scalar(x_93)) { + x_128 = lean_alloc_ctor(0, 2, 0); +} else { + x_128 = x_93; +} +lean_ctor_set(x_128, 0, x_92); +lean_ctor_set(x_128, 1, x_127); +x_129 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_129, 0, x_124); +lean_ctor_set(x_129, 1, x_128); +x_130 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_130, 0, x_129); +lean_ctor_set(x_130, 1, x_125); +x_38 = x_130; +goto block_89; +} +} +else +{ +uint8_t x_131; +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_131 = !lean_is_exclusive(x_117); +if (x_131 == 0) { -return x_276; +x_38 = x_117; +goto block_89; } else { -lean_object* x_280; lean_object* x_281; lean_object* x_282; -x_280 = lean_ctor_get(x_276, 0); -x_281 = lean_ctor_get(x_276, 1); -lean_inc(x_281); -lean_inc(x_280); -lean_dec(x_276); -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_132; lean_object* x_133; lean_object* x_134; +x_132 = lean_ctor_get(x_117, 0); +x_133 = lean_ctor_get(x_117, 1); +lean_inc(x_133); +lean_inc(x_132); +lean_dec(x_117); +x_134 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_134, 0, x_132); +lean_ctor_set(x_134, 1, x_133); +x_38 = x_134; +goto block_89; } } } } -block_28: -{ -if (lean_obj_tag(x_20) == 0) +else { -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); -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; +lean_object* x_135; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_135 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_135, 0, x_105); +lean_ctor_set(x_135, 1, x_106); +x_38 = x_135; +goto block_89; +} } 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_object* x_136; +lean_dec(x_103); +lean_dec(x_98); +lean_dec(x_97); +lean_dec(x_96); +lean_dec(x_95); +lean_dec(x_94); +lean_dec(x_93); +lean_dec(x_92); +x_136 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_136, 0, x_105); +lean_ctor_set(x_136, 1, x_106); +x_38 = x_136; +goto block_89; +} } } } @@ -11465,7 +13067,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabSimpArgs___lambda__1(lean_object _start: { lean_object* x_23; -x_23 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22); +x_23 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22); if (lean_obj_tag(x_23) == 0) { lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; @@ -11582,7 +13184,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabSimpArgs___lambda__2(lean_object _start: { lean_object* x_23; -x_23 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22); +x_23 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__7(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22); if (lean_obj_tag(x_23) == 0) { lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; @@ -11909,17 +13511,17 @@ lean_dec(x_3); return x_13; } } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___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) { +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___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_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___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 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___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_4); lean_dec(x_1); return x_17; } } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___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, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___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, lean_object* x_15, lean_object* x_16) { _start: { uint8_t x_17; uint8_t x_18; size_t x_19; size_t x_20; lean_object* x_21; @@ -11931,13 +13533,13 @@ x_19 = lean_unbox_usize(x_5); lean_dec(x_5); x_20 = lean_unbox_usize(x_6); lean_dec(x_6); -x_21 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5(x_1, x_17, x_18, x_4, x_19, x_20, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +x_21 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6(x_1, x_17, x_18, x_4, x_19, x_20, 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_1); return x_21; } } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___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, lean_object* x_15, lean_object* x_16) { +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___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, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { uint8_t x_17; uint8_t x_18; size_t x_19; size_t x_20; lean_object* x_21; @@ -11949,7 +13551,7 @@ x_19 = lean_unbox_usize(x_5); lean_dec(x_5); x_20 = lean_unbox_usize(x_6); lean_dec(x_6); -x_21 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6(x_1, x_17, x_18, x_4, x_19, x_20, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +x_21 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__7(x_1, x_17, x_18, x_4, x_19, x_20, 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_1); return x_21; @@ -12880,7 +14482,7 @@ static lean_object* _init_l_Lean_Elab_Tactic_mkSimpContext___lambda__2___closed_ { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Tactic_mkSimpContext___lambda__2___closed__1; -x_2 = l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; +x_2 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Match_MatchEqnsExtState_eqns___default___spec__1; x_3 = lean_alloc_ctor(0, 4, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_1); @@ -12931,7 +14533,7 @@ static lean_object* _init_l_Lean_Elab_Tactic_mkSimpContext___lambda__3___closed_ 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_Tactic_mkSimpContext___lambda__2___closed__1; x_2 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1; -x_3 = l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; +x_3 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Match_MatchEqnsExtState_eqns___default___spec__1; x_4 = l_Lean_Elab_Tactic_mkSimpContext___lambda__3___closed__1; x_5 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_5, 0, x_1); @@ -13346,7 +14948,7 @@ x_18 = l_Lean_Elab_Tactic_mkSimpContext(x_1, x_15, x_16, x_17, x_5, x_6, x_7, x_ return x_18; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__1() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__1() { _start: { lean_object* x_1; @@ -13354,7 +14956,7 @@ x_1 = lean_mk_string_from_bytes("tactic", 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__2() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__2() { _start: { lean_object* x_1; @@ -13362,18 +14964,18 @@ x_1 = lean_mk_string_from_bytes("trace", 5); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__3() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__1; +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__1; x_2 = l_Lean_Elab_Tactic_tacticToDischarge___lambda__3___closed__1; -x_3 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__2; +x_3 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__2; x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__4() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__4() { _start: { lean_object* x_1; @@ -13381,7 +14983,7 @@ x_1 = lean_mk_string_from_bytes("", 0); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__5() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__5() { _start: { lean_object* x_1; @@ -13389,13 +14991,13 @@ x_1 = lean_mk_string_from_bytes("When tracing is enabled, calls to `simp` or `ds return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__6() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__6() { _start: { uint8_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = 0; -x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__4; -x_3 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__5; +x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__4; +x_3 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__5; x_4 = lean_box(x_1); x_5 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_5, 0, x_4); @@ -13404,7 +15006,7 @@ lean_ctor_set(x_5, 2, x_3); return x_5; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__7() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__7() { _start: { lean_object* x_1; @@ -13412,27 +15014,27 @@ x_1 = lean_mk_string_from_bytes("Elab", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__8() { +static lean_object* _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____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; lean_object* x_7; x_1 = l_Lean_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_6____closed__1; -x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__7; +x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__7; x_3 = l_Lean_Elab_Tactic_tacticToDischarge___closed__2; -x_4 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__1; +x_4 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__1; x_5 = l_Lean_Elab_Tactic_tacticToDischarge___lambda__3___closed__1; -x_6 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__2; +x_6 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__2; x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); return x_7; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905_(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_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__3; -x_3 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__6; -x_4 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__8; +x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__3; +x_3 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__6; +x_4 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__8; x_5 = l_Lean_Option_register___at_Lean_Elab_initFn____x40_Lean_Elab_AutoBound___hyg_7____spec__1(x_2, x_3, x_4, x_1); return x_5; } @@ -15283,7 +16885,7 @@ x_60 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_60, 0, x_49); lean_ctor_set(x_60, 1, x_57); lean_ctor_set(x_60, 2, x_59); -x_61 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_61 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_62 = l_Lean_Syntax_node3(x_49, x_61, x_58, x_60, x_46); x_63 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_62, x_8, x_9, x_10, x_11, x_52); x_16 = x_63; @@ -15312,7 +16914,7 @@ x_72 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_72, 0, x_49); lean_ctor_set(x_72, 1, x_69); lean_ctor_set(x_72, 2, x_71); -x_73 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_73 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_74 = l_Lean_Syntax_node3(x_49, x_73, x_70, x_72, x_46); x_75 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_74, x_8, x_9, x_10, x_11, x_64); x_16 = x_75; @@ -15337,7 +16939,7 @@ x_83 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_83, 0, x_78); lean_ctor_set(x_83, 1, x_81); lean_ctor_set(x_83, 2, x_82); -x_84 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_84 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; lean_inc(x_83); x_85 = l_Lean_Syntax_node3(x_78, x_84, x_83, x_83, x_46); x_86 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_85, x_8, x_9, x_10, x_11, x_80); @@ -15404,7 +17006,7 @@ x_110 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_110, 0, x_99); lean_ctor_set(x_110, 1, x_107); lean_ctor_set(x_110, 2, x_109); -x_111 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_111 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_112 = l_Lean_Syntax_node3(x_99, x_111, x_108, x_110, x_97); x_113 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_112, x_8, x_9, x_10, x_11, x_102); x_16 = x_113; @@ -15433,7 +17035,7 @@ x_122 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_122, 0, x_99); lean_ctor_set(x_122, 1, x_119); lean_ctor_set(x_122, 2, x_121); -x_123 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_123 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_124 = l_Lean_Syntax_node3(x_99, x_123, x_120, x_122, x_97); x_125 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_124, x_8, x_9, x_10, x_11, x_114); x_16 = x_125; @@ -15478,7 +17080,7 @@ lean_inc(x_127); x_141 = l_Lean_Syntax_node1(x_127, x_140, x_139); lean_inc(x_127); x_142 = l_Lean_Syntax_node1(x_127, x_135, x_141); -x_143 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_143 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_144 = l_Lean_Syntax_node3(x_127, x_143, x_136, x_142, x_97); x_145 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_144, x_8, x_9, x_10, x_11, x_130); x_16 = x_145; @@ -15514,7 +17116,7 @@ lean_inc(x_127); x_157 = l_Lean_Syntax_node1(x_127, x_156, x_155); lean_inc(x_127); x_158 = l_Lean_Syntax_node1(x_127, x_151, x_157); -x_159 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_159 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_160 = l_Lean_Syntax_node3(x_127, x_159, x_152, x_158, x_97); x_161 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_160, x_8, x_9, x_10, x_11, x_146); x_16 = x_161; @@ -15542,7 +17144,7 @@ x_168 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_168, 0, x_163); lean_ctor_set(x_168, 1, x_166); lean_ctor_set(x_168, 2, x_167); -x_169 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_169 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; lean_inc(x_168); x_170 = l_Lean_Syntax_node3(x_163, x_169, x_168, x_168, x_97); x_171 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_170, x_8, x_9, x_10, x_11, x_165); @@ -15583,7 +17185,7 @@ lean_inc(x_173); x_185 = l_Lean_Syntax_node1(x_173, x_184, x_183); lean_inc(x_173); x_186 = l_Lean_Syntax_node1(x_173, x_178, x_185); -x_187 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_187 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_188 = l_Lean_Syntax_node3(x_173, x_187, x_180, x_186, x_97); x_189 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_188, x_8, x_9, x_10, x_11, x_176); x_16 = x_189; @@ -15615,7 +17217,7 @@ lean_inc(x_173); x_199 = l_Lean_Syntax_node1(x_173, x_198, x_197); lean_inc(x_173); x_200 = l_Lean_Syntax_node1(x_173, x_191, x_199); -x_201 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_201 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_202 = l_Lean_Syntax_node3(x_173, x_201, x_193, x_200, x_97); x_203 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_202, x_8, x_9, x_10, x_11, x_190); x_16 = x_203; @@ -15672,7 +17274,7 @@ x_218 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_218, 0, x_207); lean_ctor_set(x_218, 1, x_215); lean_ctor_set(x_218, 2, x_217); -x_219 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_219 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_220 = l_Lean_Syntax_node3(x_207, x_219, x_216, x_218, x_205); x_221 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_220, x_8, x_9, x_10, x_11, x_209); x_16 = x_221; @@ -15724,7 +17326,7 @@ lean_inc(x_223); x_238 = l_Lean_Syntax_node1(x_223, x_237, x_236); lean_inc(x_223); x_239 = l_Lean_Syntax_node1(x_223, x_231, x_238); -x_240 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_240 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_241 = l_Lean_Syntax_node3(x_223, x_240, x_232, x_239, x_205); x_242 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_241, x_8, x_9, x_10, x_11, x_225); x_16 = x_242; @@ -15750,7 +17352,7 @@ x_249 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_249, 0, x_244); lean_ctor_set(x_249, 1, x_247); lean_ctor_set(x_249, 2, x_248); -x_250 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_250 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; lean_inc(x_249); x_251 = l_Lean_Syntax_node3(x_244, x_250, x_249, x_249, x_205); x_252 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_251, x_8, x_9, x_10, x_11, x_246); @@ -15799,7 +17401,7 @@ lean_inc(x_254); x_266 = l_Lean_Syntax_node1(x_254, x_265, x_264); lean_inc(x_254); x_267 = l_Lean_Syntax_node1(x_254, x_258, x_266); -x_268 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_268 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_269 = l_Lean_Syntax_node3(x_254, x_268, x_260, x_267, x_205); x_270 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_28, x_27, x_269, x_8, x_9, x_10, x_11, x_256); x_16 = x_270; @@ -16433,7 +18035,7 @@ x_395 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_395, 0, x_384); lean_ctor_set(x_395, 1, x_392); lean_ctor_set(x_395, 2, x_394); -x_396 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_396 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_397 = l_Lean_Syntax_node3(x_384, x_396, x_393, x_395, x_381); x_398 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_366, x_365, x_397, x_8, x_9, x_10, x_11, x_386); x_16 = x_398; @@ -16457,7 +18059,7 @@ x_406 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_406, 0, x_401); lean_ctor_set(x_406, 1, x_404); lean_ctor_set(x_406, 2, x_405); -x_407 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_407 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; lean_inc(x_406); x_408 = l_Lean_Syntax_node3(x_401, x_407, x_406, x_406, x_381); x_409 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_366, x_365, x_408, x_8, x_9, x_10, x_11, x_403); @@ -16535,7 +18137,7 @@ x_432 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_432, 0, x_421); lean_ctor_set(x_432, 1, x_429); lean_ctor_set(x_432, 2, x_431); -x_433 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_433 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_434 = l_Lean_Syntax_node3(x_421, x_433, x_430, x_432, x_419); x_435 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_366, x_365, x_434, x_8, x_9, x_10, x_11, x_423); x_16 = x_435; @@ -16592,7 +18194,7 @@ lean_inc(x_437); x_452 = l_Lean_Syntax_node1(x_437, x_451, x_450); lean_inc(x_437); x_453 = l_Lean_Syntax_node1(x_437, x_445, x_452); -x_454 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_454 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_455 = l_Lean_Syntax_node3(x_437, x_454, x_446, x_453, x_419); x_456 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_366, x_365, x_455, x_8, x_9, x_10, x_11, x_439); x_16 = x_456; @@ -16619,7 +18221,7 @@ x_463 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_463, 0, x_458); lean_ctor_set(x_463, 1, x_461); lean_ctor_set(x_463, 2, x_462); -x_464 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_464 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; lean_inc(x_463); x_465 = l_Lean_Syntax_node3(x_458, x_464, x_463, x_463, x_419); x_466 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_366, x_365, x_465, x_8, x_9, x_10, x_11, x_460); @@ -16668,7 +18270,7 @@ lean_inc(x_468); x_480 = l_Lean_Syntax_node1(x_468, x_479, x_478); lean_inc(x_468); x_481 = l_Lean_Syntax_node1(x_468, x_472, x_480); -x_482 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_482 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; x_483 = l_Lean_Syntax_node3(x_468, x_482, x_474, x_481, x_419); x_484 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_mkSimpOnly___spec__9___lambda__1(x_366, x_365, x_483, x_8, x_9, x_10, x_11, x_470); x_16 = x_484; @@ -16940,7 +18542,7 @@ lean_ctor_set(x_21, 0, x_16); lean_ctor_set(x_21, 1, x_19); lean_ctor_set(x_21, 2, x_20); x_22 = lean_mk_syntax_ident(x_11); -x_23 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4; +x_23 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4; lean_inc(x_21); x_24 = l_Lean_Syntax_node3(x_16, x_23, x_21, x_21, x_22); x_25 = 1; @@ -17173,7 +18775,7 @@ lean_inc(x_32); lean_ctor_set_tag(x_33, 2); lean_ctor_set(x_33, 1, x_37); lean_ctor_set(x_33, 0, x_32); -x_38 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__6; +x_38 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__6; x_39 = l_Lean_Syntax_node1(x_32, x_38, x_33); x_40 = lean_array_push(x_29, x_39); x_41 = l_Lean_Elab_Tactic_elabSimpConfigCore___closed__8; @@ -17197,7 +18799,7 @@ lean_inc(x_32); x_46 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_46, 0, x_32); lean_ctor_set(x_46, 1, x_45); -x_47 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__6; +x_47 = l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__6; x_48 = l_Lean_Syntax_node1(x_32, x_47, x_46); x_49 = lean_array_push(x_29, x_48); x_50 = l_Lean_Elab_Tactic_elabSimpConfigCore___closed__8; @@ -17551,7 +19153,7 @@ static lean_object* _init_l_Lean_Elab_Tactic_traceSimpCall___closed__3() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__4; +x_1 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__4; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } @@ -18530,7 +20132,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimp__1___closed__ { 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_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_6____closed__1; -x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__7; +x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__7; x_3 = l_Lean_Elab_Tactic_tacticToDischarge___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSimp__1___closed__2; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -18569,7 +20171,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimp_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(424u); +x_1 = lean_unsigned_to_nat(432u); x_2 = lean_unsigned_to_nat(42u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -18581,7 +20183,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimp_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(430u); +x_1 = lean_unsigned_to_nat(438u); x_2 = lean_unsigned_to_nat(19u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -18609,7 +20211,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimp_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(424u); +x_1 = lean_unsigned_to_nat(432u); x_2 = lean_unsigned_to_nat(46u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -18621,7 +20223,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimp_declRange__1_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(424u); +x_1 = lean_unsigned_to_nat(432u); x_2 = lean_unsigned_to_nat(54u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -19133,7 +20735,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpAll__1___close { 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_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_6____closed__1; -x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__7; +x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__7; x_3 = l_Lean_Elab_Tactic_tacticToDischarge___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalSimpAll__1___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -19164,7 +20766,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpAll_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(432u); +x_1 = lean_unsigned_to_nat(440u); x_2 = lean_unsigned_to_nat(45u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -19176,7 +20778,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpAll_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(440u); +x_1 = lean_unsigned_to_nat(448u); x_2 = lean_unsigned_to_nat(19u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -19204,7 +20806,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpAll_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(432u); +x_1 = lean_unsigned_to_nat(440u); x_2 = lean_unsigned_to_nat(49u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -19216,7 +20818,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalSimpAll_declRange_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(432u); +x_1 = lean_unsigned_to_nat(440u); x_2 = lean_unsigned_to_nat(60u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -20052,7 +21654,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDSimp__1___closed_ { 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_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Simp___hyg_6____closed__1; -x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__7; +x_2 = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__7; x_3 = l_Lean_Elab_Tactic_tacticToDischarge___closed__2; x_4 = l___regBuiltin_Lean_Elab_Tactic_evalDSimp__1___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); @@ -20083,7 +21685,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDSimp_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(462u); +x_1 = lean_unsigned_to_nat(470u); x_2 = lean_unsigned_to_nat(43u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -20095,7 +21697,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDSimp_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(464u); +x_1 = lean_unsigned_to_nat(472u); x_2 = lean_unsigned_to_nat(55u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -20123,7 +21725,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDSimp_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(462u); +x_1 = lean_unsigned_to_nat(470u); x_2 = lean_unsigned_to_nat(47u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -20135,7 +21737,7 @@ static lean_object* _init_l___regBuiltin_Lean_Elab_Tactic_evalDSimp_declRange__1 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(462u); +x_1 = lean_unsigned_to_nat(470u); x_2 = lean_unsigned_to_nat(56u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -20448,26 +22050,28 @@ l_Lean_throwUnknownConstant___at_Lean_Elab_Tactic_elabSimpArgs___spec__3___close lean_mark_persistent(l_Lean_throwUnknownConstant___at_Lean_Elab_Tactic_elabSimpArgs___spec__3___closed__3); l_Lean_throwUnknownConstant___at_Lean_Elab_Tactic_elabSimpArgs___spec__3___closed__4 = _init_l_Lean_throwUnknownConstant___at_Lean_Elab_Tactic_elabSimpArgs___spec__3___closed__4(); lean_mark_persistent(l_Lean_throwUnknownConstant___at_Lean_Elab_Tactic_elabSimpArgs___spec__3___closed__4); +l_Lean_logWarning___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__1 = _init_l_Lean_logWarning___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__1(); +lean_mark_persistent(l_Lean_logWarning___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__1); l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___closed__1 = _init_l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___closed__1(); lean_mark_persistent(l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___closed__1); l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___closed__2 = _init_l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___closed__2(); lean_mark_persistent(l_Lean_Meta_SimpTheorems_erase___at_Lean_Elab_Tactic_elabSimpArgs___spec__4___closed__2); -l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__1 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__1(); -lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__1); -l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__2 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__2(); -lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__2); -l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__3 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__3(); -lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__3); -l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4(); -lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__4); -l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__5 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__5(); -lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__5); -l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__6 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__6(); -lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__6); -l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__7 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__7(); -lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__7); -l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__8 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__8(); -lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__5___closed__8); +l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__1 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__1(); +lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__1); +l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__2 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__2(); +lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__2); +l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__3 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__3(); +lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__3); +l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4(); +lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__4); +l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__5 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__5(); +lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__5); +l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__6 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__6(); +lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__6); +l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__7 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__7(); +lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__7); +l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__8 = _init_l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__8(); +lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Elab_Tactic_elabSimpArgs___spec__6___closed__8); l_Lean_Elab_Tactic_elabSimpArgs___boxed__const__1 = _init_l_Lean_Elab_Tactic_elabSimpArgs___boxed__const__1(); lean_mark_persistent(l_Lean_Elab_Tactic_elabSimpArgs___boxed__const__1); l_Lean_Elab_Tactic_simpOnlyBuiltins___closed__1 = _init_l_Lean_Elab_Tactic_simpOnlyBuiltins___closed__1(); @@ -20502,23 +22106,23 @@ l_Lean_Elab_Tactic_mkSimpContext___closed__1 = _init_l_Lean_Elab_Tactic_mkSimpCo lean_mark_persistent(l_Lean_Elab_Tactic_mkSimpContext___closed__1); l_Lean_Elab_Tactic_mkSimpContext___closed__2 = _init_l_Lean_Elab_Tactic_mkSimpContext___closed__2(); lean_mark_persistent(l_Lean_Elab_Tactic_mkSimpContext___closed__2); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__1 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__1(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__1); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__2 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__2(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__2); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__3 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__3(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__3); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__4 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__4(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__4); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__5 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__5(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__5); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__6 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__6(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__6); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__7 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__7(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__7); -l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__8 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__8(); -lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738____closed__8); -if (builtin) {res = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4738_(lean_io_mk_world()); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__1 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__1); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__2 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__2); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__3 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__3); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__4 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__4(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__4); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__5 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__5(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__5); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__6 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__6(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__6); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__7 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__7(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__7); +l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__8 = _init_l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__8(); +lean_mark_persistent(l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905____closed__8); +if (builtin) {res = l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Simp___hyg_4905_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Elab_Tactic_tactic_simp_trace = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Elab_Tactic_tactic_simp_trace); diff --git a/stage0/stdlib/Lean/Elab/Term.c b/stage0/stdlib/Lean/Elab/Term.c index 09feeaa37061..1ba9c3700c21 100644 --- a/stage0/stdlib/Lean/Elab/Term.c +++ b/stage0/stdlib/Lean/Elab/Term.c @@ -21,8 +21,10 @@ LEAN_EXPORT lean_object* l_Lean_MVarId_isAssigned___at_Lean_Elab_Term_synthesize lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); static lean_object* l_Lean_logAt___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__2___closed__1; static lean_object* l_Lean_Elab_Term_hasNoImplicitLambdaAnnotation___closed__1; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__5; static lean_object* l_Lean_Elab_Term_resolveId_x3f___lambda__2___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_withoutModifyingStateWithInfoAndMessages(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__3; static lean_object* l_Lean_Elab_Term_mkTypeMismatchError___closed__4; LEAN_EXPORT 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*); static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_isLambdaWithImplicit___closed__4; @@ -37,14 +39,13 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_collectUnassignedMVars_go___boxed(lean LEAN_EXPORT lean_object* l_Lean_Elab_Term_Context_autoBoundImplicitForbidden___default___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_addDocString___at_Lean_Elab_Term_expandDeclId___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_EXPORT lean_object* l_Lean_Elab_Term_tryPostponeIfNoneOrMVar___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_Term___hyg_17406____closed__7; static lean_object* l_Lean_Elab_throwAlreadyDeclaredUniverseLevel___at_Lean_Elab_Term_expandDeclId___spec__10___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Term_setLevelNames___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutErrToSorryImp(lean_object*); static lean_object* l_Lean_Elab_Term_mkExplicitBinder___closed__11; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__2(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Term_logUnassignedUsingErrorInfos___spec__3(lean_object*, lean_object*, size_t, size_t); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__8; LEAN_EXPORT lean_object* l_Lean_Elab_Term_instInhabitedTermElabM___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_throwAlreadyDeclaredUniverseLevel___at_Lean_Elab_Term_expandDeclId___spec__10___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_throwMVarError___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -65,7 +66,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___rarg___l extern lean_object* l_Lean_trace_profiler_useHearbeats; uint8_t l_Lean_MacroScopesView_isSuffixOf(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___rarg___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___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitApp___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__44(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_logUnassignedUsingErrorInfos___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_withSaveParentDeclInfoContext___at_Lean_Elab_Term_withDeclName___spec__1___rarg___closed__1; @@ -82,7 +82,6 @@ LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_v static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT 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_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_withDeclName___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_EXPORT lean_object* l_Lean_Elab_Tactic_TacticParsedSnapshot_data(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_registerMVarErrorCustomInfo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -95,6 +94,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutAutoBoundImplicit(lean_object*) LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Term_0__Lean_Elab_Term_withoutModifyingStateWithInfoAndMessagesImpl___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*); static lean_object* l_Lean_Elab_Term_ensureType___lambda__1___closed__3; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__35(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__10; LEAN_EXPORT lean_object* l_Lean_AssocList_replace___at_Lean_Elab_Term_ContainsPendingMVar_visit___spec__6(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkFreshLevelMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutSavingRecAppSyntax(lean_object*); @@ -107,11 +107,9 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_instAddErrorMessageContextTermElabM(le LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visit___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__10(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_commitIfNoErrors_x3f(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_withoutModifyingStateWithInfoAndMessagesImpl___spec__8(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_Term___hyg_15148____closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withSavedContext(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_isExplicitApp___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_checkIfShadowingStructureField___at_Lean_Elab_Term_expandDeclId___spec__3___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_Term___hyg_3183____closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_instAddErrorMessageContextTermElabM___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_PersistentArray_forM___at_Lean_Elab_Term_instMetaEvalTermElabM___spec__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_Term_mkExplicitBinder___closed__12; @@ -129,19 +127,20 @@ static lean_object* l_Lean_Elab_Term_mkExplicitBinder___closed__6; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Term_expandDeclId___spec__12(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_forInUnsafe_loop___at___private_Lean_Elab_Term_0__Lean_Elab_Term_decorateErrorMessageWithLambdaImplicitVars___spec__1(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_PersistentArray_toArray___rarg(lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__1; static lean_object* l_Lean_Elab_Term_getFVarLocalDecl_x21___closed__2; static lean_object* l_Lean_Elab_Term_mkSaveInfoAnnotation___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_registerMVarErrorImplicitArgInfo___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_Term_instMonadMacroAdapterTermElabM___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680_(lean_object*); lean_object* l_Lean_profileitIOUnsafe___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_instInhabitedSyntheticMVarDecl; -static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__14; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___rarg(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); -LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___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_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_object* l_Lean_RBNode_findCore___at___private_Lean_MetavarContext_0__Lean_MetavarContext_MkBinding_elimApp___spec__4(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instInhabitedTacticParsedSnapshot; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__10; static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__24; LEAN_EXPORT lean_object* l_Lean_Elab_Term_registerSyntheticMVar___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_Term_registerSyntheticMVarWithCurrRef(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -155,6 +154,7 @@ static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_expandDeclId___ static lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___closed__1; LEAN_EXPORT lean_object* l_Lean_AssocList_contains___at_Lean_Elab_Term_ContainsPendingMVar_visit___spec__2___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutHeedElabAsElim(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_instToStringMVarErrorKind___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveLocalName_go___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_isTypeAscription___boxed(lean_object*); @@ -179,6 +179,7 @@ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Term_addAutoBoundImpli lean_object* l_Lean_Syntax_formatStxAux(lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_registerMVarErrorInfo___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_List_elem___at_Lean_NameHashSet_insert___spec__2(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabTerm(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveName_process___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_mkAuxName___at_Lean_Elab_Term_mkAuxName___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -187,10 +188,8 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAu lean_object* l_Lean_Meta_isExprDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static size_t l_Lean_Elab_Term_instInhabitedLetRecToLift___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkAuxName(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_Term___hyg_17406____closed__8; LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveId_x3f___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_FileMap_toPosition(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__2; LEAN_EXPORT lean_object* l_List_forM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkTypeMismatchError___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_Term_mkCoe___lambda__1___closed__3; @@ -208,6 +207,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0_ static lean_object* l_Lean_Elab_Term_instMonadTermElabM___closed__3; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Term_mkCoe___spec__1___lambda__3___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveName(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_Term___hyg_15187____closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_addCompletionInfo___at_Lean_Elab_Term_addDotCompletionInfo___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_MVarErrorInfo_logError___closed__8; LEAN_EXPORT lean_object* l_Lean_PersistentArray_findSomeRevM_x3f___at_Lean_Elab_Term_resolveLocalName___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -216,9 +216,9 @@ lean_object* l_Lean_Name_toString(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkCoe___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_forInUnsafe_loop___at_Lean_Elab_Term_expandDeclId___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*, lean_object*); lean_object* l_Lean_MetavarContext_getDelayedMVarAssignmentCore_x3f(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__10; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getId(lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabTermEnsuringType(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_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at_Lean_Elab_Term_resolveLocalName___spec__5(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_getFVarLocalDecl_x21___closed__3; @@ -253,6 +253,8 @@ LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Elab_Term_resolveId_x3f___s LEAN_EXPORT lean_object* l_Lean_PersistentArray_findSomeRevMAux___at_Lean_Elab_Term_resolveLocalName___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_liftExcept___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__8(lean_object*, lean_object*, lean_object*); static double l_Lean_withTraceNode___at_Lean_Elab_Term_mkCoe___spec__1___lambda__4___closed__5; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__6; +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitApp___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__36___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveId_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_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -271,6 +273,7 @@ uint8_t lean_usize_dec_eq(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedTacticReuse___rarg___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveLocalName___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Elab_Term_0__Lean_Elab_Term_isExplicit(lean_object*); +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Term_TermElabM_toIO___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Term_expandDeclId___spec__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_CommandContextInfo_saveNoFileMap___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__3(lean_object*, lean_object*, lean_object*); @@ -287,6 +290,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_hasNoImplicitLambdaAnnotation___boxed( static lean_object* l_Lean_Elab_CommandContextInfo_saveNoFileMap___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__3___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedTacticReuse___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_findSomeRevMAux___at_Lean_Elab_Term_resolveLocalName___spec__4(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__1; static lean_object* l_Lean_Elab_Term_mkAuxName___closed__2; lean_object* l_Lean_Meta_getMVarsAtDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_exceptionToSorry(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -299,6 +303,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_throwErrorIfError LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_withoutModifyingStateWithInfoAndMessagesImpl___spec__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_Elab_Term_instInhabitedLetRecToLift___closed__3; LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyMAux___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__30(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__12___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withoutModifyingStateWithInfoAndMessages___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instHashableCacheKey; LEAN_EXPORT 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*); @@ -330,6 +335,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull(lean_object*); static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__27; static lean_object* l_Lean_Elab_Term_mkCoe___lambda__2___closed__1; static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Term_expandDeclId___spec__6___lambda__2___closed__1; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__3; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda_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_Elab_getResetInfoTrees___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_ppGoal(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -340,7 +346,7 @@ LEAN_EXPORT lean_object* l_Lean_RBNode_forIn_visit___at_Lean_Elab_Term_logUnassi static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_expandDeclId___spec__4___closed__3; lean_object* l_Lean_Expr_fvarId_x21(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__38___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT 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_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_useImplicitLambda___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_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_Term_applyResult(lean_object*); @@ -350,9 +356,9 @@ static lean_object* l_Lean_Elab_Term_MVarErrorInfo_logError___closed__11; LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__22___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapM___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__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_Term_LVal_getRef___boxed(lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__10; lean_object* l_Lean_Attribute_Builtin_ensureNoArgs(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_isLetRecAuxMVar___closed__4; +LEAN_EXPORT lean_object* l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__12(lean_object*); lean_object* l_Lean_RBNode_insert___at_Lean_NameSet_insert___spec__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_mkExplicitBinder___closed__9; static lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_Term_0__Lean_Elab_Term_isLambdaWithImplicit___spec__1___closed__4; @@ -364,6 +370,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_liftLevelM___rarg(lean_object*, lean_o LEAN_EXPORT lean_object* l_Lean_Elab_Term_saveContext___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_hasSyntheticSorry(lean_object*); LEAN_EXPORT lean_object* l_Lean_HashMapImp_expand___at_Lean_Elab_Term_ContainsPendingMVar_visit___spec__3(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkIdentFrom(lean_object*, lean_object*, uint8_t); static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_dropTermParens___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutHeedElabAsElim___rarg(lean_object*, lean_object*); @@ -382,19 +389,17 @@ static lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Term_withoutM LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__43___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addMacroStack___at_Lean_Elab_Term_instAddErrorMessageContextTermElabM___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_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__2; static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Term_expandDeclId___spec__6___lambda__3___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__5(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_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_throwAbortTerm___at_Lean_Elab_Term_throwMVarError___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_MVarErrorInfo_logError___closed__3; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___closed__1; lean_object* lean_io_get_num_heartbeats(lean_object*); uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); lean_object* l_Lean_Syntax_identComponents(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_logUnassignedUsingErrorInfos___closed__2; size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitApp___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__12(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Term_instMonadBacktrackSavedStateTermElabM___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_isTacticBlock___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -405,7 +410,6 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Term_addAutoBound LEAN_EXPORT uint8_t l___private_Lean_Elab_Term_0__Lean_Elab_Term_isHole(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwPostpone___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__7___rarg(lean_object*); lean_object* l_Lean_stringToMessageData(lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__10; lean_object* l_Lean_Expr_mvar___override(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visit___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_State_syntheticMVars___default; @@ -421,7 +425,6 @@ LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_Term_getFVarLocalDecl_x21___spec static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__7; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_resolveName_x27___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_List_any___rarg(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Term_expandDeclId___spec__6___lambda__3___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_maxRecDepth; @@ -458,6 +461,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_State_letRecsToLift___default; static lean_object* l_Lean_Elab_Term_levelMVarToParam___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_isLetRecAuxMVar___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_instBEqProd___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204____closed__2; LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyM___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__29(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__52___boxed(lean_object*, lean_object*, lean_object*, 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_instMetaEvalTermElabM___rarg___lambda__3(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -488,6 +492,7 @@ static lean_object* l_Lean_Elab_Term_instInhabitedLetRecToLift___closed__7; lean_object* l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkExplicitBinder(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_instToStringSyntheticMVarKind___closed__3; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___rarg(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_addAutoBoundImplicits_go___spec__40___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_pushInfoTree___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -509,6 +514,7 @@ uint8_t l_Lean_isReservedName(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at_Lean_Elab_Term_withMacroExpansion___spec__1___rarg___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_Linter_checkDeprecated___at_Lean_Elab_Term_mkConst___spec__1___closed__6; static lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___closed__4; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Term_TermElabM_run(lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Elab_Term_0__Lean_Elab_Term_isTypeAscription(lean_object*); static lean_object* l_Lean_Linter_checkDeprecated___at_Lean_Elab_Term_mkConst___spec__1___closed__2; @@ -545,9 +551,11 @@ LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_v LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_throwErrorIfErrors___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at_Lean_Elab_Term_resolveLocalName___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_Elab_Term_0__Lean_Elab_Tactic_beqCacheKey____x40_Lean_Elab_Term___hyg_658____boxed(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__8; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__4(uint8_t, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_resolveName___closed__2; LEAN_EXPORT 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*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withSavedContext___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_mkTypeMismatchError___closed__2; lean_object* l_Lean_Meta_mkFreshLevelMVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -564,7 +572,6 @@ static lean_object* l_Lean_Elab_Term_isLetRecAuxMVar___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveName___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_throwPostpone___at_Lean_Elab_Term_tryPostpone___spec__1___rarg___closed__1; lean_object* lean_task_pure(lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__16; LEAN_EXPORT lean_object* l_Lean_log___at_Lean_Elab_Term_exceptionToSorry___spec__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -603,7 +610,6 @@ LEAN_EXPORT uint8_t l___private_Lean_Elab_Term_0__Lean_Elab_Tactic_beqCacheKey__ static lean_object* l_Lean_Elab_Term_collectUnassignedMVars_go___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedTacticReuse___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_expandMacroImpl_x3f(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Term_TermElabM_toIO___rarg___lambda__1(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_Elab_Term_mkInstMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_AssocList_foldlM___at_Lean_Elab_Term_ContainsPendingMVar_visit___spec__5(lean_object*, lean_object*); @@ -628,15 +634,16 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Term_0_ LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__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_instantiateMVars___at___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___spec__7(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withMacroExpansion(lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___closed__2; lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); static lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___lambda__2___closed__2; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__40(lean_object*, lean_object*, size_t, size_t); uint8_t l_Lean_TagAttribute_hasTag(lean_object*, lean_object*, lean_object*); lean_object* l_List_findSome_x3f___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17629_(lean_object*); lean_object* l_Lean_Meta_isType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofSyntax(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveName_process(lean_object*, 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_Term___hyg_17603_(lean_object*); static lean_object* l_Lean_Elab_Term_Context_autoBoundImplicits___default___closed__1; LEAN_EXPORT uint8_t l_Lean_AssocList_contains___at_Lean_Elab_Term_ContainsPendingMVar_visit___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitApp___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__28___boxed(lean_object*, lean_object*, lean_object*); @@ -654,6 +661,7 @@ lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(le LEAN_EXPORT lean_object* l_Lean_Elab_throwAbortCommand___at_Lean_Elab_Term_ensureNoUnassignedMVars___spec__1___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutErrToSorryImp___rarg(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_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_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__6; LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapMAux___at_Lean_Elab_Term_withDeclName___spec__5(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___private_Lean_Elab_Term_0__Lean_Elab_Tactic_hashCacheKey____x40_Lean_Elab_Term___hyg_735_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_registerMVarErrorInfo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -663,6 +671,7 @@ LEAN_EXPORT uint8_t l_Array_contains___at_Lean_Elab_Term_collectUnassignedMVars_ LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___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_Elab_Tactic_instInhabitedState; LEAN_EXPORT lean_object* l_Lean_Elab_Term_addAutoBoundImplicits_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_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__9; LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__12___boxed(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_Elab_Term_Context_tacSnap_x3f___default; @@ -674,7 +683,6 @@ static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_addAutoBoundImp LEAN_EXPORT lean_object* l_Lean_Elab_Term_TermElabM_toIO(lean_object*); lean_object* l_Lean_Meta_SavedState_restore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__1___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1(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*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_ppGoal(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_tryPostponeIfHasMVars_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -683,7 +691,7 @@ static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___l LEAN_EXPORT lean_object* l_Lean_Elab_withSaveParentDeclInfoContext___at_Lean_Elab_Term_withDeclName___spec__1___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_postponeElabTermCore___closed__5; static lean_object* l_Lean_Elab_addMacroStack___at_Lean_Elab_Term_instAddErrorMessageContextTermElabM___spec__1___closed__5; -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___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_Elab_Term_withRestoreOrSaveFull___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_Term_mkExplicitBinder___closed__10; LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabTerm___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 uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__23(lean_object*, lean_object*, size_t, size_t); @@ -693,10 +701,10 @@ static lean_object* l_Lean_Elab_Term_mkExplicitBinder___closed__4; lean_object* l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveLocalName_go(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT 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*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedTacticReuse___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__9; LEAN_EXPORT lean_object* l_Lean_Elab_Term_registerSyntheticMVarWithCurrRef___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_initFn____x40_Lean_Elab_Term___hyg_17680____closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyM___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__29___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__52(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_Term_withoutMacroStackAtErr___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -722,19 +730,19 @@ static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLam LEAN_EXPORT lean_object* l_Lean_Elab_Term_addAutoBoundImplicits___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_resolveId_x3f___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Elab_Term_MVarErrorInfo_logError___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_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__9; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_decorateErrorMessageWithLambdaImplicitVars(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_Term___hyg_17564____closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withAuxDecl(lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_forIn_visit___at_Lean_Elab_Term_logUnassignedUsingErrorInfos___spec__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_EXPORT lean_object* l_Lean_PersistentArray_anyM___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__5___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_addTermInfo___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_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__1; 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_Cache_pre___default___closed__1; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Term_logUnassignedUsingErrorInfos___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkSaveInfoAnnotation(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutPostponing(lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__6; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambdaAux___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_Elab_Term_0__Lean_Elab_Term_postponeElabTermCore___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedTacticReuse___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -765,6 +773,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkFreshIdent___rarg___lambda__1___boxe LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkFreshBinderName___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_registerCustomErrorIfMVar___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_profileitM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__11___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_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__3; LEAN_EXPORT 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_Lean_Elab_Term_TermElabM_run_x27___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___boxed__const__1; @@ -779,7 +788,6 @@ static uint8_t l_Lean_Elab_Term_collectUnassignedMVars_go___closed__1; static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_mkSyntheticSorryFor___closed__1; static lean_object* l_Lean_Elab_throwAbortTerm___at_Lean_Elab_Term_throwMVarError___spec__2___rarg___closed__1; lean_object* lean_st_mk_ref(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__1; static lean_object* l_Lean_Elab_Term_mkSaveInfoAnnotation___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Term_ContainsPendingMVar_visit(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -788,7 +796,6 @@ LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyM___at_Lean_Elab_Term_addAutoBound LEAN_EXPORT lean_object* l_liftExcept___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__8___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_isTacticOrPostponedHole_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_addAutoBoundImplicits_go___closed__1; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___closed__2; lean_object* lean_array_to_list(lean_object*, lean_object*); lean_object* l_ReaderT_instApplicativeOfMonad___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_addDotCompletionInfo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -808,7 +815,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_saveState___rarg(lean_object*, lean_ob lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); static lean_object* l_Lean_Elab_addMacroStack___at_Lean_Elab_Term_instAddErrorMessageContextTermElabM___spec__1___closed__1; LEAN_EXPORT uint8_t l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__1(uint8_t, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_applyVisibility___at_Lean_Elab_Term_expandDeclId___spec__5(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_mkTypeMismatchError___closed__3; LEAN_EXPORT 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*); @@ -825,6 +831,7 @@ static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__5; uint8_t l___private_Lean_Attributes_0__Lean_beqAttributeApplicationTime____x40_Lean_Attributes___hyg_15_(uint8_t, uint8_t); lean_object* l_Lean_RBNode_insert___at_Lean_MVarIdMap_insert___spec__1___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_findSomeRevMAux___at_Lean_Elab_Term_resolveLocalName___spec__9___boxed(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__2; LEAN_EXPORT lean_object* l_Lean_getDelayedMVarAssignment_x3f___at_Lean_Elab_Term_ContainsPendingMVar_visit___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_printTraces___at_Lean_Core_instMetaEvalCoreM___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageLog_forM___at_Lean_Elab_Term_instMetaEvalTermElabM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -833,7 +840,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_instMonadTermElabM___lambda__2(lean_ob LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapMAux___at___private_Lean_Elab_Term_0__Lean_Elab_Term_withoutModifyingStateWithInfoAndMessagesImpl___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_Term_throwErrorIfErrors___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_synthesizeInstMVarCore___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_Elab_initFn____x40_Lean_Elab_Term___hyg_17564_(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_dropTermParens(lean_object*); lean_object* lean_io_mono_nanos_now(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_findSomeRevM_x3f___at_Lean_Elab_Term_resolveLocalName___spec__7___boxed(lean_object*, lean_object*); @@ -886,11 +892,9 @@ LEAN_EXPORT lean_object* l_Lean_Elab_builtinIncrementalElabs; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_instToSnapshotTreeTacticParsedSnapshot_go___spec__1(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_tryPostponeIfHasMVars_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___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___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_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Term_0__Lean_Elab_Term_withoutModifyingStateWithInfoAndMessagesImpl___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* l_List_lengthTRAux___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withSaveParentDeclInfoContext___at_Lean_Elab_Term_withDeclName___spec__1___rarg(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_Term___hyg_17406____closed__9; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_resolveId_x3f___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_Elab_Term_mkNoImplicitLambdaAnnotation(lean_object*); LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Term_mkCoe___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -898,7 +902,6 @@ lean_object* l_Lean_addMacroScope(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MetavarContext_levelMVarToParam(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_commitIfNoErrors_x3f___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___closed__3; -LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148_(lean_object*); lean_object* l_Lean_Core_withFreshMacroScope___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Term_expandDeclId___spec__6___lambda__1___closed__5; LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Term_mkCoe___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*); @@ -913,7 +916,6 @@ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Term_addAutoBoundImpli LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyM___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__21(lean_object*, lean_object*); lean_object* l_Lean_RBNode_insert___at_Lean_FVarIdMap_insert___spec__1___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_isIncrementalElab___rarg___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___rarg___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___private_Lean_Elab_Term_0__Lean_Elab_Term_decorateErrorMessageWithLambdaImplicitVars___boxed(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_Array_anyMUnsafe_any___at_Lean_Elab_Term_collectUnassignedMVars_go___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -936,8 +938,6 @@ LEAN_EXPORT uint8_t l___private_Lean_Elab_Term_0__Lean_Elab_Term_isNoImplicitLam static lean_object* l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__10; LEAN_EXPORT lean_object* l_Lean_Elab_Term_isSaveInfoAnnotation_x3f___boxed(lean_object*); lean_object* l_Lean_Syntax_node2(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17590_(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___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*); static lean_object* l_Lean_Elab_Term_TermElabM_toIO___rarg___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_mkConstWithLevelParams___at_Lean_Elab_Term_expandDeclId___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -960,14 +960,12 @@ static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_isLambdaWithImp LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Term_expandDeclId___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*); static lean_object* l_Lean_Elab_Tactic_instInhabitedCacheKey___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__15; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withAutoBoundImplicit_loop(lean_object*); static lean_object* l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__3(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_Term_instMetaEvalTermElabM___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___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFns___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_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__9; LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__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_Lean_Syntax_matchesNull(lean_object*, lean_object*); static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Term_expandDeclId___spec__6___lambda__1___closed__3; @@ -976,11 +974,11 @@ static lean_object* l_Lean_Linter_checkDeprecated___at_Lean_Elab_Term_mkConst___ static lean_object* l_Lean_Elab_Tactic_instHashableCacheKey___closed__1; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__25(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__1___rarg___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_Term___hyg_17680____closed__9; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__3___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_throwTypeMismatchError___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_Lean_Elab_Term_MVarErrorInfo_logError___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_pushInfoTree___at_Lean_Elab_Term_addDotCompletionInfo___spec__3(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_Term___hyg_17406____closed__1; 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*); lean_object* l_Lean_Meta_saveState___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_getLetRecsToLift___boxed(lean_object*); @@ -989,11 +987,11 @@ uint64_t l___private_Lean_Expr_0__Lean_hashMVarId____x40_Lean_Expr___hyg_1921_(l uint8_t l_Lean_Syntax_isIdent(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambdaAux(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_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*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__2; +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__8; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_resolveId_x3f___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_Term_postponeElabTerm(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_Term___hyg_15187____closed__13; LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__46___boxed(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__9; lean_object* l_Lean_LocalDecl_fvarId(lean_object*); LEAN_EXPORT lean_object* l_List_filterMap___at_Lean_Elab_Term_resolveName___spec__1(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_isTacticBlock___boxed(lean_object*); @@ -1018,13 +1016,14 @@ extern lean_object* l_Lean_Meta_instMonadMetaM; LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__2(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_Elab_Term_getSyntheticMVarDecl_x3f___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_Term_0__Lean_Elab_Term_mkConsts(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_addTermInfo___closed__1; LEAN_EXPORT 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*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_instToStringMVarErrorKind(lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__6; extern lean_object* l_Std_Format_defWidth; static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_dropTermParens___closed__2; static lean_object* l_Lean_Elab_Term_instInhabitedMVarErrorInfo___closed__1; static lean_object* l_Lean_Elab_Term_instInhabitedMVarErrorKind___closed__1; +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__5; lean_object* l_Lean_MacroScopesView_review(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_setInfoState___at_Lean_Elab_Term_SavedState_restore___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_throwMaxRecDepthAt___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1032,9 +1031,9 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkCoe___lambda__3(lean_object*, lean_o LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_useImplicitLambda___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_BinderInfo_isImplicit(uint8_t); lean_object* l_Lean_Elab_mkElabAttribute___rarg(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_Term___hyg_3183____closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux(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 uint8_t l___private_Lean_Elab_Term_0__Lean_Elab_Term_isTacticBlock(lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__10; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visit___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__34(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_exprToSyntax___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_containsPendingMVar___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1049,7 +1048,6 @@ static lean_object* l_Lean_Elab_Term_resolveName_process___closed__3; static lean_object* l_Lean_logAt___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__2___lambda__2___closed__3; LEAN_EXPORT lean_object* l_Lean_MVarId_assign___at_Lean_Elab_Term_exprToSyntax___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_hashmap_mk_idx(lean_object*, uint64_t); -LEAN_EXPORT lean_object* l_Lean_Elab_withInfoContext_x27___at_Lean_Elab_Term_addTermInfo___spec__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_Term_throwErrorIfErrors___closed__2; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Term_instMetaEvalTermElabM___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_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*); @@ -1109,7 +1107,6 @@ LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Elab_Term_containsPendingMVa LEAN_EXPORT lean_object* l_Lean_Elab_throwAbortCommand___at_Lean_Elab_Term_ensureNoUnassignedMVars___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Term_mkCoe___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_instMonadBacktrackSavedStateTermElabM___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641_(lean_object*); extern lean_object* l_Lean_Linter_deprecatedAttr; LEAN_EXPORT lean_object* l_Lean_Elab_Term_instMonadMacroAdapterTermElabM___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Core_interruptExceptionId; @@ -1123,18 +1120,15 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_addTermInfo_x27(lean_object*, lean_obj LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_mkAuxName___spec__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_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___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_Linter_checkDeprecated___at_Lean_Elab_Term_mkConst___spec__1___closed__7; -LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__1; LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at_Lean_Elab_Term_resolveLocalName___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___lambda__3___closed__5; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Term_mkCoe___spec__1___lambda__2(lean_object*, uint8_t, lean_object*, 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_checkNotAlreadyDeclared___at_Lean_Elab_Term_expandDeclId___spec__6___lambda__1___closed__1; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Term_throwTypeMismatchError(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkCoe___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_Term_mkFreshIdent___rarg___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*); static lean_object* l_Lean_Elab_Term_mkCoe___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at_Lean_Elab_Term_resolveLocalName___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyMAux___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__22(lean_object*, lean_object*); static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Term_expandDeclId___spec__6___lambda__1___closed__4; @@ -1150,7 +1144,6 @@ static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__14; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_isNoImplicitLambda___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_addAutoBoundImplicits(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_AttributeImpl_erase___default___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__1; static lean_object* l_Lean_Elab_Term_MVarErrorInfo_logError_addArgName___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Term_saveState(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_tryPostponeIfMVar___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1173,10 +1166,10 @@ static lean_object* l_Lean_Elab_Term_exprToSyntax___lambda__1___closed__4; LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapM___at_Lean_Elab_Term_withDeclName___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_Elab_Term_collectUnassignedMVars(lean_object*, 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_Lean_Elab_Term_logUnassignedUsingErrorInfos___spec__4(lean_object*); +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__12; static lean_object* l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__11; uint8_t l_Lean_Name_isAtomic(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_instInhabitedTermElabM___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_Term___hyg_17564____closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_addCompletionInfo___at_Lean_Elab_Term_addDotCompletionInfo___spec__1___boxed(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*); static lean_object* l_Lean_Elab_Term_TermElabM_toIO___rarg___closed__4; @@ -1192,6 +1185,9 @@ LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_v LEAN_EXPORT 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*); static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Term_mkCoe___spec__1___lambda__4___closed__2; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__6; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__3; +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__14; LEAN_EXPORT lean_object* l_Lean_RBNode_find___at_Lean_Elab_Term_getSyntheticMVarDecl_x3f___spec__1(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFns___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__1(lean_object*); @@ -1221,6 +1217,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_isIncrementalElab___rarg___lambda__2___boxe LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda_loop___lambda__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*); LEAN_EXPORT lean_object* l_Lean_RBNode_forIn_visit___at_Lean_Elab_Term_logUnassignedUsingErrorInfos___spec__6___at_Lean_Elab_Term_logUnassignedUsingErrorInfos___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*); static lean_object* l_Lean_Elab_Term_observing___rarg___closed__1; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__4; static lean_object* l_Lean_Elab_Term_instMonadParentDeclTermElabM___closed__1; static lean_object* l_Lean_Elab_Term_MVarErrorInfo_logError_addArgName___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkFreshBinderName(lean_object*); @@ -1241,7 +1238,6 @@ lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__11___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_coerce_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_resolveId_x3f___lambda__2___closed__1; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__3; static lean_object* l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__6; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_expandDeclId___spec__4___closed__4; lean_object* l_Lean_ParametricAttribute_getParam_x3f___rarg(lean_object*, lean_object*, lean_object*, lean_object*); @@ -1256,7 +1252,6 @@ static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_isHole___closed LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__3___closed__6; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__3___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__5; static lean_object* l_Lean_Elab_Term_isLetRecAuxMVar___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveLocalName_loop___boxed(lean_object*, lean_object*, lean_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_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__27___boxed(lean_object*, lean_object*, lean_object*); @@ -1267,10 +1262,10 @@ static lean_object* l_Lean_Elab_Term_mkConst___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Term_instInhabitedState; static lean_object* l_Lean_Elab_Term_instToStringMVarErrorKind___closed__2; static lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__3___closed__5; -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___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* l_Lean_TagDeclarationExtension_tag(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedTacticReuse___at_Lean_Elab_Term_withNarrowedArgTacticReuse___spec__1___rarg(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_Term_0__Lean_Elab_Term_withoutModifyingStateWithInfoAndMessagesImpl___spec__10(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_Term___hyg_17680____closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Term_expandDeclId___spec__6___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_Elab_getResetInfoTrees___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__5___rarg(lean_object*, lean_object*); lean_object* l_Lean_Meta_mkHasTypeButIsExpectedMsg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1279,7 +1274,6 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Term_logUnassigne LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_postponeElabTermCore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_NameSet_contains(lean_object*, lean_object*); static lean_object* l_Lean_logAt___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__2___lambda__2___closed__1; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_Term_expandDeclId(lean_object*, lean_object*, 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_checkNotAlreadyDeclared___at_Lean_Elab_Term_expandDeclId___spec__6___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_Elab_isIncrementalElab___rarg___closed__1; @@ -1287,6 +1281,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_instInhabitedMVarErrorInfo; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_isExplicit___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_MVarErrorInfo_logError_addArgName(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__13___rarg(lean_object*); +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Term_expandDeclId___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_Elab_Term_mkCoe___lambda__1___closed__1; LEAN_EXPORT 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*); @@ -1297,7 +1292,6 @@ static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__18; LEAN_EXPORT lean_object* l_Lean_Elab_isIncrementalElab___rarg___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___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_localDeclDependsOn___at_Lean_Elab_Term_addAutoBoundImplicits_go___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_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__3; 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_Elab_Term_0__Lean_Elab_Term_isHole___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_commitIfDidNotPostpone___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1309,15 +1303,12 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Elab_Term_ LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at_Lean_Elab_Term_withMacroExpansion___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_Lean_Elab_Term_resolveLocalName___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutTacticReuse(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__12; -static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__6; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_Term_0__Lean_Elab_Term_isLambdaWithImplicit___spec__1(lean_object*, size_t, size_t); uint8_t l_Lean_Syntax_isNone(lean_object*); lean_object* lean_panic_fn(lean_object*, lean_object*); static lean_object* l_Lean_Elab_addMacroStack___at_Lean_Elab_Term_instAddErrorMessageContextTermElabM___spec__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Term_applyAttributes(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_MetavarContext_0__Lean_DependsOn_dep_visitApp___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__20(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__11; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_postponeElabTermCore___lambda__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_annotation_x3f(lean_object*, lean_object*); extern lean_object* l_Lean_Expr_instHashable; @@ -1338,8 +1329,8 @@ LEAN_EXPORT uint8_t l_Lean_Elab_Term_Context_isNoncomputableSection___default; LEAN_EXPORT lean_object* l_Lean_getDelayedMVarAssignment_x3f___at_Lean_Elab_Term_isLetRecAuxMVar___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Elab_Term_0__Lean_Elab_Term_isLambdaWithImplicit(lean_object*); static lean_object* l_Lean_throwMaxRecDepthAt___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__5___closed__1; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__8; lean_object* l_Lean_Expr_getAppFn(lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___closed__1; uint8_t l_Lean_isStructure(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_Term_withAuxDecl___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*); static lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_Term_0__Lean_Elab_Term_isLambdaWithImplicit___spec__1___closed__1; @@ -1348,10 +1339,12 @@ extern lean_object* l_Lean_Elab_autoImplicit; LEAN_EXPORT lean_object* l_Lean_log___at_Lean_Elab_Term_exceptionToSorry___spec__2___boxed(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_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_withDeclName___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_initFn____x40_Lean_Elab_Term___hyg_17680____closed__7; lean_object* l_Lean_Core_resetMessageLog(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_logUnassignedUsingErrorInfos___spec__5(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_Term_tryPostponeIfHasMVars(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_throwAbortCommand___at_Lean_Elab_Term_ensureNoUnassignedMVars___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__27(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_instMonadMacroAdapterTermElabM___closed__1; @@ -1382,13 +1375,12 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___lambda__1(lea LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLevel(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_ensureType___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___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*); -static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkConst(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_mapM___at_Lean_Elab_Term_withDeclName___spec__9(lean_object*, 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_mkTypeMismatchError(lean_object*, lean_object*, 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_instInhabitedTacticFinished; LEAN_EXPORT lean_object* l_Lean_Elab_throwAutoBoundImplicitLocal___at_Lean_Elab_Term_resolveName_process___spec__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_Term___hyg_17641____closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_structRangeEqWithTraceReuse(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visit___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__42(lean_object*, lean_object*, lean_object*); @@ -1399,7 +1391,6 @@ lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_obj lean_object* l_Array_ofSubarray___rarg(lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__33(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___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_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_isIncrementalElab___rarg___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Elab_Term_addDotCompletionInfo___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_Term_withoutTacticIncrementality(lean_object*, lean_object*); @@ -1407,6 +1398,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveName___lambda__4___boxed(lean_o static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_postponeElabTermCore___closed__2; extern lean_object* l_Lean_Elab_postponeExceptionId; LEAN_EXPORT lean_object* l_Lean_AssocList_find_x3f___at_Lean_Elab_Term_ContainsPendingMVar_visit___spec__8___boxed(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204____closed__1; LEAN_EXPORT lean_object* l_Array_contains___at_Lean_Elab_Term_collectUnassignedMVars_go___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Environment_getModuleIdxFor_x3f(lean_object*, lean_object*); extern lean_object* l_Lean_protectedExt; @@ -1423,6 +1415,7 @@ static lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Term_expandDeclId___sp static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_isNoImplicitLambda___closed__1; lean_object* l_List_reverse___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at_Lean_Elab_Term_withMacroExpansion___spec__2___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_initFn____x40_Lean_Elab_Term___hyg_17603____closed__5; LEAN_EXPORT 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*); static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__22; LEAN_EXPORT lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___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*); @@ -1430,9 +1423,9 @@ LEAN_EXPORT lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Term static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__11; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_withoutModifyingStateWithInfoAndMessagesImpl(lean_object*); lean_object* l___private_Lean_ToExpr_0__Lean_Name_toExprAux(lean_object*); -static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__13; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Elab_Term_logUnassignedUsingErrorInfos___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_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___rarg___lambda__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204_(lean_object*); lean_object* l___private_Lean_MonadEnv_0__Lean_mkAuxNameAux(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_firstFrontendMacroScope; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_instBEqCacheKey; @@ -1450,11 +1443,14 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Term_addAutoBound lean_object* l_Lean_instantiateMVarsCore(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_resolveName_x27___closed__1; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Term_instMetaEvalTermElabM___spec__5(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_Term___hyg_17680____lambda__3___closed__2; extern lean_object* l_Lean_Elab_autoBoundImplicitExceptionId; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withoutTacticReuse___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___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_withSaveParentDeclInfoContext___at_Lean_Elab_Term_withDeclName___spec__1(lean_object*); uint8_t l_Lean_Name_quickCmp(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__4; LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__7; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Term_instMetaEvalTermElabM___spec__4(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1465,9 +1461,9 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedTacticReuse___at_Lean_Elab LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_withDeclName___spec__11(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_Elab_Term_throwMVarError___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_Array_mapMUnsafe_map___at_Lean_Elab_Term_withDeclName___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*); +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__15; LEAN_EXPORT lean_object* l_Lean_Elab_Term_instInhabitedLetRecToLift; size_t lean_usize_add(size_t, size_t); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__4; lean_object* l_Lean_Meta_getMVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___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_Elab_Term_postponeElabTerm___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1480,6 +1476,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_addAutoBoundImpli uint8_t l_Lean_Expr_hasFVar(lean_object*); static lean_object* l_Lean_Elab_isIncrementalElab___rarg___lambda__3___closed__1; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__11(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Language_SnapshotTask_map___rarg(lean_object*, lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_logAt___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__8(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_Term_0__Lean_Elab_Term_elabTermAux___lambda__7___closed__1; @@ -1502,7 +1499,6 @@ LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyM___at_Lean_Elab_Term_addAuto static lean_object* l_Lean_Elab_Term_mkExplicitBinder___closed__13; LEAN_EXPORT lean_object* l_Lean_Elab_Term_addTermInfo(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*); static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_postponeElabTermCore___closed__1; -static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__8; extern lean_object* l_Lean_trace_profiler; LEAN_EXPORT lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Term_expandDeclId___spec__2___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_EXPORT lean_object* l_Lean_Elab_Term_withoutErrToSorry___rarg(lean_object*, lean_object*); @@ -1521,6 +1517,7 @@ static lean_object* l_Lean_Elab_addMacroStack___at_Lean_Elab_Term_instAddErrorMe extern lean_object* l_Lean_instInhabitedSyntax; LEAN_EXPORT lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__1___rarg(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_Term___hyg_17680____lambda__2___closed__2; extern lean_object* l_Lean_useDiagnosticMsg; LEAN_EXPORT lean_object* l_Lean_Elab_Term_getSyntheticMVarDecl_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkCoe___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1546,14 +1543,13 @@ lean_object* l_Lean_Meta_mkFreshTypeMVar(uint8_t, lean_object*, lean_object*, le LEAN_EXPORT lean_object* l_Lean_Elab_Term_universeConstraintsCheckpoint(lean_object*); static lean_object* l_Lean_Elab_Term_instToStringMVarErrorKind___closed__1; LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___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_Elab_withInfoContext_x27___at_Lean_Elab_Term_addTermInfo___spec__1(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_Lean_Elab_Term_TermElabM_toIO___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_EXPORT lean_object* l_Lean_Elab_withInfoTreeContext___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___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___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Term_mkCoe___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Term_expandDeclId___spec__6___closed__1; static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1___closed__3; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_contains___at_Lean_Elab_Term_logUnassignedUsingErrorInfos___spec__1(lean_object*, lean_object*); lean_object* l_Lean_getAttributeImpl(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_foldl___at_Lean_Elab_Term_instAddErrorMessageContextTermElabM___spec__2(lean_object*, lean_object*, lean_object*); @@ -1573,13 +1569,13 @@ static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_decorateErrorMe static lean_object* l_Lean_Elab_Term_withAutoBoundImplicit___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_logException___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_instToStringLVal(lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_throwAbortTerm___at_Lean_Elab_Term_ensureType___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux___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_logWarning___at_Lean_Elab_Term_mkConst___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_isLetRecAuxMVar___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_withDeclName___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*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___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_Lean_Elab_Term_withRestoreOrSaveFull___rarg___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___private_Lean_Message_0__Lean_beqMessageSeverity____x40_Lean_Message___hyg_103_(uint8_t, uint8_t); lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withAutoBoundImplicitForbiddenPred(lean_object*); @@ -1596,7 +1592,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_withAuxDecl___rarg___lambda__1(lean_ob LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at_Lean_Elab_Term_resolveLocalName___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_findSomeRevMAux___at_Lean_Elab_Term_resolveLocalName___spec__9(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_resolveId_x3f___lambda__2(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_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__2; LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at_Lean_Elab_Term_resolveLocalName___spec__3(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__13(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_InfoTree_Main_0__Lean_Elab_withSavedPartialInfoContext___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__4___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1613,7 +1608,6 @@ static lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___closed__13; LEAN_EXPORT lean_object* l_Lean_Elab_Term_instMetaEvalTermElabM___rarg___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_nat_add(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_instToStringSyntheticMVarKind___closed__1; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_withMacroExpansionInfo___at_Lean_Elab_Term_withMacroExpansion___spec__1(lean_object*); static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___lambda__1___closed__6; LEAN_EXPORT lean_object* l_Lean_Elab_Term_instInhabitedMVarErrorKind; @@ -1622,8 +1616,8 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_observing(lean_object*); uint8_t l_Lean_Exception_isRuntime(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Term_instMetaEvalTermElabM___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_EXPORT lean_object* l_Lean_Elab_Term_isLetRecAuxMVar___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_Term_initFn____x40_Lean_Elab_Term___hyg_3183_(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visit___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__26(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__11; LEAN_EXPORT lean_object* l_Lean_Elab_Term_mkFreshIdent___rarg(lean_object*, lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT 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*); @@ -1632,7 +1626,6 @@ static lean_object* l_Lean_Linter_checkDeprecated___at_Lean_Elab_Term_mkConst___ LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__19(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_pushInfoLeaf___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withNarrowedArgTacticReuse___rarg(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_Term___hyg_17641____lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_pushInfoTree___at_Lean_Elab_Term_addDotCompletionInfo___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_isTacticBlock___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabImplicitLambda(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1647,6 +1640,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Term_mkConst___spec__4 static lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFns___closed__1; static lean_object* l_Lean_Elab_Term_synthesizeInstMVarCore___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_SavedState_restore(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_Term___hyg_17603____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Term_throwMVarError___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_mkDeclName___at_Lean_Elab_Term_expandDeclId___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*); @@ -1674,6 +1668,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_getResetInfoTrees___at_Lean_Elab_Term_withD lean_object* lean_expr_instantiate1(lean_object*, lean_object*); lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); static lean_object* l_Lean_Elab_expandDeclId___at_Lean_Elab_Term_expandDeclId___spec__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withMacroExpansion___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_Term_mkFreshBinderName___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_checkNotAlreadyDeclared___at_Lean_Elab_Term_expandDeclId___spec__6___lambda__3___closed__1; @@ -1681,7 +1676,9 @@ static lean_object* l_Lean_Elab_Term_mkExplicitBinder___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_tryPostpone(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_filterTR_loop___at_Lean_filterFieldList___spec__1(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyMAux___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__38(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187_(lean_object*); LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at_Lean_Elab_Term_resolveLocalName___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_removeSaveInfoAnnotation(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Term_0__Lean_Elab_Term_withoutModifyingStateWithInfoAndMessagesImpl___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_Elab_Term_exprToSyntax___lambda__1___closed__3; @@ -1699,6 +1696,7 @@ static lean_object* l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__8; static lean_object* l_Lean_Elab_Term_mkExplicitBinder___closed__8; static lean_object* l_Lean_Linter_checkDeprecated___at_Lean_Elab_Term_mkConst___spec__1___closed__8; LEAN_EXPORT uint8_t l_Lean_Elab_Term_Context_ignoreTCFailures___default; +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445_(lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__47___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Term_collectUnassignedMVars_go___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_Term_0__Lean_Elab_Term_isLambdaWithImplicit___spec__1___boxed(lean_object*, lean_object*, lean_object*); @@ -3364,347 +3362,453 @@ x_11 = l_Lean_Elab_Term_SavedState_restore(x_1, x_10, x_3, x_4, x_5, x_6, x_7, x return x_11; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___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_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___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_9; -x_9 = lean_apply_5(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; uint8_t x_13; -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_st_ref_get(x_3, x_11); -x_13 = !lean_is_exclusive(x_12); -if (x_13 == 0) +lean_object* x_11; +lean_inc(x_5); +x_11 = lean_apply_2(x_1, x_4, x_5); +if (lean_obj_tag(x_2) == 0) { -lean_object* x_14; lean_object* x_15; -x_14 = lean_ctor_get(x_12, 0); -x_15 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_15, 0, x_10); -lean_ctor_set(x_15, 1, x_14); -lean_ctor_set(x_12, 0, x_15); -return x_12; -} -else +lean_object* x_12; lean_object* x_13; +x_12 = lean_box(0); +x_13 = l_Lean_Meta_withRestoreOrSaveFull___rarg(x_12, x_11, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_13) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = lean_ctor_get(x_12, 0); -x_17 = lean_ctor_get(x_12, 1); -lean_inc(x_17); -lean_inc(x_16); -lean_dec(x_12); -x_18 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_18, 0, x_10); -lean_ctor_set(x_18, 1, x_16); -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 +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); +lean_dec(x_13); +x_16 = !lean_is_exclusive(x_14); +if (x_16 == 0) { -uint8_t x_20; -x_20 = !lean_is_exclusive(x_9); -if (x_20 == 0) +lean_object* x_17; lean_object* x_18; uint8_t x_19; +x_17 = lean_ctor_get(x_14, 1); +x_18 = lean_st_ref_get(x_5, x_15); +lean_dec(x_5); +x_19 = !lean_is_exclusive(x_18); +if (x_19 == 0) { -return x_9; +lean_object* x_20; lean_object* x_21; +x_20 = lean_ctor_get(x_18, 0); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_17); +lean_ctor_set(x_21, 1, x_20); +lean_ctor_set(x_14, 1, x_21); +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_9, 0); -x_22 = lean_ctor_get(x_9, 1); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_22 = lean_ctor_get(x_18, 0); +x_23 = lean_ctor_get(x_18, 1); +lean_inc(x_23); lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_9); -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_dec(x_18); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_17); +lean_ctor_set(x_24, 1, x_22); +lean_ctor_set(x_14, 1, x_24); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_14); +lean_ctor_set(x_25, 1, x_23); +return x_25; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___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, lean_object* x_9) { -_start: +else { -lean_object* x_10; lean_object* x_11; -x_10 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withRestoreOrSaveFull___rarg___lambda__1___boxed), 8, 1); -lean_closure_set(x_10, 0, x_4); -x_11 = lean_apply_8(x_1, x_10, x_2, x_3, x_5, x_6, x_7, x_8, x_9); -return x_11; -} +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_26 = lean_ctor_get(x_14, 0); +x_27 = lean_ctor_get(x_14, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_14); +x_28 = lean_st_ref_get(x_5, x_15); +lean_dec(x_5); +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_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___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; -x_11 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withRestoreOrSaveFull___rarg___lambda__2), 9, 3); -lean_closure_set(x_11, 0, x_1); -lean_closure_set(x_11, 1, x_4); -lean_closure_set(x_11, 2, x_5); -if (lean_obj_tag(x_2) == 0) -{ -lean_object* x_12; lean_object* x_13; -x_12 = lean_box(0); -x_13 = l_Lean_Meta_withRestoreOrSaveFull___rarg(x_12, x_11, x_6, x_7, x_8, x_9, x_10); -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; +x_32 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_32, 0, x_27); +lean_ctor_set(x_32, 1, x_29); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_26); +lean_ctor_set(x_33, 1, x_32); +if (lean_is_scalar(x_31)) { + x_34 = lean_alloc_ctor(0, 2, 0); +} else { + x_34 = x_31; } -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; +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_30); +return x_34; } } else { -uint8_t x_18; -x_18 = !lean_is_exclusive(x_13); -if (x_18 == 0) +uint8_t x_35; +lean_dec(x_5); +x_35 = !lean_is_exclusive(x_13); +if (x_35 == 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_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_13, 0); +x_37 = lean_ctor_get(x_13, 1); +lean_inc(x_37); +lean_inc(x_36); 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; +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_22; -x_22 = !lean_is_exclusive(x_2); -if (x_22 == 0) +uint8_t x_39; +x_39 = !lean_is_exclusive(x_2); +if (x_39 == 0) { -lean_object* x_23; uint8_t x_24; -x_23 = lean_ctor_get(x_2, 0); -x_24 = !lean_is_exclusive(x_23); -if (x_24 == 0) +lean_object* x_40; uint8_t x_41; +x_40 = lean_ctor_get(x_2, 0); +x_41 = !lean_is_exclusive(x_40); +if (x_41 == 0) { -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_23, 1); -x_26 = lean_ctor_get(x_25, 0); -lean_inc(x_26); -lean_dec(x_25); -lean_ctor_set(x_23, 1, x_26); -x_27 = l_Lean_Meta_withRestoreOrSaveFull___rarg(x_2, x_11, x_6, x_7, x_8, x_9, x_10); -if (lean_obj_tag(x_27) == 0) +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_40, 1); +x_43 = lean_ctor_get(x_42, 0); +lean_inc(x_43); +lean_dec(x_42); +lean_ctor_set(x_40, 1, x_43); +x_44 = l_Lean_Meta_withRestoreOrSaveFull___rarg(x_2, x_11, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_44) == 0) { -uint8_t x_28; -x_28 = !lean_is_exclusive(x_27); -if (x_28 == 0) +lean_object* x_45; lean_object* x_46; uint8_t 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 = !lean_is_exclusive(x_45); +if (x_47 == 0) { -return x_27; +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = lean_ctor_get(x_45, 1); +x_49 = lean_st_ref_get(x_5, x_46); +lean_dec(x_5); +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); +x_52 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_52, 0, x_48); +lean_ctor_set(x_52, 1, x_51); +lean_ctor_set(x_45, 1, x_52); +lean_ctor_set(x_49, 0, x_45); +return x_49; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_27, 0); -x_30 = lean_ctor_get(x_27, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_27); -x_31 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_53 = lean_ctor_get(x_49, 0); +x_54 = lean_ctor_get(x_49, 1); +lean_inc(x_54); +lean_inc(x_53); +lean_dec(x_49); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_48); +lean_ctor_set(x_55, 1, x_53); +lean_ctor_set(x_45, 1, x_55); +x_56 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_56, 0, x_45); +lean_ctor_set(x_56, 1, x_54); +return x_56; } } else { -uint8_t x_32; -x_32 = !lean_is_exclusive(x_27); -if (x_32 == 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_45, 0); +x_58 = lean_ctor_get(x_45, 1); +lean_inc(x_58); +lean_inc(x_57); +lean_dec(x_45); +x_59 = lean_st_ref_get(x_5, x_46); +lean_dec(x_5); +x_60 = lean_ctor_get(x_59, 0); +lean_inc(x_60); +x_61 = lean_ctor_get(x_59, 1); +lean_inc(x_61); +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_59); + x_62 = lean_box(0); +} +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_58); +lean_ctor_set(x_63, 1, x_60); +x_64 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_64, 0, x_57); +lean_ctor_set(x_64, 1, x_63); +if (lean_is_scalar(x_62)) { + x_65 = lean_alloc_ctor(0, 2, 0); +} else { + x_65 = x_62; +} +lean_ctor_set(x_65, 0, x_64); +lean_ctor_set(x_65, 1, x_61); +return x_65; +} +} +else { -return x_27; +uint8_t x_66; +lean_dec(x_5); +x_66 = !lean_is_exclusive(x_44); +if (x_66 == 0) +{ +return x_44; } else { -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; +lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_67 = lean_ctor_get(x_44, 0); +x_68 = lean_ctor_get(x_44, 1); +lean_inc(x_68); +lean_inc(x_67); +lean_dec(x_44); +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_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -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_ctor_get(x_37, 0); -lean_inc(x_38); -lean_dec(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); -lean_ctor_set(x_2, 0, x_39); -x_40 = l_Lean_Meta_withRestoreOrSaveFull___rarg(x_2, x_11, x_6, x_7, x_8, x_9, x_10); -if (lean_obj_tag(x_40) == 0) +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_40, 0); +x_71 = lean_ctor_get(x_40, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_40); +x_72 = lean_ctor_get(x_71, 0); +lean_inc(x_72); +lean_dec(x_71); +x_73 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_73, 0, x_70); +lean_ctor_set(x_73, 1, x_72); +lean_ctor_set(x_2, 0, x_73); +x_74 = l_Lean_Meta_withRestoreOrSaveFull___rarg(x_2, x_11, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_74) == 0) { -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -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; +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; +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_ctor_get(x_75, 0); +lean_inc(x_77); +x_78 = lean_ctor_get(x_75, 1); +lean_inc(x_78); +if (lean_is_exclusive(x_75)) { + lean_ctor_release(x_75, 0); + lean_ctor_release(x_75, 1); + x_79 = x_75; } else { - lean_dec_ref(x_40); - x_43 = lean_box(0); + lean_dec_ref(x_75); + x_79 = lean_box(0); } -if (lean_is_scalar(x_43)) { - x_44 = lean_alloc_ctor(0, 2, 0); +x_80 = lean_st_ref_get(x_5, x_76); +lean_dec(x_5); +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 { - x_44 = x_43; + lean_dec_ref(x_80); + x_83 = lean_box(0); } -lean_ctor_set(x_44, 0, x_41); -lean_ctor_set(x_44, 1, x_42); -return x_44; +x_84 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_84, 0, x_78); +lean_ctor_set(x_84, 1, x_81); +if (lean_is_scalar(x_79)) { + x_85 = lean_alloc_ctor(0, 2, 0); +} else { + x_85 = x_79; +} +lean_ctor_set(x_85, 0, x_77); +lean_ctor_set(x_85, 1, x_84); +if (lean_is_scalar(x_83)) { + x_86 = lean_alloc_ctor(0, 2, 0); +} else { + x_86 = x_83; +} +lean_ctor_set(x_86, 0, x_85); +lean_ctor_set(x_86, 1, x_82); +return x_86; } else { -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_45 = lean_ctor_get(x_40, 0); -lean_inc(x_45); -x_46 = lean_ctor_get(x_40, 1); -lean_inc(x_46); -if (lean_is_exclusive(x_40)) { - lean_ctor_release(x_40, 0); - lean_ctor_release(x_40, 1); - x_47 = x_40; +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; +lean_dec(x_5); +x_87 = lean_ctor_get(x_74, 0); +lean_inc(x_87); +x_88 = lean_ctor_get(x_74, 1); +lean_inc(x_88); +if (lean_is_exclusive(x_74)) { + lean_ctor_release(x_74, 0); + lean_ctor_release(x_74, 1); + x_89 = x_74; } else { - lean_dec_ref(x_40); - x_47 = lean_box(0); + lean_dec_ref(x_74); + x_89 = lean_box(0); } -if (lean_is_scalar(x_47)) { - x_48 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_89)) { + x_90 = lean_alloc_ctor(1, 2, 0); } else { - x_48 = x_47; + x_90 = x_89; } -lean_ctor_set(x_48, 0, x_45); -lean_ctor_set(x_48, 1, x_46); -return x_48; +lean_ctor_set(x_90, 0, x_87); +lean_ctor_set(x_90, 1, x_88); +return x_90; } } } 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; -x_49 = lean_ctor_get(x_2, 0); -lean_inc(x_49); +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_91 = lean_ctor_get(x_2, 0); +lean_inc(x_91); lean_dec(x_2); -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; +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; } else { - lean_dec_ref(x_49); - x_52 = lean_box(0); + lean_dec_ref(x_91); + x_94 = lean_box(0); } -x_53 = lean_ctor_get(x_51, 0); -lean_inc(x_53); -lean_dec(x_51); -if (lean_is_scalar(x_52)) { - x_54 = lean_alloc_ctor(0, 2, 0); +x_95 = lean_ctor_get(x_93, 0); +lean_inc(x_95); +lean_dec(x_93); +if (lean_is_scalar(x_94)) { + x_96 = lean_alloc_ctor(0, 2, 0); } else { - x_54 = x_52; + x_96 = x_94; } -lean_ctor_set(x_54, 0, x_50); -lean_ctor_set(x_54, 1, x_53); -x_55 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_55, 0, x_54); -x_56 = l_Lean_Meta_withRestoreOrSaveFull___rarg(x_55, x_11, x_6, x_7, x_8, x_9, x_10); -if (lean_obj_tag(x_56) == 0) +lean_ctor_set(x_96, 0, x_92); +lean_ctor_set(x_96, 1, x_95); +x_97 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_97, 0, x_96); +x_98 = l_Lean_Meta_withRestoreOrSaveFull___rarg(x_97, x_11, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_98) == 0) { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_57 = lean_ctor_get(x_56, 0); -lean_inc(x_57); -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; +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_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 = lean_ctor_get(x_99, 0); +lean_inc(x_101); +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_56); - x_59 = lean_box(0); + lean_dec_ref(x_99); + x_103 = lean_box(0); } -if (lean_is_scalar(x_59)) { - x_60 = lean_alloc_ctor(0, 2, 0); +x_104 = lean_st_ref_get(x_5, x_100); +lean_dec(x_5); +x_105 = lean_ctor_get(x_104, 0); +lean_inc(x_105); +x_106 = lean_ctor_get(x_104, 1); +lean_inc(x_106); +if (lean_is_exclusive(x_104)) { + lean_ctor_release(x_104, 0); + lean_ctor_release(x_104, 1); + x_107 = x_104; } else { - x_60 = x_59; + lean_dec_ref(x_104); + x_107 = lean_box(0); } -lean_ctor_set(x_60, 0, x_57); -lean_ctor_set(x_60, 1, x_58); -return x_60; +x_108 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_108, 0, x_102); +lean_ctor_set(x_108, 1, x_105); +if (lean_is_scalar(x_103)) { + x_109 = lean_alloc_ctor(0, 2, 0); +} else { + x_109 = x_103; +} +lean_ctor_set(x_109, 0, x_101); +lean_ctor_set(x_109, 1, x_108); +if (lean_is_scalar(x_107)) { + x_110 = lean_alloc_ctor(0, 2, 0); +} else { + x_110 = x_107; +} +lean_ctor_set(x_110, 0, x_109); +lean_ctor_set(x_110, 1, x_106); +return x_110; } else { -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_61 = lean_ctor_get(x_56, 0); -lean_inc(x_61); -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; +lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; +lean_dec(x_5); +x_111 = lean_ctor_get(x_98, 0); +lean_inc(x_111); +x_112 = lean_ctor_get(x_98, 1); +lean_inc(x_112); +if (lean_is_exclusive(x_98)) { + lean_ctor_release(x_98, 0); + lean_ctor_release(x_98, 1); + x_113 = x_98; } else { - lean_dec_ref(x_56); - x_63 = lean_box(0); + lean_dec_ref(x_98); + x_113 = lean_box(0); } -if (lean_is_scalar(x_63)) { - x_64 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_113)) { + x_114 = lean_alloc_ctor(1, 2, 0); } else { - x_64 = x_63; + x_114 = x_113; } -lean_ctor_set(x_64, 0, x_61); -lean_ctor_set(x_64, 1, x_62); -return x_64; +lean_ctor_set(x_114, 0, x_111); +lean_ctor_set(x_114, 1, x_112); +return x_114; } } } @@ -3717,7 +3821,7 @@ if (lean_obj_tag(x_1) == 0) { lean_object* x_10; lean_object* x_11; x_10 = lean_box(0); -x_11 = l_Lean_Elab_Term_withRestoreOrSaveFull___rarg___lambda__3(x_2, x_1, x_10, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_11 = l_Lean_Elab_Term_withRestoreOrSaveFull___rarg___lambda__1(x_2, x_1, x_10, x_3, x_4, x_5, x_6, x_7, x_8, x_9); return x_11; } else @@ -3737,7 +3841,7 @@ lean_inc(x_16); x_17 = lean_ctor_get(x_15, 1); lean_inc(x_17); lean_dec(x_15); -x_18 = l_Lean_Elab_Term_withRestoreOrSaveFull___rarg___lambda__3(x_2, x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_17); +x_18 = l_Lean_Elab_Term_withRestoreOrSaveFull___rarg___lambda__1(x_2, x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_17); lean_dec(x_16); return x_18; } @@ -3751,21 +3855,11 @@ x_2 = lean_alloc_closure((void*)(l_Lean_Elab_Term_withRestoreOrSaveFull___rarg), return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___rarg___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_Term_withRestoreOrSaveFull___rarg___lambda__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_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___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) { +LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___rarg___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_Term_withRestoreOrSaveFull___rarg___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_Elab_Term_withRestoreOrSaveFull___rarg___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_3); return x_11; } @@ -9149,7 +9243,7 @@ x_8 = l_Lean_Elab_mkElabAttribute___rarg(x_3, x_4, x_5, x_6, x_7, x_1, x_2); return x_8; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3183____closed__1() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204____closed__1() { _start: { lean_object* x_1; @@ -9157,23 +9251,23 @@ x_1 = lean_mk_string_from_bytes("termElabAttribute", 17); return x_1; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3183____closed__2() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204____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_Term_mkTermElabAttributeUnsafe___closed__5; x_2 = l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__3___closed__2; x_3 = l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__7; -x_4 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3183____closed__1; +x_4 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204____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_Term_initFn____x40_Lean_Elab_Term___hyg_3183_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3183____closed__2; +x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204____closed__2; x_3 = l_Lean_Elab_Term_mkTermElabAttributeUnsafe(x_2, x_1); return x_3; } @@ -28518,6 +28612,24 @@ x_2 = lean_alloc_closure((void*)(l_Lean_profileitM___at___private_Lean_Elab_Term return x_2; } } +LEAN_EXPORT lean_object* l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___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, 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_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__12(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__12___rarg___boxed), 8, 0); +return x_2; +} +} LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___lambda__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) { _start: { @@ -28592,25 +28704,44 @@ return x_2; LEAN_EXPORT lean_object* l___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, 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; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_object* x_11; lean_object* x_12; uint8_t x_13; x_11 = lean_ctor_get(x_8, 2); lean_inc(x_11); -x_12 = lean_array_get_size(x_2); -x_13 = lean_usize_of_nat(x_12); -lean_dec(x_12); -x_14 = lean_box_usize(x_13); -x_15 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___boxed__const__1; -x_16 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___lambda__1___boxed), 12, 5); -lean_closure_set(x_16, 0, x_1); -lean_closure_set(x_16, 1, x_3); -lean_closure_set(x_16, 2, x_2); -lean_closure_set(x_16, 3, x_14); -lean_closure_set(x_16, 4, x_15); -x_17 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___closed__1; -x_18 = lean_box(0); -x_19 = l_Lean_profileitM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__11___rarg(x_17, x_11, x_16, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_12 = lean_box(0); +x_13 = lean_name_eq(x_1, x_12); +if (x_13 == 0) +{ +lean_object* 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; +x_14 = lean_array_get_size(x_2); +x_15 = lean_usize_of_nat(x_14); +lean_dec(x_14); +x_16 = lean_box_usize(x_15); +x_17 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___boxed__const__1; +x_18 = lean_alloc_closure((void*)(l___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___lambda__1___boxed), 12, 5); +lean_closure_set(x_18, 0, x_1); +lean_closure_set(x_18, 1, x_3); +lean_closure_set(x_18, 2, x_2); +lean_closure_set(x_18, 3, x_16); +lean_closure_set(x_18, 4, x_17); +x_19 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___closed__1; +x_20 = l_Lean_profileitM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__11___rarg(x_19, x_11, x_18, x_12, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_11); -return x_19; +return x_20; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_21 = lean_box(0); +x_22 = lean_alloc_closure((void*)(l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__12___rarg___boxed), 8, 1); +lean_closure_set(x_22, 0, x_21); +x_23 = l___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___closed__1; +x_24 = l_Lean_profileitM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__11___rarg(x_23, x_11, x_22, x_12, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_11); +return x_24; +} } } LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___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) { @@ -28756,6 +28887,20 @@ lean_dec(x_1); return x_12; } } +LEAN_EXPORT lean_object* l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___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, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__12___rarg(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_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___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: { @@ -40258,25 +40403,7 @@ lean_dec(x_7); return x_15; } } -LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___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) { -_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_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1___rarg___boxed), 8, 0); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_withInfoContext_x27___at_Lean_Elab_Term_addTermInfo___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_EXPORT lean_object* l_Lean_Elab_withInfoContext_x27___at_Lean_Elab_Term_addTermInfo___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; uint8_t x_13; @@ -41014,23 +41141,33 @@ x_15 = l_Lean_Elab_Term_mkTermInfo(x_1, x_2, x_3, x_4, x_5, x_6, x_8, x_9, x_10, return x_15; } } +static lean_object* _init_l_Lean_Elab_Term_addTermInfo___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_alloc_closure((void*)(l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__12___rarg___boxed), 8, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_Term_addTermInfo(lean_object* x_1, 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) { _start: { -lean_object* x_15; uint8_t x_30; -x_30 = lean_ctor_get_uint8(x_8, sizeof(void*)*9 + 7); -if (x_30 == 0) +lean_object* x_15; uint8_t x_29; +x_29 = lean_ctor_get_uint8(x_8, sizeof(void*)*9 + 7); +if (x_29 == 0) { -lean_object* x_31; -x_31 = lean_box(0); -x_15 = x_31; -goto block_29; +lean_object* x_30; +x_30 = lean_box(0); +x_15 = x_30; +goto block_28; } else { if (x_7 == 0) { -lean_object* x_32; lean_object* x_33; +lean_object* x_31; lean_object* x_32; lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -41040,99 +41177,83 @@ lean_dec(x_8); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_32 = l_Lean_mkPatternWithRef(x_2, x_1); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_32); -lean_ctor_set(x_33, 1, x_14); -return x_33; +x_31 = l_Lean_mkPatternWithRef(x_2, x_1); +x_32 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_14); +return x_32; } else { -lean_object* x_34; -x_34 = lean_box(0); -x_15 = x_34; -goto block_29; +lean_object* x_33; +x_33 = lean_box(0); +x_15 = x_33; +goto block_28; } } -block_29: +block_28: { -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_dec(x_15); -x_16 = lean_box(0); -x_17 = lean_alloc_closure((void*)(l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1___rarg___boxed), 8, 1); -lean_closure_set(x_17, 0, x_16); -x_18 = lean_box(x_6); +x_16 = lean_box(x_6); lean_inc(x_2); -x_19 = lean_alloc_closure((void*)(l_Lean_Elab_Term_addTermInfo___lambda__1___boxed), 14, 6); -lean_closure_set(x_19, 0, x_5); -lean_closure_set(x_19, 1, x_1); -lean_closure_set(x_19, 2, x_2); -lean_closure_set(x_19, 3, x_3); -lean_closure_set(x_19, 4, x_4); -lean_closure_set(x_19, 5, x_18); -x_20 = l_Lean_Elab_withInfoContext_x27___at_Lean_Elab_Term_addTermInfo___spec__2(x_17, x_19, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_20) == 0) +x_17 = lean_alloc_closure((void*)(l_Lean_Elab_Term_addTermInfo___lambda__1___boxed), 14, 6); +lean_closure_set(x_17, 0, x_5); +lean_closure_set(x_17, 1, x_1); +lean_closure_set(x_17, 2, x_2); +lean_closure_set(x_17, 3, x_3); +lean_closure_set(x_17, 4, x_4); +lean_closure_set(x_17, 5, x_16); +x_18 = l_Lean_Elab_Term_addTermInfo___closed__1; +x_19 = l_Lean_Elab_withInfoContext_x27___at_Lean_Elab_Term_addTermInfo___spec__1(x_18, x_17, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_19) == 0) { -uint8_t x_21; -x_21 = !lean_is_exclusive(x_20); -if (x_21 == 0) +uint8_t x_20; +x_20 = !lean_is_exclusive(x_19); +if (x_20 == 0) { -lean_object* x_22; -x_22 = lean_ctor_get(x_20, 0); -lean_dec(x_22); -lean_ctor_set(x_20, 0, x_2); -return x_20; +lean_object* x_21; +x_21 = lean_ctor_get(x_19, 0); +lean_dec(x_21); +lean_ctor_set(x_19, 0, x_2); +return x_19; } 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_2); -lean_ctor_set(x_24, 1, x_23); -return x_24; +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_2); +lean_ctor_set(x_23, 1, x_22); +return x_23; } } else { -uint8_t x_25; +uint8_t x_24; lean_dec(x_2); -x_25 = !lean_is_exclusive(x_20); -if (x_25 == 0) +x_24 = !lean_is_exclusive(x_19); +if (x_24 == 0) { -return x_20; +return x_19; } else { -lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_26 = lean_ctor_get(x_20, 0); -x_27 = lean_ctor_get(x_20, 1); -lean_inc(x_27); +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_19, 0); +x_26 = lean_ctor_get(x_19, 1); lean_inc(x_26); -lean_dec(x_20); -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_inc(x_25); +lean_dec(x_19); +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_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___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) { -_start: -{ -lean_object* x_9; -x_9 = l_ReaderT_pure___at_Lean_Elab_Term_addTermInfo___spec__1___rarg(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_addTermInfo___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) { @@ -62304,7 +62425,7 @@ lean_dec(x_3); return x_10; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__1() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__1() { _start: { lean_object* x_1; @@ -62312,17 +62433,17 @@ x_1 = lean_mk_string_from_bytes("letrec", 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__2() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__3___closed__2; -x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__1; +x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__3() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -62332,27 +62453,27 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__4() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__3; +x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__3; x_2 = l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__3___closed__2; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__5() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__4; +x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__4; x_2 = l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__7; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__6() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__6() { _start: { lean_object* x_1; @@ -62360,17 +62481,17 @@ x_1 = lean_mk_string_from_bytes("initFn", 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__7() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__5; -x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__6; +x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__5; +x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__8() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__8() { _start: { lean_object* x_1; @@ -62378,47 +62499,47 @@ x_1 = lean_mk_string_from_bytes("_@", 2); return x_1; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__9() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__7; -x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__8; +x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__7; +x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__8; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__10() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__9; +x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__9; x_2 = l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__5; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__11() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__10; +x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__10; x_2 = l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__3___closed__2; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__12() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__11; +x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__11; x_2 = l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__7; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__13() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__13() { _start: { lean_object* x_1; @@ -62426,33 +62547,33 @@ x_1 = lean_mk_string_from_bytes("_hyg", 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__14() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__12; -x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__13; +x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__12; +x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__13; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__15() { +static lean_object* _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__14; -x_2 = lean_unsigned_to_nat(15148u); +x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__14; +x_2 = lean_unsigned_to_nat(15187u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187_(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_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__2; +x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__2; x_3 = 0; -x_4 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__15; +x_4 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__15; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } @@ -62891,7 +63012,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_isLetRecAuxMVar(lean_object* x_1, lean _start: { lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_9 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__2; +x_9 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__2; x_10 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___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); @@ -75065,77 +75186,77 @@ x_3 = lean_alloc_closure((void*)(l_Lean_Elab_withoutModifyingStateWithInfoAndMes return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__1() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__4; -x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__6; +x_1 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__4; +x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____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_Term___hyg_17406____closed__2() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__1; -x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__8; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__1; +x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__8; 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_Term___hyg_17406____closed__3() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__2; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__2; x_2 = l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__5; 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_Term___hyg_17406____closed__4() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__3; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__3; x_2 = l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__3___closed__2; 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_Term___hyg_17406____closed__5() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__4; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__4; x_2 = l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__7; 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_Term___hyg_17406____closed__6() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__5; -x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__13; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__5; +x_2 = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__13; 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_Term___hyg_17406____closed__7() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__6; -x_2 = lean_unsigned_to_nat(17406u); +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__6; +x_2 = lean_unsigned_to_nat(17445u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__8() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__8() { _start: { lean_object* x_1; @@ -75143,17 +75264,17 @@ x_1 = lean_mk_string_from_bytes("debug", 5); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__9() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__3___closed__2; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__8; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__8; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__10() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -75163,13 +75284,13 @@ x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445_(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_Elab_Term_0__Lean_Elab_Term_postponeElabTermCore___closed__2; x_3 = 0; -x_4 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__7; +x_4 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__7; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); if (lean_obj_tag(x_5) == 0) { @@ -75185,7 +75306,7 @@ lean_object* x_9; lean_object* x_10; lean_object* x_11; x_9 = lean_ctor_get(x_8, 1); lean_inc(x_9); lean_dec(x_8); -x_10 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__9; +x_10 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__9; x_11 = l_Lean_registerTraceClass(x_10, x_3, x_4, x_9); if (lean_obj_tag(x_11) == 0) { @@ -75193,7 +75314,7 @@ lean_object* x_12; lean_object* x_13; lean_object* x_14; x_12 = lean_ctor_get(x_11, 1); lean_inc(x_12); lean_dec(x_11); -x_13 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__10; +x_13 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__10; x_14 = l_Lean_registerTraceClass(x_13, x_3, x_4, x_12); return x_14; } @@ -75267,7 +75388,7 @@ return x_26; } } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____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; @@ -75278,7 +75399,7 @@ lean_ctor_set(x_6, 1, x_4); return x_6; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__1() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__1() { _start: { lean_object* x_1; @@ -75286,17 +75407,17 @@ x_1 = lean_mk_string_from_bytes("incremental", 11); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__2() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____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_Term___hyg_17564____closed__1; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____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_Term___hyg_17564____closed__3() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__3() { _start: { lean_object* x_1; @@ -75304,18 +75425,18 @@ x_1 = lean_mk_string_from_bytes("incrementalAttr", 15); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__4() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__5; x_2 = l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__3___closed__2; -x_3 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__3; +x_3 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__3; x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__5() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__5() { _start: { lean_object* x_1; @@ -75323,39 +75444,39 @@ x_1 = lean_mk_string_from_bytes("Marks an elaborator (tactic or command, current return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__6() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__6() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____lambda__1___boxed), 4, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____lambda__1___boxed), 4, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603_(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; lean_object* x_7; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__2; -x_3 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__5; -x_4 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__6; -x_5 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__4; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__2; +x_3 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__5; +x_4 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__6; +x_5 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__4; x_6 = 0; x_7 = l_Lean_registerTagAttribute(x_2, x_3, x_4, x_5, x_6, x_1); return x_7; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____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_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____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_initFn____x40_Lean_Elab_Term___hyg_17564____lambda__1(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____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_Elab_initFn____x40_Lean_Elab_Term___hyg_17590_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17629_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; uint8_t x_4; @@ -75423,7 +75544,7 @@ return x_13; } } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__1() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__1() { _start: { lean_object* x_1; @@ -75431,40 +75552,40 @@ x_1 = lean_mk_string_from_bytes("addBuiltinIncrementalElab", 25); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__2() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____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_Term_mkTermElabAttributeUnsafe___closed__5; x_2 = l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__3___closed__2; -x_3 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__1; +x_3 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____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_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__3() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____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_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__2; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__2; x_3 = l_Lean_Expr_const___override(x_2, x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____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_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____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_inc(x_1); x_6 = l___private_Lean_ToExpr_0__Lean_Name_toExprAux(x_1); -x_7 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__3; +x_7 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__3; x_8 = l_Lean_Expr_app___override(x_7, x_6); x_9 = l_Lean_declareBuiltin(x_1, x_8, x_3, x_4, x_5); return x_9; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___closed__1() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___closed__1() { _start: { lean_object* x_1; @@ -75472,16 +75593,16 @@ x_1 = lean_mk_string_from_bytes("invalid attribute 'builtin_incremental', must b return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___closed__2() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___closed__1; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____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_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____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) { _start: { lean_object* x_7; @@ -75500,7 +75621,7 @@ if (x_10 == 0) { lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_dec(x_1); -x_11 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___closed__2; +x_11 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___closed__2; x_12 = l_Lean_throwError___at_Lean_registerTagAttribute___spec__1(x_11, x_4, x_5, x_8); lean_dec(x_5); lean_dec(x_4); @@ -75527,7 +75648,7 @@ else { lean_object* x_17; lean_object* x_18; x_17 = lean_box(0); -x_18 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1(x_1, x_17, x_4, x_5, x_8); +x_18 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1(x_1, x_17, x_4, x_5, x_8); lean_dec(x_5); lean_dec(x_4); return x_18; @@ -75560,7 +75681,7 @@ return x_22; } } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___closed__1() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___closed__1() { _start: { lean_object* x_1; @@ -75568,35 +75689,35 @@ x_1 = lean_mk_string_from_bytes("attribute cannot be erased", 26); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___closed__2() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___closed__1; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____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; -x_5 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___closed__2; +x_5 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___closed__2; x_6 = l_Lean_throwError___at_Lean_AttributeImpl_erase___default___spec__1(x_5, x_2, x_3, x_4); return x_6; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__1() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__6; -x_2 = lean_unsigned_to_nat(17641u); +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__6; +x_2 = lean_unsigned_to_nat(17680u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__2() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__2() { _start: { lean_object* x_1; @@ -75604,17 +75725,17 @@ x_1 = lean_mk_string_from_bytes("builtin_incremental", 19); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__3() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____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_initFn____x40_Lean_Elab_Term___hyg_17641____closed__2; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__2; 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_Term___hyg_17641____closed__4() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__4() { _start: { lean_object* x_1; @@ -75622,7 +75743,7 @@ x_1 = lean_mk_string_from_bytes("(builtin) ", 10); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__5() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____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; @@ -75635,29 +75756,29 @@ lean_dec(x_2); x_4 = lean_ctor_get(x_3, 2); lean_inc(x_4); lean_dec(x_3); -x_5 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__4; +x_5 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__4; x_6 = lean_string_append(x_5, x_4); lean_dec(x_4); return x_6; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__6() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__5; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__5; x_2 = l_Lean_Elab_Term_withoutTacticIncrementality___rarg___lambda__3___closed__6; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__7() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__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_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__1; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__3; -x_3 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__6; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__1; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__3; +x_3 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__6; x_4 = 1; x_5 = lean_alloc_ctor(0, 3, 1); lean_ctor_set(x_5, 0, x_1); @@ -75667,29 +75788,29 @@ lean_ctor_set_uint8(x_5, sizeof(void*)*3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__8() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__8() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___boxed), 6, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___boxed), 6, 0); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__9() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__9() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___boxed), 4, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___boxed), 4, 0); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__10() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__7; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__8; -x_3 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__9; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__7; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__8; +x_3 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__9; x_4 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -75697,41 +75818,41 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__10; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__10; x_3 = l_Lean_registerBuiltinAttribute(x_2, x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___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_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____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_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1(x_1, x_2, x_3, x_4, x_5); +x_6 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1(x_1, x_2, x_3, x_4, x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____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_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____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: { uint8_t x_7; lean_object* x_8; x_7 = lean_unbox(x_3); lean_dec(x_3); -x_8 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2(x_1, x_2, x_7, x_4, x_5, x_6); +x_8 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2(x_1, x_2, x_7, x_4, x_5, x_6); return x_8; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____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_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3(x_1, x_2, x_3, x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); @@ -76181,11 +76302,11 @@ l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__10 = _init_l_Lean_Elab_Term lean_mark_persistent(l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__10); l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__11 = _init_l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__11(); lean_mark_persistent(l_Lean_Elab_Term_mkTermElabAttributeUnsafe___closed__11); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3183____closed__1 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3183____closed__1(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3183____closed__1); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3183____closed__2 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3183____closed__2(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3183____closed__2); -if (builtin) {res = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3183_(lean_io_mk_world()); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204____closed__1 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204____closed__1(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204____closed__1); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204____closed__2 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204____closed__2(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204____closed__2); +if (builtin) {res = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_3204_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Elab_Term_termElabAttribute = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Elab_Term_termElabAttribute); @@ -76425,6 +76546,8 @@ l_Lean_Elab_Term_mkSaveInfoAnnotation___closed__1 = _init_l_Lean_Elab_Term_mkSav lean_mark_persistent(l_Lean_Elab_Term_mkSaveInfoAnnotation___closed__1); l_Lean_Elab_Term_mkSaveInfoAnnotation___closed__2 = _init_l_Lean_Elab_Term_mkSaveInfoAnnotation___closed__2(); lean_mark_persistent(l_Lean_Elab_Term_mkSaveInfoAnnotation___closed__2); +l_Lean_Elab_Term_addTermInfo___closed__1 = _init_l_Lean_Elab_Term_addTermInfo___closed__1(); +lean_mark_persistent(l_Lean_Elab_Term_addTermInfo___closed__1); l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux___lambda__1___closed__1 = _init_l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux___lambda__1___closed__1(); lean_mark_persistent(l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux___lambda__1___closed__1); l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux___closed__1 = _init_l___private_Lean_Elab_Term_0__Lean_Elab_Term_elabUsingElabFnsAux___closed__1(); @@ -76578,37 +76701,37 @@ l_Lean_Elab_Term_mkAuxName___closed__1 = _init_l_Lean_Elab_Term_mkAuxName___clos lean_mark_persistent(l_Lean_Elab_Term_mkAuxName___closed__1); l_Lean_Elab_Term_mkAuxName___closed__2 = _init_l_Lean_Elab_Term_mkAuxName___closed__2(); lean_mark_persistent(l_Lean_Elab_Term_mkAuxName___closed__2); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__1 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__1(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__1); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__2 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__2(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__2); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__3 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__3(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__3); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__4 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__4(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__4); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__5 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__5(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__5); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__6 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__6(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__6); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__7 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__7(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__7); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__8 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__8(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__8); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__9 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__9(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__9); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__10 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__10(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__10); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__11 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__11(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__11); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__12 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__12(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__12); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__13 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__13(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__13); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__14 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__14(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__14); -l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__15 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__15(); -lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148____closed__15); -if (builtin) {res = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15148_(lean_io_mk_world()); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__1 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__1(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__1); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__2 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__2(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__2); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__3 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__3(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__3); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__4 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__4(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__4); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__5 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__5(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__5); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__6 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__6(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__6); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__7 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__7(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__7); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__8 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__8(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__8); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__9 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__9(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__9); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__10 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__10(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__10); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__11 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__11(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__11); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__12 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__12(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__12); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__13 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__13(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__13); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__14 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__14(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__14); +l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__15 = _init_l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__15(); +lean_mark_persistent(l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187____closed__15); +if (builtin) {res = l_Lean_Elab_Term_initFn____x40_Lean_Elab_Term___hyg_15187_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }l_Lean_Elab_Term_isLetRecAuxMVar___lambda__3___closed__1 = _init_l_Lean_Elab_Term_isLetRecAuxMVar___lambda__3___closed__1(); @@ -76821,88 +76944,88 @@ l_Lean_Elab_Term_exprToSyntax___lambda__1___closed__3 = _init_l_Lean_Elab_Term_e lean_mark_persistent(l_Lean_Elab_Term_exprToSyntax___lambda__1___closed__3); l_Lean_Elab_Term_exprToSyntax___lambda__1___closed__4 = _init_l_Lean_Elab_Term_exprToSyntax___lambda__1___closed__4(); lean_mark_persistent(l_Lean_Elab_Term_exprToSyntax___lambda__1___closed__4); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__1(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__1); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__2(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__2); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__3(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__3); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__4 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__4(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__4); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__5 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__5(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__5); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__6 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__6(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__6); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__7 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__7(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__7); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__8 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__8(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__8); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__9 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__9(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__9); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__10 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__10(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406____closed__10); -if (builtin) {res = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17406_(lean_io_mk_world()); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__1(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__1); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__2(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__2); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__3(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__3); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__4 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__4(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__4); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__5 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__5(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__5); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__6 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__6(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__6); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__7 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__7(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__7); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__8 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__8(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__8); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__9 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__9(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__9); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__10 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__10(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445____closed__10); +if (builtin) {res = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17445_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__1(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__1); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__2(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__2); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__3(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__3); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__4 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__4(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__4); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__5 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__5(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__5); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__6 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__6(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564____closed__6); -if (builtin) {res = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17564_(lean_io_mk_world()); +}l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__1(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__1); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__2(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__2); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__3(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__3); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__4 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__4(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__4); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__5 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__5(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__5); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__6 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__6(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603____closed__6); +if (builtin) {res = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17603_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Elab_incrementalAttr = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Elab_incrementalAttr); lean_dec_ref(res); -}if (builtin) {res = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17590_(lean_io_mk_world()); +}if (builtin) {res = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17629_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Elab_builtinIncrementalElabs = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Elab_builtinIncrementalElabs); lean_dec_ref(res); }l_Lean_Elab_addBuiltinIncrementalElab___closed__1 = _init_l_Lean_Elab_addBuiltinIncrementalElab___closed__1(); lean_mark_persistent(l_Lean_Elab_addBuiltinIncrementalElab___closed__1); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__1(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__1); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__2(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__2); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__3(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__1___closed__3); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___closed__1); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__2___closed__2); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___closed__1); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____lambda__3___closed__2); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__1(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__1); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__2(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__2); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__3(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__3); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__4 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__4(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__4); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__5 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__5(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__5); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__6 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__6(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__6); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__7 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__7(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__7); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__8 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__8(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__8); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__9 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__9(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__9); -l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__10 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__10(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641____closed__10); -if (builtin) {res = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17641_(lean_io_mk_world()); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__1); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__2); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__3(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__1___closed__3); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___closed__1); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__2___closed__2); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___closed__1); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____lambda__3___closed__2); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__1(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__1); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__2(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__2); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__3(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__3); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__4 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__4(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__4); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__5 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__5(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__5); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__6 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__6(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__6); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__7 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__7(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__7); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__8 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__8(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__8); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__9 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__9(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__9); +l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__10 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__10(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680____closed__10); +if (builtin) {res = l_Lean_Elab_initFn____x40_Lean_Elab_Term___hyg_17680_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }l_Lean_Elab_isIncrementalElab___rarg___lambda__3___closed__1 = _init_l_Lean_Elab_isIncrementalElab___rarg___lambda__3___closed__1(); diff --git a/stage0/stdlib/Lean/Language/Basic.c b/stage0/stdlib/Lean/Language/Basic.c index 09589eabf001..a459a7b020b4 100644 --- a/stage0/stdlib/Lean/Language/Basic.c +++ b/stage0/stdlib/Lean/Language/Basic.c @@ -14,9 +14,6 @@ extern "C" { #endif LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Language_withAlwaysResolvedPromises___spec__1(lean_object*, lean_object*); -static lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__5; -static lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__4; -static lean_object* l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__3; LEAN_EXPORT lean_object* l_Functor_mapRev___at_Lean_Language_reportMessages___spec__7(lean_object*, lean_object*); lean_object* lean_io_cancel(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_cancel___rarg___boxed(lean_object*, lean_object*); @@ -27,13 +24,15 @@ lean_object* lean_mk_empty_array_with_capacity(lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_printMessageEndPos; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Language_withAlwaysResolvedPromises___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTree_children(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Language_instInhabitedDynamicSnapshot; LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_toTyped_x3f___rarg___boxed(lean_object*, lean_object*); 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*); +static lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__4; LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_toTyped_x3f___rarg(lean_object*, lean_object*); +static lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__6; static lean_object* l_Lean_Language_diagnosticsOfHeaderError___closed__2; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forM___at_Lean_Language_reportMessages___spec__2(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__6; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Language_withAlwaysResolvedPromises___spec__1___rarg___lambda__1(size_t, lean_object*, lean_object*, lean_object*, size_t, lean_object*); lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); static lean_object* l_Lean_Language_instInhabitedSnapshot___closed__1; @@ -46,15 +45,16 @@ LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTree_element___boxed(lean_objec LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Language_reportMessages___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_ofIO(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Language_instInhabitedDynamicSnapshot___spec__1(lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); LEAN_EXPORT uint8_t l_Lean_Language_Snapshot_isFatal___default; LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_toTyped_x3f(lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_ofIO___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_bind___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Language_Snapshot_Diagnostics_empty___closed__1; -LEAN_EXPORT lean_object* l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951_; static lean_object* l_Lean_Language_reportMessages___closed__1; LEAN_EXPORT lean_object* l_Lean_Language_instToSnapshotTreeDynamicSnapshot(lean_object*); +static lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__2; LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_bindIO___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_reportMessages___lambda__1___boxed(lean_object*, lean_object*, lean_object*); @@ -64,10 +64,12 @@ lean_object* l_Lean_Message_toJson(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Snapshot_instInhabitedDiagnostics; LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTree_getAll(lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTree_forM___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__2; LEAN_EXPORT lean_object* l_Lean_Language_Snapshot_infoTree_x3f___default; static lean_object* l_Lean_Language_reportMessages___lambda__1___closed__1; lean_object* lean_string_utf8_byte_size(lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_withHeaderExceptions___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159_(lean_object*); 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_println___at_Lean_instEval___spec__1(lean_object*, lean_object*); @@ -81,9 +83,9 @@ LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTree_runAndReport(lean_object*, LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTree_runAndReport___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Language_instInhabitedSnapshotTree___closed__1; static lean_object* l_Lean_Language_diagnosticsOfHeaderError___closed__1; -static lean_object* l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__1; -LEAN_EXPORT lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969_; LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_pure(lean_object*); +static lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__1; 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_EXPORT lean_object* l_Lean_Language_instToSnapshotTreeOption___rarg(lean_object*, lean_object*); @@ -102,6 +104,8 @@ lean_object* lean_st_mk_ref(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___rarg___boxed__const__1; static lean_object* l_Lean_Language_Snapshot_instInhabitedDiagnostics___closed__5; LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise___rarg___lambda__2___boxed(lean_object*); +static lean_object* l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__3; +static lean_object* l_Lean_Language_instInhabitedDynamicSnapshot___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forMAux___at_Lean_Language_reportMessages___spec__3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_diagnosticsOfHeaderError(lean_object*, lean_object*, lean_object*); lean_object* l_IO_print___at_IO_println___spec__1(lean_object*, lean_object*); @@ -109,6 +113,7 @@ extern lean_object* l_Task_Priority_default; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Language_withAlwaysResolvedPromises___spec__2___rarg___lambda__2(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); static lean_object* l_Lean_Language_Snapshot_instInhabitedDiagnostics___closed__1; +static lean_object* l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__4; extern lean_object* l_Lean_MessageLog_empty; 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_Language_withAlwaysResolvedPromises___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -119,7 +124,6 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Language_reportMess LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_ofTyped(lean_object*); lean_object* lean_task_get_own(lean_object*); static lean_object* l_Lean_Language_Snapshot_instInhabitedDiagnostics___closed__4; -static lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__2; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Language_reportMessages___spec__6(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_instToSnapshotTreeDynamicSnapshot___boxed(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Language_reportMessages___spec__4(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*); @@ -131,6 +135,7 @@ LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise___rarg___lamb LEAN_EXPORT lean_object* l_Lean_Language_mkIncrementalProcessor___elambda__1(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Language_SnapshotTree_getAll___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Language_withAlwaysResolvedPromises___spec__1___rarg___lambda__1___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_1159____closed__5; static lean_object* l_Lean_Language_reportMessages___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Functor_mapRev___at_Lean_Language_reportMessages___spec__7___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageLog_forM___at_Lean_Language_reportMessages___spec__1(lean_object*, lean_object*, lean_object*); @@ -141,7 +146,7 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Language_reportMess LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_map(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTree_forM(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Language_withAlwaysResolvedPromises___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_withHeaderExceptions(lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___rarg___lambda__1___boxed(lean_object*, lean_object*); @@ -149,7 +154,6 @@ LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_get_x3f___rarg(lean_object LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_get(lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Language_withAlwaysResolvedPromises___spec__2___rarg___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_bindIO___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); -static lean_object* l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__2; lean_object* lean_io_get_task_state(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_ofTyped___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise___rarg___lambda__1___boxed(lean_object*, lean_object*); @@ -161,9 +165,9 @@ LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises(lean_object* static lean_object* l_Lean_Language_withAlwaysResolvedPromise___rarg___lambda__3___closed__1; lean_object* l_List_iotaTR(lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_bind(lean_object*, lean_object*); +static lean_object* l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__1; static lean_object* l_Lean_Language_withAlwaysResolvedPromise___rarg___closed__1; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Language_withAlwaysResolvedPromises___spec__2___rarg___lambda__1(lean_object*, lean_object*); -static lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__3; size_t lean_usize_add(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_map___rarg(lean_object*, lean_object*, lean_object*, uint8_t); lean_object* lean_array_uget(lean_object*, size_t); @@ -181,12 +185,11 @@ LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTree_forM___rarg(lean_object*, LEAN_EXPORT lean_object* l_Lean_Language_instToSnapshotTreeSnapshotLeaf(lean_object*); lean_object* lean_array_get_size(lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTree_element(lean_object*); -static lean_object* l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__4; uint8_t lean_nat_dec_le(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_bindIO___rarg___lambda__1(lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); -static lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__1; LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_cancel(lean_object*); +static lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__3; LEAN_EXPORT lean_object* l_Lean_Language_reportMessages___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTree_children___boxed(lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); @@ -880,12 +883,12 @@ x_10 = lean_apply_4(x_6, lean_box(0), lean_box(0), x_8, x_9); return x_10; } } -LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_Lean_Language_withAlwaysResolvedPromise___rarg), 5, 0); -return x_3; +lean_object* x_4; +x_4 = lean_alloc_closure((void*)(l_Lean_Language_withAlwaysResolvedPromise___rarg), 5, 0); +return x_4; } } LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromise___rarg___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { @@ -1343,7 +1346,7 @@ x_2 = lean_alloc_closure((void*)(l_Lean_Language_instToSnapshotTreeOption___rarg return x_2; } } -static lean_object* _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__1() { +static lean_object* _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__1() { _start: { lean_object* x_1; @@ -1351,7 +1354,7 @@ x_1 = lean_mk_string_from_bytes("Lean", 4); return x_1; } } -static lean_object* _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__2() { +static lean_object* _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__2() { _start: { lean_object* x_1; @@ -1359,7 +1362,7 @@ x_1 = lean_mk_string_from_bytes("Language", 8); return x_1; } } -static lean_object* _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__3() { +static lean_object* _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__3() { _start: { lean_object* x_1; @@ -1367,22 +1370,22 @@ x_1 = lean_mk_string_from_bytes("SnapshotLeaf", 12); return x_1; } } -static lean_object* _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__4() { +static lean_object* _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__1; -x_2 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__2; -x_3 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__3; +x_1 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__1; +x_2 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__2; +x_3 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__3; x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951_() { +static lean_object* _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969_() { _start: { lean_object* x_1; -x_1 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__4; +x_1 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__4; return x_1; } } @@ -1390,7 +1393,7 @@ static lean_object* _init_l_Lean_Language_instTypeNameSnapshotLeaf() { _start: { lean_object* x_1; -x_1 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951_; +x_1 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969_; return x_1; } } @@ -1473,6 +1476,48 @@ lean_dec(x_1); return x_3; } } +LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Language_instInhabitedDynamicSnapshot___spec__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_inc(x_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); +x_4 = l_Lean_Language_Snapshot_instInhabitedDiagnostics___closed__1; +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 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_6, 0, x_3); +lean_ctor_set(x_6, 1, x_5); +return x_6; +} +} +static lean_object* _init_l_Lean_Language_instInhabitedDynamicSnapshot___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; uint8_t x_3; lean_object* x_4; +x_1 = lean_box(0); +x_2 = l_Lean_Language_Snapshot_Diagnostics_empty; +x_3 = 0; +x_4 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_4, 0, x_2); +lean_ctor_set(x_4, 1, x_1); +lean_ctor_set_uint8(x_4, sizeof(void*)*2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Language_instInhabitedDynamicSnapshot() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Language_instTypeNameSnapshotLeaf; +x_2 = l_Lean_Language_instInhabitedDynamicSnapshot___closed__1; +x_3 = l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Language_instInhabitedDynamicSnapshot___spec__1(x_1, x_2); +return x_3; +} +} LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTree_forM___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { @@ -1581,7 +1626,7 @@ lean_dec(x_4); return x_5; } } -static lean_object* _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__1() { +static lean_object* _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__1() { _start: { lean_object* x_1; @@ -1589,17 +1634,17 @@ x_1 = lean_mk_string_from_bytes("printMessageEndPos", 18); return x_1; } } -static lean_object* _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__2() { +static lean_object* _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__1; +x_2 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__3() { +static lean_object* _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__3() { _start: { lean_object* x_1; @@ -1607,7 +1652,7 @@ x_1 = lean_mk_string_from_bytes("", 0); return x_1; } } -static lean_object* _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__4() { +static lean_object* _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__4() { _start: { lean_object* x_1; @@ -1615,13 +1660,13 @@ x_1 = lean_mk_string_from_bytes("print end position of each message in addition return x_1; } } -static lean_object* _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__5() { +static lean_object* _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__5() { _start: { uint8_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = 0; -x_2 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__3; -x_3 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__4; +x_2 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__3; +x_3 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__4; x_4 = lean_box(x_1); x_5 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_5, 0, x_4); @@ -1630,24 +1675,24 @@ lean_ctor_set(x_5, 2, x_3); return x_5; } } -static lean_object* _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__6() { +static lean_object* _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__1; -x_2 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__2; -x_3 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__1; +x_1 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__1; +x_2 = l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__2; +x_3 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__1; x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159_(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_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__2; -x_3 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__5; -x_4 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__6; +x_2 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__2; +x_3 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__5; +x_4 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__6; x_5 = l_Lean_Option_register___at_Lean_initFn____x40_Lean_Util_Profile___hyg_6____spec__1(x_2, x_3, x_4, x_1); return x_5; } @@ -2905,7 +2950,7 @@ x_11 = l_Lean_Language_diagnosticsOfHeaderError___closed__2; x_12 = l_Lean_Language_diagnosticsOfHeaderError___closed__1; x_13 = 0; x_14 = 2; -x_15 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__3; +x_15 = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__3; x_16 = lean_alloc_ctor(0, 5, 2); lean_ctor_set(x_16, 0, x_11); lean_ctor_set(x_16, 1, x_12); @@ -3296,31 +3341,35 @@ l_Lean_Language_instInhabitedSnapshotTree___closed__1 = _init_l_Lean_Language_in lean_mark_persistent(l_Lean_Language_instInhabitedSnapshotTree___closed__1); l_Lean_Language_instInhabitedSnapshotTree = _init_l_Lean_Language_instInhabitedSnapshotTree(); lean_mark_persistent(l_Lean_Language_instInhabitedSnapshotTree); -l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__1 = _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__1(); -lean_mark_persistent(l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__1); -l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__2 = _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__2(); -lean_mark_persistent(l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__2); -l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__3 = _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__3(); -lean_mark_persistent(l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__3); -l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__4 = _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__4(); -lean_mark_persistent(l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951____closed__4); -l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951_ = _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951_(); -lean_mark_persistent(l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_951_); +l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__1 = _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__1(); +lean_mark_persistent(l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__1); +l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__2 = _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__2(); +lean_mark_persistent(l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__2); +l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__3 = _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__3(); +lean_mark_persistent(l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__3); +l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__4 = _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__4(); +lean_mark_persistent(l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969____closed__4); +l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969_ = _init_l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969_(); +lean_mark_persistent(l_Lean_Language_instImpl____x40_Lean_Language_Basic___hyg_969_); l_Lean_Language_instTypeNameSnapshotLeaf = _init_l_Lean_Language_instTypeNameSnapshotLeaf(); lean_mark_persistent(l_Lean_Language_instTypeNameSnapshotLeaf); -l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__1 = _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__1(); -lean_mark_persistent(l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__1); -l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__2 = _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__2(); -lean_mark_persistent(l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__2); -l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__3 = _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__3(); -lean_mark_persistent(l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__3); -l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__4 = _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__4(); -lean_mark_persistent(l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__4); -l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__5 = _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__5(); -lean_mark_persistent(l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__5); -l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__6 = _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__6(); -lean_mark_persistent(l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161____closed__6); -if (builtin) {res = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1161_(lean_io_mk_world()); +l_Lean_Language_instInhabitedDynamicSnapshot___closed__1 = _init_l_Lean_Language_instInhabitedDynamicSnapshot___closed__1(); +lean_mark_persistent(l_Lean_Language_instInhabitedDynamicSnapshot___closed__1); +l_Lean_Language_instInhabitedDynamicSnapshot = _init_l_Lean_Language_instInhabitedDynamicSnapshot(); +lean_mark_persistent(l_Lean_Language_instInhabitedDynamicSnapshot); +l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__1 = _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__1(); +lean_mark_persistent(l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__1); +l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__2 = _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__2(); +lean_mark_persistent(l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__2); +l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__3 = _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__3(); +lean_mark_persistent(l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__3); +l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__4 = _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__4(); +lean_mark_persistent(l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__4); +l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__5 = _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__5(); +lean_mark_persistent(l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__5); +l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__6 = _init_l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__6(); +lean_mark_persistent(l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159____closed__6); +if (builtin) {res = l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1159_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Language_printMessageEndPos = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Language_printMessageEndPos); diff --git a/stage0/stdlib/Lean/Language/Lean.c b/stage0/stdlib/Lean/Language/Lean.c index a2789b63c8ef..afa27d19dabd 100644 --- a/stage0/stdlib/Lean/Language/Lean.c +++ b/stage0/stdlib/Lean/Language/Lean.c @@ -27,7 +27,6 @@ static lean_object* l_Lean_Language_Lean_process_processHeader___lambda__3___clo static lean_object* l_IO_FS_withIsolatedStreams___at_Lean_Language_Lean_process_doElab___spec__1___closed__4; static lean_object* l_Lean_Language_Lean_process_processHeader___lambda__3___closed__8; lean_object* l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Language_Lean_process_doElab___spec__5(lean_object*, lean_object*); static lean_object* l_Lean_Language_Lean_initFn____x40_Lean_Language_Lean___hyg_36____closed__7; lean_object* lean_io_promise_new(lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_CommandParsedSnapshot_data___boxed(lean_object*); @@ -44,6 +43,7 @@ static lean_object* l_Lean_Language_Lean_process_processHeader___lambda__3___clo LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_processHeader(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +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; lean_object* l_Lean_Elab_Command_mkState(lean_object*, lean_object*, lean_object*); @@ -125,6 +125,7 @@ lean_object* l_Array_toPArray_x27___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_CommandParsedSnapshot_nextCmdSnap_x3f___boxed(lean_object*); lean_object* l_panic___at_String_fromUTF8_x21___spec__1(lean_object*); lean_object* lean_environment_set_main_module(lean_object*, lean_object*); +static lean_object* l_Lean_Language_Lean_process_doElab___lambda__2___closed__2; lean_object* l_Lean_Language_diagnosticsOfHeaderError(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Language_Lean_initFn____x40_Lean_Language_Lean___hyg_36____closed__6; LEAN_EXPORT lean_object* l_Lean_Language_Lean_HeaderParsedSnapshot_processedResult___lambda__1___boxed(lean_object*); @@ -180,7 +181,6 @@ static lean_object* l_Lean_Language_Lean_process_doElab___lambda__3___closed__5; 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*); -static lean_object* l_Lean_Language_Lean_process_parseCmd___closed__2; static lean_object* l_Lean_Language_Lean_instToSnapshotTreeCommandParsedSnapshot_go___closed__4; static lean_object* l_Lean_Language_Lean_initFn____x40_Lean_Language_Lean___hyg_36____closed__3; static lean_object* l_Lean_Language_Lean_process_processHeader___lambda__3___closed__6; @@ -2325,24 +2325,6 @@ return x_87; } } } -LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Language_Lean_process_doElab___spec__5(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_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); -x_4 = l_Lean_Language_Lean_instToSnapshotTreeCommandFinishedSnapshot___closed__1; -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 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_6, 0, x_3); -lean_ctor_set(x_6, 1, x_5); -return x_6; -} -} LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_doElab___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { @@ -2369,10 +2351,20 @@ lean_ctor_set_uint8(x_4, sizeof(void*)*2, x_3); return x_4; } } +static lean_object* _init_l_Lean_Language_Lean_process_doElab___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Language_instTypeNameSnapshotLeaf; +x_2 = l_Lean_Language_Lean_process_doElab___lambda__2___closed__1; +x_3 = l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Language_instInhabitedDynamicSnapshot___spec__1(x_1, x_2); +return x_3; +} +} LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_doElab___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; lean_object* x_9; 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_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; 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_6 = lean_ctor_get(x_1, 0); lean_inc(x_6); x_7 = lean_ctor_get(x_1, 2); @@ -2399,179 +2391,177 @@ lean_ctor_set(x_13, 4, x_9); lean_ctor_set(x_13, 5, x_10); lean_ctor_set(x_13, 6, x_11); lean_ctor_set(x_13, 7, x_12); -x_14 = l_Lean_Language_instTypeNameSnapshotLeaf; -x_15 = l_Lean_Language_Lean_process_doElab___lambda__2___closed__1; -x_16 = l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Language_Lean_process_doElab___spec__5(x_14, x_15); -x_17 = lean_ctor_get(x_2, 1); -x_18 = lean_io_promise_resolve(x_16, x_17, x_5); -if (lean_obj_tag(x_18) == 0) +x_14 = lean_ctor_get(x_2, 1); +x_15 = l_Lean_Language_Lean_process_doElab___lambda__2___closed__2; +x_16 = lean_io_promise_resolve(x_15, x_14, x_5); +if (lean_obj_tag(x_16) == 0) { -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_18, 1); -lean_inc(x_19); -lean_dec(x_18); -x_20 = l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(x_3, x_19); -if (lean_obj_tag(x_20) == 0) +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_16, 1); +lean_inc(x_17); +lean_dec(x_16); +x_18 = l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(x_3, x_17); +if (lean_obj_tag(x_18) == 0) { -uint8_t x_21; -x_21 = !lean_is_exclusive(x_20); -if (x_21 == 0) +uint8_t x_19; +x_19 = !lean_is_exclusive(x_18); +if (x_19 == 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_20, 0); -x_23 = lean_ctor_get(x_11, 1); -lean_inc(x_23); +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_20 = lean_ctor_get(x_18, 0); +x_21 = lean_ctor_get(x_11, 1); +lean_inc(x_21); lean_dec(x_11); -x_24 = lean_ctor_get(x_23, 2); -lean_inc(x_24); -x_25 = lean_unsigned_to_nat(0u); -x_26 = lean_nat_dec_lt(x_25, x_24); -lean_dec(x_24); -if (x_26 == 0) +x_22 = lean_ctor_get(x_21, 2); +lean_inc(x_22); +x_23 = lean_unsigned_to_nat(0u); +x_24 = lean_nat_dec_lt(x_23, x_22); +lean_dec(x_22); +if (x_24 == 0) { -lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_23); -x_27 = l_Lean_Elab_instInhabitedInfoTree; -x_28 = l___private_Init_GetElem_0__outOfBounds___rarg(x_27); -x_29 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_29, 0, x_28); -x_30 = 0; -x_31 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_31, 0, x_22); -lean_ctor_set(x_31, 1, x_29); -lean_ctor_set_uint8(x_31, sizeof(void*)*2, 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_13); -lean_ctor_set(x_20, 0, x_32); -return x_20; +lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_21); +x_25 = l_Lean_Elab_instInhabitedInfoTree; +x_26 = l___private_Init_GetElem_0__outOfBounds___rarg(x_25); +x_27 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_27, 0, x_26); +x_28 = 0; +x_29 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_29, 0, x_20); +lean_ctor_set(x_29, 1, x_27); +lean_ctor_set_uint8(x_29, sizeof(void*)*2, 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_13); +lean_ctor_set(x_18, 0, x_30); +return x_18; } else { -lean_object* x_33; lean_object* x_34; lean_object* x_35; uint8_t x_36; lean_object* x_37; lean_object* x_38; -x_33 = l_Lean_Elab_instInhabitedInfoTree; -x_34 = l_Lean_PersistentArray_get_x21___rarg(x_33, x_23, x_25); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_34); -x_36 = 0; -x_37 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_37, 0, x_22); -lean_ctor_set(x_37, 1, x_35); -lean_ctor_set_uint8(x_37, sizeof(void*)*2, 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_13); -lean_ctor_set(x_20, 0, x_38); -return x_20; +lean_object* x_31; lean_object* x_32; lean_object* x_33; uint8_t x_34; lean_object* x_35; lean_object* x_36; +x_31 = l_Lean_Elab_instInhabitedInfoTree; +x_32 = l_Lean_PersistentArray_get_x21___rarg(x_31, x_21, x_23); +x_33 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_33, 0, x_32); +x_34 = 0; +x_35 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_35, 0, x_20); +lean_ctor_set(x_35, 1, x_33); +lean_ctor_set_uint8(x_35, sizeof(void*)*2, 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_13); +lean_ctor_set(x_18, 0, x_36); +return x_18; } } else { -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_39 = lean_ctor_get(x_20, 0); -x_40 = lean_ctor_get(x_20, 1); -lean_inc(x_40); +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_37 = lean_ctor_get(x_18, 0); +x_38 = lean_ctor_get(x_18, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_18); +x_39 = lean_ctor_get(x_11, 1); lean_inc(x_39); -lean_dec(x_20); -x_41 = lean_ctor_get(x_11, 1); -lean_inc(x_41); lean_dec(x_11); -x_42 = lean_ctor_get(x_41, 2); -lean_inc(x_42); -x_43 = lean_unsigned_to_nat(0u); -x_44 = lean_nat_dec_lt(x_43, x_42); -lean_dec(x_42); -if (x_44 == 0) +x_40 = lean_ctor_get(x_39, 2); +lean_inc(x_40); +x_41 = lean_unsigned_to_nat(0u); +x_42 = lean_nat_dec_lt(x_41, x_40); +lean_dec(x_40); +if (x_42 == 0) { -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_dec(x_41); -x_45 = l_Lean_Elab_instInhabitedInfoTree; -x_46 = l___private_Init_GetElem_0__outOfBounds___rarg(x_45); -x_47 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_47, 0, x_46); -x_48 = 0; -x_49 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_49, 0, x_39); -lean_ctor_set(x_49, 1, x_47); -lean_ctor_set_uint8(x_49, sizeof(void*)*2, 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_13); -x_51 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_40); -return x_51; +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_object* x_49; +lean_dec(x_39); +x_43 = l_Lean_Elab_instInhabitedInfoTree; +x_44 = l___private_Init_GetElem_0__outOfBounds___rarg(x_43); +x_45 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_45, 0, x_44); +x_46 = 0; +x_47 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_47, 0, x_37); +lean_ctor_set(x_47, 1, x_45); +lean_ctor_set_uint8(x_47, sizeof(void*)*2, 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_13); +x_49 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_49, 0, x_48); +lean_ctor_set(x_49, 1, x_38); +return x_49; } else { -lean_object* x_52; lean_object* x_53; lean_object* x_54; uint8_t x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_52 = l_Lean_Elab_instInhabitedInfoTree; -x_53 = l_Lean_PersistentArray_get_x21___rarg(x_52, x_41, x_43); -x_54 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_54, 0, x_53); -x_55 = 0; -x_56 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_56, 0, x_39); -lean_ctor_set(x_56, 1, x_54); -lean_ctor_set_uint8(x_56, sizeof(void*)*2, 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_13); -x_58 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_58, 0, x_57); -lean_ctor_set(x_58, 1, x_40); -return x_58; +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; +x_50 = l_Lean_Elab_instInhabitedInfoTree; +x_51 = l_Lean_PersistentArray_get_x21___rarg(x_50, x_39, x_41); +x_52 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_52, 0, x_51); +x_53 = 0; +x_54 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_54, 0, x_37); +lean_ctor_set(x_54, 1, x_52); +lean_ctor_set_uint8(x_54, sizeof(void*)*2, 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_13); +x_56 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_56, 0, x_55); +lean_ctor_set(x_56, 1, x_38); +return x_56; } } } else { -uint8_t x_59; +uint8_t x_57; lean_dec(x_13); lean_dec(x_11); -x_59 = !lean_is_exclusive(x_20); -if (x_59 == 0) +x_57 = !lean_is_exclusive(x_18); +if (x_57 == 0) { -return x_20; +return x_18; } else { -lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_60 = lean_ctor_get(x_20, 0); -x_61 = lean_ctor_get(x_20, 1); -lean_inc(x_61); -lean_inc(x_60); -lean_dec(x_20); -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_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_63; +uint8_t x_61; lean_dec(x_13); lean_dec(x_11); lean_dec(x_3); -x_63 = !lean_is_exclusive(x_18); -if (x_63 == 0) +x_61 = !lean_is_exclusive(x_16); +if (x_61 == 0) { -return x_18; +return x_16; } else { -lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_64 = lean_ctor_get(x_18, 0); -x_65 = lean_ctor_get(x_18, 1); -lean_inc(x_65); -lean_inc(x_64); -lean_dec(x_18); -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_62; lean_object* x_63; lean_object* x_64; +x_62 = lean_ctor_get(x_16, 0); +x_63 = lean_ctor_get(x_16, 1); +lean_inc(x_63); +lean_inc(x_62); +lean_dec(x_16); +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; } } } @@ -4777,18 +4767,8 @@ return x_112; static lean_object* _init_l_Lean_Language_Lean_process_parseCmd___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Language_instTypeNameSnapshotLeaf; -x_2 = l_Lean_Language_Lean_process_doElab___lambda__2___closed__1; -x_3 = l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Language_Lean_process_doElab___spec__5(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Language_Lean_process_parseCmd___closed__2() { -_start: -{ lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Language_Lean_process_parseCmd___closed__1; +x_1 = l_Lean_Language_Lean_process_doElab___lambda__2___closed__2; x_2 = l_Lean_Language_SnapshotTask_pure___rarg(x_1); return x_2; } @@ -4845,7 +4825,7 @@ lean_ctor_set(x_20, 0, x_19); lean_ctor_set(x_20, 1, x_3); x_21 = l_Lean_Language_SnapshotTask_pure___rarg(x_20); x_22 = lean_box(0); -x_23 = l_Lean_Language_Lean_process_parseCmd___closed__2; +x_23 = l_Lean_Language_Lean_process_parseCmd___closed__1; x_24 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_24, 0, x_19); lean_ctor_set(x_24, 1, x_22); @@ -4875,7 +4855,7 @@ lean_ctor_set(x_31, 0, x_30); lean_ctor_set(x_31, 1, x_3); x_32 = l_Lean_Language_SnapshotTask_pure___rarg(x_31); x_33 = lean_box(0); -x_34 = l_Lean_Language_Lean_process_parseCmd___closed__2; +x_34 = l_Lean_Language_Lean_process_parseCmd___closed__1; x_35 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_35, 0, x_30); lean_ctor_set(x_35, 1, x_33); @@ -8773,6 +8753,8 @@ l_IO_FS_withIsolatedStreams___at_Lean_Language_Lean_process_doElab___spec__1___c lean_mark_persistent(l_IO_FS_withIsolatedStreams___at_Lean_Language_Lean_process_doElab___spec__1___closed__5); l_Lean_Language_Lean_process_doElab___lambda__2___closed__1 = _init_l_Lean_Language_Lean_process_doElab___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Language_Lean_process_doElab___lambda__2___closed__1); +l_Lean_Language_Lean_process_doElab___lambda__2___closed__2 = _init_l_Lean_Language_Lean_process_doElab___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Language_Lean_process_doElab___lambda__2___closed__2); l_Lean_Language_Lean_process_doElab___lambda__3___closed__1 = _init_l_Lean_Language_Lean_process_doElab___lambda__3___closed__1(); lean_mark_persistent(l_Lean_Language_Lean_process_doElab___lambda__3___closed__1); l_Lean_Language_Lean_process_doElab___lambda__3___closed__2 = _init_l_Lean_Language_Lean_process_doElab___lambda__3___closed__2(); @@ -8789,8 +8771,6 @@ l_Lean_Language_Lean_process_parseCmd___lambda__8___closed__1 = _init_l_Lean_Lan lean_mark_persistent(l_Lean_Language_Lean_process_parseCmd___lambda__8___closed__1); l_Lean_Language_Lean_process_parseCmd___closed__1 = _init_l_Lean_Language_Lean_process_parseCmd___closed__1(); lean_mark_persistent(l_Lean_Language_Lean_process_parseCmd___closed__1); -l_Lean_Language_Lean_process_parseCmd___closed__2 = _init_l_Lean_Language_Lean_process_parseCmd___closed__2(); -lean_mark_persistent(l_Lean_Language_Lean_process_parseCmd___closed__2); 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(); diff --git a/stage0/stdlib/Lean/Meta/Basic.c b/stage0/stdlib/Lean/Meta/Basic.c index 31bcd8dd3e7c..f002908b38ff 100644 --- a/stage0/stdlib/Lean/Meta/Basic.c +++ b/stage0/stdlib/Lean/Meta/Basic.c @@ -23,6 +23,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_collectForwardDeps___s lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_isReadOnlyLevelMVar___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withNewLocalInstances___rarg___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_Basic___hyg_2167____closed__5; static lean_object* l_Lean_Meta_instInhabitedState___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkLeveErrorMessageCore___lambda__2___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_5____closed__2; @@ -77,6 +78,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withNewLocalIn lean_object* lean_mk_empty_array_with_capacity(lean_object*); lean_object* l_Lean_mkAppN(lean_object*, lean_object*); static lean_object* l_Lean_Meta_instMonadEnvMetaM___closed__2; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__7; LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Meta_processPostponed___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_is_level_def_eq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_mkFunUnit___closed__5; @@ -140,6 +142,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_withConfig(lean_object*); lean_object* l_Lean_MessageData_toString(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_getTheoremInfo___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_modifyDiag(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__6; lean_object* l_Lean_indentD(lean_object*); double lean_float_div(double, double); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_getLocalDeclFromUserName___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -168,18 +171,17 @@ size_t lean_uint64_to_usize(uint64_t); LEAN_EXPORT lean_object* l_Lean_Meta_withAtLeastTransparency___rarg___lambda__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Meta_withLocalDecls_loop___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_Meta_forallMetaTelescope(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_getPostponed___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withNewMCtxDepth___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_Lean_Meta_processPostponed___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); 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*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Diagnostics_unfoldCounter___default; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__2; lean_object* l_Lean_Level_succ___override(lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__8; LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_FVarId_hasForwardDeps___spec__46___boxed(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__14; 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*); LEAN_EXPORT uint8_t l_Lean_Meta_ParamInfo_isProp___default; LEAN_EXPORT lean_object* l_Lean_Meta_instMonadLCtxMetaM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -189,6 +191,7 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps_ LEAN_EXPORT lean_object* l_Lean_LMVarId_getLevel___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_processPostponed_loop___closed__3; lean_object* l_Lean_PersistentArray_push___rarg(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__8; LEAN_EXPORT lean_object* l_Lean_MVarId_findDecl_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_mkLambdaFVars___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_push(lean_object*, lean_object*); @@ -196,7 +199,6 @@ lean_object* l_Lean_mkLevelMax_x27(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_FVarId_hasForwardDeps___spec__30___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_Config_transparency___default; LEAN_EXPORT lean_object* l_Lean_Meta_withAssignableSyntheticOpaque___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___rarg___lambda__3(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_getDefInfoTemp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_recordSynthPendingFailure___spec__2(lean_object*, size_t, lean_object*); lean_object* l_Array_qpartition___rarg(lean_object*, lean_object*, lean_object*, lean_object*); @@ -208,7 +210,6 @@ static lean_object* l_Lean_Meta_instAlternativeMetaM___closed__1; LEAN_EXPORT lean_object* l_Nat_foldM_loop___at_Lean_Meta_mkFreshLevelMVars___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_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_FVarId_hasForwardDeps___spec__43(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_isClassQuickConst_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__15; LEAN_EXPORT lean_object* l_Lean_mkFreshId___at_Lean_Meta_mkFreshExprMVarAt___spec__2___rarg(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateLambdaAux___closed__2; static lean_object* l_Lean_Meta_liftMkBindingM___rarg___closed__1; @@ -229,7 +230,6 @@ static lean_object* l_Lean_Meta_instAlternativeMetaM___lambda__1___closed__2; static lean_object* l_Lean_Meta_instInhabitedMetaM___rarg___closed__1; lean_object* l_Lean_MetavarContext_addLevelMVarDecl(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyM___at_Lean_FVarId_hasForwardDeps___spec__37___boxed(lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__11; LEAN_EXPORT lean_object* l_Lean_MVarId_isReadOnly(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_LMVarId_getLevel(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_processPostponed_loop(uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -251,6 +251,7 @@ LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_FVarId_hasForw LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecls_loop___rarg___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_Array_forInUnsafe_loop___at___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep___spec__5(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_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Meta_withLocalDecls_loop___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, uint8_t); +LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589_(lean_object*); LEAN_EXPORT lean_object* l_Lean_getReducibilityStatus___at___private_Lean_Meta_Basic_0__Lean_Meta_getDefInfoTemp___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_etaExpand___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_normalizeLevel(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -261,7 +262,6 @@ lean_object* lean_array_fget(lean_object*, lean_object*); extern lean_object* l_Lean_Expr_instBEq; LEAN_EXPORT 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_DefEqCache_instances___default; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__12; lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_instMonadEnvMetaM___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_withNewBinderInfos___at_Lean_Meta_withInstImplicitAsImplict___spec__3(lean_object*); @@ -295,7 +295,6 @@ lean_object* lean_environment_find(lean_object*, lean_object*); uint8_t lean_float_decLt(double, double); static lean_object* l_Lean_Meta_instInhabitedPostponedEntry___closed__1; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps___spec__39___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__14; LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withNewLocalInstanceImp(lean_object*); static lean_object* l_Lean_Meta_instInhabitedCache___closed__2; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep___spec__3___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -306,7 +305,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_withConfig___rarg___lambda__1(lean_object*, LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_instMetaEvalMetaM___rarg___closed__9; static lean_object* l_Lean_MVarId_getDecl___closed__2; -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___rarg___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_MetaM_toIO___rarg___closed__2; LEAN_EXPORT 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*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withLocalContextImp(lean_object*); @@ -320,7 +318,6 @@ static lean_object* l_Lean_Meta_instMetaEvalMetaM___rarg___closed__2; static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1225____closed__3; LEAN_EXPORT uint8_t l_Lean_Meta_Config_proofIrrelevance___default; LEAN_EXPORT uint8_t l_Lean_Meta_Config_ctxApprox___default; -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146_(lean_object*); 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*); 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*); @@ -350,7 +347,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_ParamInfo_backDeps___default; uint8_t l___private_Lean_Util_Trace_0__Lean_checkTraceOption(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MetavarContext_setMVarUserName(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instantiateForall___boxed(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_16568____closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_getFVarFromUserName(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instMonadEnvMetaM___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_instInhabitedPersistentArrayNode(lean_object*); @@ -358,6 +354,7 @@ LEAN_EXPORT lean_object* l_Lean_mkFreshFVarId___at___private_Lean_Meta_Basic_0__ LEAN_EXPORT lean_object* l_Lean_Meta_getNumPostponed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instMonadMetaM___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_List_any___rarg(lean_object*, lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__2; extern lean_object* l_Lean_maxRecDepth; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecls(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_FVarId_hasForwardDeps___spec__59(lean_object*, lean_object*, size_t, size_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -368,9 +365,9 @@ static lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Meta_Basic_0__L 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___private_Lean_Meta_Basic_0__Lean_Meta_approxDefEqImp(lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__9; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps___spec__40(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_isSyntheticMVar___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__6; LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_getConstTemp_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_LocalContext_addDecl(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_getReducibilityStatus___at___private_Lean_Meta_Basic_0__Lean_Meta_getDefInfoTemp___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -379,6 +376,7 @@ static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkLeveErrorMessageC LEAN_EXPORT lean_object* l_Lean_Meta_isInductivePredicate___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_modifyInferTypeCache(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Cache_inferType___default; +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__3; lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Kernel_Diagnostics_recordUnfold___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclD(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_FVarId_hasForwardDeps___spec__35___boxed(lean_object*, lean_object*, lean_object*); @@ -389,9 +387,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_getNumPostponed___rarg(lean_object*, lean_o LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps___spec__48(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_recordSynthPendingFailure___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Kernel_enableDiag(lean_object*, uint8_t); -static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__3; LEAN_EXPORT uint8_t l_Lean_Meta_ParamInfo_higherOrderOutParam___default; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__7; LEAN_EXPORT lean_object* l_Lean_Meta_State_cache___default; lean_object* l_Lean_LocalDecl_index(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Meta_processPostponed___spec__2(lean_object*, lean_object*, lean_object*); @@ -404,7 +400,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_MVarId_getDecl___spec__1___ LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_FVarId_hasForwardDeps___spec__22___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_5____closed__1; static lean_object* l_Lean_Meta_mkLevelStuckErrorMessage___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___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_withTraceNode___at_Lean_Meta_processPostponed___spec__1___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_getZetaDeltaFVarIds(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_getLocalInstances___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -431,7 +427,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at_Lean_Meta_isExprDefEq_ static lean_object* l_Lean_Meta_processPostponed___lambda__1___closed__1; size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Lean_MVarId_isReadOnlyOrSyntheticOpaque___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__1; uint8_t lean_get_reducibility_status(lean_object*, lean_object*); uint64_t l_Lean_Meta_TransparencyMode_hash(uint8_t); LEAN_EXPORT lean_object* l_Lean_Meta_orelseMergeErrors___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -457,7 +452,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_resetZetaDeltaFVarIds___rarg(lean_object*, LEAN_EXPORT lean_object* l_Lean_Meta_getFVarFromUserName___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_findCore___at___private_Lean_Meta_Basic_0__Lean_Meta_mkLeveErrorMessageCore___spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_mkFreshLevelMVar___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__7; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visit___at_Lean_FVarId_hasForwardDeps___spec__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT 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___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -481,13 +475,13 @@ LEAN_EXPORT lean_object* l_Lean_RBNode_findCore___at___private_Lean_Meta_Basic_0 LEAN_EXPORT lean_object* l_Lean_Meta_sortFVarIds___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_is_expr_def_eq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_FunInfo_resultDeps___default; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_fullApproxDefEq___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_Config_constApprox___default; uint8_t lean_expr_eqv(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withLocalDeclImp___rarg___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_Config_univApprox___default; LEAN_EXPORT lean_object* l_Lean_Expr_abstractRangeM___boxed(lean_object*, 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_16568____closed__1; static lean_object* l_Lean_Meta_Cache_funInfo___default___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_withNewBinderInfos___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_throwError___at___private_Lean_Meta_Basic_0__Lean_Meta_getConstTemp_x3f___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -501,9 +495,9 @@ LEAN_EXPORT lean_object* l_Lean_Meta_instMetaEvalMetaM(lean_object*); lean_object* l_Lean_ppExprWithInfos(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___rarg___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_Meta_withLocalInstances___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Diagnostics_synthPendingFailures___default___closed__1; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__4; 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*); @@ -526,7 +520,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_orElse___rarg(lean_object*, lean_object*, l LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Meta_processPostponed___spec__3(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_object* l_Lean_registerInternalExceptionId(lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__13; LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_LocalContext_setBinderInfo(lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Meta_lambdaMetaTelescope_process___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -568,6 +561,7 @@ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at_Lean_Meta_record LEAN_EXPORT lean_object* l_Lean_isReducible___at___private_Lean_Meta_Basic_0__Lean_Meta_getDefInfoTemp___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_isExprDefEqAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Data_PersistentArray_0__Lean_PersistentArray_foldlFromMAux___at_Lean_FVarId_hasForwardDeps___spec__52___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_Basic___hyg_2167____closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_MetaM_run___rarg(lean_object*, lean_object*, lean_object*, lean_object*, 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*); @@ -578,7 +572,6 @@ lean_object* l_Lean_Expr_forallE___override(lean_object*, lean_object*, lean_obj LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Meta_withIncRecDepth___spec__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_setMVarUserName___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_LocalContext_foldlM___at_Lean_FVarId_hasForwardDeps___spec__50(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux_process___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_Basic_0__Lean_Meta_isClassExpensive_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps___spec__41(lean_object*, lean_object*, size_t, size_t); @@ -627,6 +620,7 @@ lean_object* l_Lean_MetavarContext_addExprMVarDecl(lean_object*, lean_object*, l LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_FVarId_hasForwardDeps___spec__55(lean_object*, lean_object*, size_t, size_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Meta_processPostponed___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_Meta_withLocalInstances(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167_(lean_object*); 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_Lean_Meta_withDefault___rarg(lean_object*, lean_object*, lean_object*, lean_object*); @@ -681,7 +675,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescop LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyMAux___at_Lean_FVarId_hasForwardDeps___spec__22(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_FVarId_getValue_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_shouldReduceAll(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__5; LEAN_EXPORT uint8_t l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_158____at___private_Lean_Meta_Basic_0__Lean_Meta_beqInfoCacheKey____x40_Lean_Meta_Basic___hyg_350____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_mapError___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_instMonadBacktrackSavedStateMetaM___closed__3; @@ -704,6 +697,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeReducing___rarg(lean_object* static lean_object* l_Lean_Meta_Cache_synthInstance___default___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_ParamInfo_isStrictImplicit___boxed(lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps___spec__24(lean_object*, lean_object*, size_t, size_t); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_saveState___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_whnf___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep___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*); @@ -717,6 +711,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_mkConstWithFreshMVarLe LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep___spec__4(uint8_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_EXPORT lean_object* l_Lean_Meta_withoutProofIrrelevance___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withoutProofIrrelevance___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__15; LEAN_EXPORT lean_object* l_Lean_Meta_getParamNames___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Diagnostics_heuristicCounter___default; extern lean_object* l_Lean_trace_profiler_threshold; @@ -747,6 +742,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_saveState___rarg(lean_object*, lean_object* LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeReducing___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_diagnostics; LEAN_EXPORT lean_object* l_Lean_Meta_withTransparency(lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__4; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_recordSynthPendingFailure___spec__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ParamInfo_isImplicit___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withMCtx___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -818,7 +814,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescop lean_object* l_Lean_Level_collectMVars(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*); LEAN_EXPORT lean_object* l_Array_filterMapM___at_Lean_Meta_withInstImplicitAsImplict___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_Meta_withRestoreOrSaveFull___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___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_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_mapForallTelescope___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_LocalDecl_isImplementationDetail(lean_object*); @@ -855,7 +851,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_forallMetaTelescope___boxed(lean_object*, l LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkFreshExprMVarAtCore(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_EXPORT lean_object* l_Lean_Meta_withLocalDecl(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_resetDefEqPermCaches(lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Meta_withLocalDecls_loop___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withReducibleAndInstances___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep___closed__1; @@ -884,7 +879,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescop LEAN_EXPORT lean_object* l_Lean_Meta_throwUnknownFVar___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_Config_etaStruct___default; static lean_object* l_Lean_withTraceNode___at_Lean_Meta_processPostponed___spec__1___lambda__3___closed__1; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__16; LEAN_EXPORT lean_object* l_Lean_localDeclDependsOn___at_Lean_FVarId_hasForwardDeps___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_setInlineAttribute___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_FVarId_hasForwardDeps___spec__19___boxed(lean_object*, lean_object*, lean_object*); @@ -895,7 +889,6 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps_ LEAN_EXPORT lean_object* l_Lean_Meta_FunInfo_paramInfo___default; static lean_object* l_Lean_Meta_instAlternativeMetaM___lambda__1___closed__1; LEAN_EXPORT uint8_t l_Lean_Meta_ParamInfo_isStrictImplicit(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Meta_Basic_0__Lean_Meta_fvarsSizeLtMaxFVars(lean_object*, lean_object*); lean_object* l_Lean_Expr_ReplaceImpl_Cache_new(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -933,6 +926,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescop lean_object* lean_environment_main_module(lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps___spec__31(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_mkFreshExprMVar(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__7; LEAN_EXPORT lean_object* l_Lean_Meta_mapForallTelescope_x27___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_throwMaxRecDepthAt___at_Lean_Meta_withIncRecDepth___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -948,8 +942,8 @@ LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_FVarId_hasForw 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); LEAN_EXPORT lean_object* l_Lean_Meta_getLocalInstances(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__10; LEAN_EXPORT uint8_t l_Lean_Meta_Context_univApprox___default; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__10; LEAN_EXPORT lean_object* l_Lean_Meta_savingCache(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withNewMCtxDepthImp(lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyM___at_Lean_FVarId_hasForwardDeps___spec__13(lean_object*, lean_object*); @@ -975,7 +969,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_liftMetaM___rarg(lean_object*, lean_object* LEAN_EXPORT lean_object* l_Lean_Meta_map1MetaM___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_Meta_instMonadEnvMetaM___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1225____closed__7; -LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568_(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitApp___at_Lean_FVarId_hasForwardDeps___spec__28___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_resetDefEqPermCaches___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MVarId_setType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -993,6 +986,7 @@ static double l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2___c LEAN_EXPORT lean_object* l_Lean_Meta_MetaM_run(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_savingCache___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_processPostponed___lambda__1___closed__2; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__1; static lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Meta_withIncRecDepth___spec__1___rarg___closed__2; LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyMAux___at_Lean_FVarId_hasForwardDeps___spec__6(lean_object*, lean_object*); static lean_object* l_Lean_Meta_instMonadMetaM___closed__1; @@ -1044,6 +1038,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_instMetaEvalMetaM___rarg___boxed(lean_objec lean_object* l_Lean_MetavarContext_setMVarType(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_throwIsDefEqStuck___rarg___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux___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_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__11; LEAN_EXPORT lean_object* l_Lean_Meta_map2MetaM___rarg___lambda__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_Basic_0__Lean_Meta_beqInfoCacheKey____x40_Lean_Meta_Basic___hyg_350____boxed(lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_mkCollisionNode___rarg(lean_object*, lean_object*, lean_object*, lean_object*); @@ -1052,11 +1047,11 @@ LEAN_EXPORT lean_object* l_Lean_Meta_elimMVarDeps(lean_object*, lean_object*, ui LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_Context_inTypeClassResolution___default; static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1225____closed__2; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__16; LEAN_EXPORT lean_object* l_Lean_Meta_instantiateMVarsIfMVarApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withAtLeastTransparency___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_mkFreshLMVarId___at_Lean_Meta_mkFreshLevelMVar___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_recordSynthPendingFailure___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__4; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_getParamNames___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); uint8_t l_Lean_LocalDecl_binderInfo(lean_object*); @@ -1066,7 +1061,6 @@ static lean_object* l_Lean_Meta_instHashableSynthInstanceCacheKey___closed__1; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_FVarId_hasForwardDeps___spec__63(lean_object*, lean_object*, size_t, size_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Core_saveState___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at_Lean_Meta_isLevelDefEq___spec__1___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_Basic___hyg_2146____closed__9; static lean_object* l_Lean_Meta_instOrElseMetaM___closed__1; LEAN_EXPORT lean_object* l_Lean_mkFreshId___at_Lean_Meta_mkFreshExprMVarAt___spec__2___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withTransparency___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1077,6 +1071,7 @@ LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_v static lean_object* l_Lean_Meta_instInhabitedParamInfo___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_isReadOnlyExprMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instAlternativeMetaM; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__13; extern lean_object* l_Lean_firstFrontendMacroScope; static size_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_recordSynthPendingFailure___spec__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_ParamInfo_isInstImplicit___boxed(lean_object*); @@ -1238,6 +1233,7 @@ LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_v LEAN_EXPORT lean_object* l_Lean_MVarId_isReadOnly___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at_Lean_Meta_isLevelDefEq___spec__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_fullApproxDefEqImp(lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__12; LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux_process___rarg___lambda__1(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withReducibleAndInstances___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_isDiagnosticsEnabled(lean_object*, lean_object*, lean_object*); @@ -1247,6 +1243,7 @@ LEAN_EXPORT lean_object* l_Lean_localDeclDependsOn___at_Lean_FVarId_hasForwardDe lean_object* l_Lean_MetavarContext_incDepth(lean_object*, uint8_t); uint8_t l_Lean_Expr_isForall(lean_object*); static lean_object* l_Lean_Meta_State_postponed___default___closed__2; +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__5; LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallMetaTelescopeReducingAux___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_MVarId_setKind___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withMVarContext(lean_object*); @@ -3919,347 +3916,453 @@ lean_dec(x_1); return x_7; } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___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) { _start: { -lean_object* x_7; -x_7 = lean_apply_3(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; uint8_t 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 = lean_st_ref_get(x_3, x_9); -x_11 = !lean_is_exclusive(x_10); -if (x_11 == 0) +lean_object* x_9; +lean_inc(x_5); +x_9 = lean_apply_2(x_1, x_4, x_5); +if (lean_obj_tag(x_2) == 0) { -lean_object* x_12; lean_object* x_13; -x_12 = lean_ctor_get(x_10, 0); -x_13 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_13, 0, x_8); -lean_ctor_set(x_13, 1, x_12); -lean_ctor_set(x_10, 0, x_13); -return x_10; -} -else +lean_object* x_10; lean_object* x_11; +x_10 = lean_box(0); +x_11 = l_Lean_Core_withRestoreOrSaveFull___rarg(x_10, x_9, x_6, x_7, x_8); +if (lean_obj_tag(x_11) == 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); -lean_dec(x_10); -x_16 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_16, 0, x_8); -lean_ctor_set(x_16, 1, x_14); -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_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_is_exclusive(x_12); +if (x_14 == 0) { -uint8_t x_18; -x_18 = !lean_is_exclusive(x_7); -if (x_18 == 0) +lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_15 = lean_ctor_get(x_12, 1); +x_16 = lean_st_ref_get(x_5, x_13); +lean_dec(x_5); +x_17 = !lean_is_exclusive(x_16); +if (x_17 == 0) { -return x_7; +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_16, 0); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_15); +lean_ctor_set(x_19, 1, x_18); +lean_ctor_set(x_12, 1, x_19); +lean_ctor_set(x_16, 0, x_12); +return x_16; } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_7, 0); -x_20 = lean_ctor_get(x_7, 1); +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_20 = lean_ctor_get(x_16, 0); +x_21 = lean_ctor_get(x_16, 1); +lean_inc(x_21); lean_inc(x_20); -lean_inc(x_19); -lean_dec(x_7); -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_16); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_15); +lean_ctor_set(x_22, 1, x_20); +lean_ctor_set(x_12, 1, x_22); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_12); +lean_ctor_set(x_23, 1, x_21); +return x_23; } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___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) { -_start: +else { -lean_object* x_8; lean_object* x_9; -x_8 = lean_alloc_closure((void*)(l_Lean_Meta_withRestoreOrSaveFull___rarg___lambda__1___boxed), 6, 1); -lean_closure_set(x_8, 0, x_4); -x_9 = lean_apply_6(x_1, x_8, x_2, x_3, x_5, x_6, x_7); -return x_9; -} +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_24 = lean_ctor_get(x_12, 0); +x_25 = lean_ctor_get(x_12, 1); +lean_inc(x_25); +lean_inc(x_24); +lean_dec(x_12); +x_26 = lean_st_ref_get(x_5, x_13); +lean_dec(x_5); +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); +if (lean_is_exclusive(x_26)) { + lean_ctor_release(x_26, 0); + lean_ctor_release(x_26, 1); + x_29 = x_26; +} else { + lean_dec_ref(x_26); + x_29 = lean_box(0); } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___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) { -_start: -{ -lean_object* x_9; -x_9 = lean_alloc_closure((void*)(l_Lean_Meta_withRestoreOrSaveFull___rarg___lambda__2), 7, 3); -lean_closure_set(x_9, 0, x_1); -lean_closure_set(x_9, 1, x_4); -lean_closure_set(x_9, 2, x_5); -if (lean_obj_tag(x_2) == 0) -{ -lean_object* x_10; lean_object* x_11; -x_10 = lean_box(0); -x_11 = l_Lean_Core_withRestoreOrSaveFull___rarg(x_10, x_9, 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; +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_25); +lean_ctor_set(x_30, 1, x_27); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_24); +lean_ctor_set(x_31, 1, x_30); +if (lean_is_scalar(x_29)) { + x_32 = lean_alloc_ctor(0, 2, 0); +} else { + x_32 = x_29; } -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; +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_28); +return x_32; } } else { -uint8_t x_16; -x_16 = !lean_is_exclusive(x_11); -if (x_16 == 0) +uint8_t x_33; +lean_dec(x_5); +x_33 = !lean_is_exclusive(x_11); +if (x_33 == 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_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_11, 0); +x_35 = lean_ctor_get(x_11, 1); +lean_inc(x_35); +lean_inc(x_34); 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; +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_20; -x_20 = !lean_is_exclusive(x_2); -if (x_20 == 0) +uint8_t x_37; +x_37 = !lean_is_exclusive(x_2); +if (x_37 == 0) { -lean_object* x_21; uint8_t x_22; -x_21 = lean_ctor_get(x_2, 0); -x_22 = !lean_is_exclusive(x_21); -if (x_22 == 0) +lean_object* x_38; uint8_t x_39; +x_38 = lean_ctor_get(x_2, 0); +x_39 = !lean_is_exclusive(x_38); +if (x_39 == 0) { -lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_23 = lean_ctor_get(x_21, 1); -x_24 = lean_ctor_get(x_23, 0); -lean_inc(x_24); -lean_dec(x_23); -lean_ctor_set(x_21, 1, x_24); -x_25 = l_Lean_Core_withRestoreOrSaveFull___rarg(x_2, x_9, x_6, x_7, x_8); -if (lean_obj_tag(x_25) == 0) +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_38, 1); +x_41 = lean_ctor_get(x_40, 0); +lean_inc(x_41); +lean_dec(x_40); +lean_ctor_set(x_38, 1, x_41); +x_42 = l_Lean_Core_withRestoreOrSaveFull___rarg(x_2, x_9, x_6, x_7, x_8); +if (lean_obj_tag(x_42) == 0) { -uint8_t x_26; -x_26 = !lean_is_exclusive(x_25); -if (x_26 == 0) +lean_object* x_43; lean_object* x_44; uint8_t x_45; +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_is_exclusive(x_43); +if (x_45 == 0) { -return x_25; +lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_46 = lean_ctor_get(x_43, 1); +x_47 = lean_st_ref_get(x_5, x_44); +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); +x_50 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_50, 0, x_46); +lean_ctor_set(x_50, 1, x_49); +lean_ctor_set(x_43, 1, x_50); +lean_ctor_set(x_47, 0, x_43); +return x_47; } else { -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(0, 2, 0); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set(x_29, 1, x_28); -return x_29; +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_51 = lean_ctor_get(x_47, 0); +x_52 = lean_ctor_get(x_47, 1); +lean_inc(x_52); +lean_inc(x_51); +lean_dec(x_47); +x_53 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_53, 0, x_46); +lean_ctor_set(x_53, 1, x_51); +lean_ctor_set(x_43, 1, x_53); +x_54 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_54, 0, x_43); +lean_ctor_set(x_54, 1, x_52); +return x_54; } } else { -uint8_t x_30; -x_30 = !lean_is_exclusive(x_25); -if (x_30 == 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; +x_55 = lean_ctor_get(x_43, 0); +x_56 = lean_ctor_get(x_43, 1); +lean_inc(x_56); +lean_inc(x_55); +lean_dec(x_43); +x_57 = lean_st_ref_get(x_5, x_44); +lean_dec(x_5); +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 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_61, 0, x_56); +lean_ctor_set(x_61, 1, x_58); +x_62 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_62, 0, x_55); +lean_ctor_set(x_62, 1, 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 { -return x_25; +uint8_t x_64; +lean_dec(x_5); +x_64 = !lean_is_exclusive(x_42); +if (x_64 == 0) +{ +return x_42; } 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_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); +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_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_34 = lean_ctor_get(x_21, 0); -x_35 = lean_ctor_get(x_21, 1); -lean_inc(x_35); -lean_inc(x_34); -lean_dec(x_21); -x_36 = lean_ctor_get(x_35, 0); -lean_inc(x_36); -lean_dec(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); -lean_ctor_set(x_2, 0, x_37); -x_38 = l_Lean_Core_withRestoreOrSaveFull___rarg(x_2, x_9, x_6, x_7, x_8); -if (lean_obj_tag(x_38) == 0) +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_68 = lean_ctor_get(x_38, 0); +x_69 = lean_ctor_get(x_38, 1); +lean_inc(x_69); +lean_inc(x_68); +lean_dec(x_38); +x_70 = lean_ctor_get(x_69, 0); +lean_inc(x_70); +lean_dec(x_69); +x_71 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_71, 0, x_68); +lean_ctor_set(x_71, 1, x_70); +lean_ctor_set(x_2, 0, x_71); +x_72 = l_Lean_Core_withRestoreOrSaveFull___rarg(x_2, x_9, x_6, x_7, x_8); +if (lean_obj_tag(x_72) == 0) { -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -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; +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_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_ctor_get(x_73, 0); +lean_inc(x_75); +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; } else { - lean_dec_ref(x_38); - x_41 = lean_box(0); + lean_dec_ref(x_73); + x_77 = lean_box(0); } -if (lean_is_scalar(x_41)) { - x_42 = lean_alloc_ctor(0, 2, 0); +x_78 = lean_st_ref_get(x_5, x_74); +lean_dec(x_5); +x_79 = lean_ctor_get(x_78, 0); +lean_inc(x_79); +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 { - x_42 = x_41; + lean_dec_ref(x_78); + x_81 = lean_box(0); } -lean_ctor_set(x_42, 0, x_39); -lean_ctor_set(x_42, 1, x_40); -return x_42; +x_82 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_82, 0, x_76); +lean_ctor_set(x_82, 1, x_79); +if (lean_is_scalar(x_77)) { + x_83 = lean_alloc_ctor(0, 2, 0); +} else { + x_83 = x_77; +} +lean_ctor_set(x_83, 0, x_75); +lean_ctor_set(x_83, 1, x_82); +if (lean_is_scalar(x_81)) { + x_84 = lean_alloc_ctor(0, 2, 0); +} else { + x_84 = x_81; +} +lean_ctor_set(x_84, 0, x_83); +lean_ctor_set(x_84, 1, x_80); +return x_84; } else { -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_43 = lean_ctor_get(x_38, 0); -lean_inc(x_43); -x_44 = lean_ctor_get(x_38, 1); -lean_inc(x_44); -if (lean_is_exclusive(x_38)) { - lean_ctor_release(x_38, 0); - lean_ctor_release(x_38, 1); - x_45 = x_38; +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +lean_dec(x_5); +x_85 = lean_ctor_get(x_72, 0); +lean_inc(x_85); +x_86 = lean_ctor_get(x_72, 1); +lean_inc(x_86); +if (lean_is_exclusive(x_72)) { + lean_ctor_release(x_72, 0); + lean_ctor_release(x_72, 1); + x_87 = x_72; } else { - lean_dec_ref(x_38); - x_45 = lean_box(0); + lean_dec_ref(x_72); + x_87 = lean_box(0); } -if (lean_is_scalar(x_45)) { - x_46 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_87)) { + x_88 = lean_alloc_ctor(1, 2, 0); } else { - x_46 = x_45; + x_88 = x_87; } -lean_ctor_set(x_46, 0, x_43); -lean_ctor_set(x_46, 1, x_44); -return x_46; +lean_ctor_set(x_88, 0, x_85); +lean_ctor_set(x_88, 1, x_86); +return x_88; } } } 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; -x_47 = lean_ctor_get(x_2, 0); -lean_inc(x_47); +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_89 = lean_ctor_get(x_2, 0); +lean_inc(x_89); lean_dec(x_2); -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; +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_47); - x_50 = lean_box(0); + lean_dec_ref(x_89); + x_92 = lean_box(0); } -x_51 = lean_ctor_get(x_49, 0); -lean_inc(x_51); -lean_dec(x_49); -if (lean_is_scalar(x_50)) { - x_52 = lean_alloc_ctor(0, 2, 0); +x_93 = lean_ctor_get(x_91, 0); +lean_inc(x_93); +lean_dec(x_91); +if (lean_is_scalar(x_92)) { + x_94 = lean_alloc_ctor(0, 2, 0); } else { - x_52 = x_50; + x_94 = x_92; } -lean_ctor_set(x_52, 0, x_48); -lean_ctor_set(x_52, 1, x_51); -x_53 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_53, 0, x_52); -x_54 = l_Lean_Core_withRestoreOrSaveFull___rarg(x_53, x_9, x_6, x_7, x_8); -if (lean_obj_tag(x_54) == 0) +lean_ctor_set(x_94, 0, x_90); +lean_ctor_set(x_94, 1, x_93); +x_95 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_95, 0, x_94); +x_96 = l_Lean_Core_withRestoreOrSaveFull___rarg(x_95, x_9, x_6, x_7, x_8); +if (lean_obj_tag(x_96) == 0) { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_55 = lean_ctor_get(x_54, 0); -lean_inc(x_55); -x_56 = lean_ctor_get(x_54, 1); -lean_inc(x_56); -if (lean_is_exclusive(x_54)) { - lean_ctor_release(x_54, 0); - lean_ctor_release(x_54, 1); - x_57 = x_54; +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; +x_97 = lean_ctor_get(x_96, 0); +lean_inc(x_97); +x_98 = lean_ctor_get(x_96, 1); +lean_inc(x_98); +lean_dec(x_96); +x_99 = lean_ctor_get(x_97, 0); +lean_inc(x_99); +x_100 = lean_ctor_get(x_97, 1); +lean_inc(x_100); +if (lean_is_exclusive(x_97)) { + lean_ctor_release(x_97, 0); + lean_ctor_release(x_97, 1); + x_101 = x_97; } else { - lean_dec_ref(x_54); - x_57 = lean_box(0); + lean_dec_ref(x_97); + x_101 = lean_box(0); } -if (lean_is_scalar(x_57)) { - x_58 = lean_alloc_ctor(0, 2, 0); +x_102 = lean_st_ref_get(x_5, x_98); +lean_dec(x_5); +x_103 = lean_ctor_get(x_102, 0); +lean_inc(x_103); +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 { - x_58 = x_57; + lean_dec_ref(x_102); + x_105 = lean_box(0); } -lean_ctor_set(x_58, 0, x_55); -lean_ctor_set(x_58, 1, x_56); -return x_58; +x_106 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_106, 0, x_100); +lean_ctor_set(x_106, 1, x_103); +if (lean_is_scalar(x_101)) { + x_107 = lean_alloc_ctor(0, 2, 0); +} else { + x_107 = x_101; +} +lean_ctor_set(x_107, 0, x_99); +lean_ctor_set(x_107, 1, x_106); +if (lean_is_scalar(x_105)) { + x_108 = lean_alloc_ctor(0, 2, 0); +} else { + x_108 = x_105; +} +lean_ctor_set(x_108, 0, x_107); +lean_ctor_set(x_108, 1, x_104); +return x_108; } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_59 = lean_ctor_get(x_54, 0); -lean_inc(x_59); -x_60 = lean_ctor_get(x_54, 1); -lean_inc(x_60); -if (lean_is_exclusive(x_54)) { - lean_ctor_release(x_54, 0); - lean_ctor_release(x_54, 1); - x_61 = x_54; +lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; +lean_dec(x_5); +x_109 = lean_ctor_get(x_96, 0); +lean_inc(x_109); +x_110 = lean_ctor_get(x_96, 1); +lean_inc(x_110); +if (lean_is_exclusive(x_96)) { + lean_ctor_release(x_96, 0); + lean_ctor_release(x_96, 1); + x_111 = x_96; } else { - lean_dec_ref(x_54); - x_61 = lean_box(0); + lean_dec_ref(x_96); + x_111 = lean_box(0); } -if (lean_is_scalar(x_61)) { - x_62 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_111)) { + x_112 = lean_alloc_ctor(1, 2, 0); } else { - x_62 = x_61; + x_112 = x_111; } -lean_ctor_set(x_62, 0, x_59); -lean_ctor_set(x_62, 1, x_60); -return x_62; +lean_ctor_set(x_112, 0, x_109); +lean_ctor_set(x_112, 1, x_110); +return x_112; } } } @@ -4272,7 +4375,7 @@ if (lean_obj_tag(x_1) == 0) { lean_object* x_8; lean_object* x_9; x_8 = lean_box(0); -x_9 = l_Lean_Meta_withRestoreOrSaveFull___rarg___lambda__3(x_2, x_1, x_8, x_3, x_4, x_5, x_6, x_7); +x_9 = l_Lean_Meta_withRestoreOrSaveFull___rarg___lambda__1(x_2, x_1, x_8, x_3, x_4, x_5, x_6, x_7); return x_9; } else @@ -4292,7 +4395,7 @@ 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_withRestoreOrSaveFull___rarg___lambda__3(x_2, x_1, x_14, x_3, x_4, x_5, x_6, x_15); +x_16 = l_Lean_Meta_withRestoreOrSaveFull___rarg___lambda__1(x_2, x_1, x_14, x_3, x_4, x_5, x_6, x_15); lean_dec(x_14); return x_16; } @@ -4306,21 +4409,11 @@ x_2 = lean_alloc_closure((void*)(l_Lean_Meta_withRestoreOrSaveFull___rarg), 7, 0 return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___rarg___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_withRestoreOrSaveFull___rarg___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_3); -lean_dec(x_2); -return x_7; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___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_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___rarg___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_Meta_withRestoreOrSaveFull___rarg___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +x_9 = l_Lean_Meta_withRestoreOrSaveFull___rarg___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; } @@ -7232,7 +7325,7 @@ lean_dec(x_2); return x_6; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__1() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -7242,7 +7335,7 @@ 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_Basic___hyg_2146____closed__2() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -7252,17 +7345,17 @@ 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_Basic___hyg_2146____closed__3() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__2; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__2; x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1225____closed__7; 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_Basic___hyg_2146____closed__4() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__4() { _start: { lean_object* x_1; @@ -7270,17 +7363,17 @@ x_1 = lean_mk_string_from_bytes("initFn", 6); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__5() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__3; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__4; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__3; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____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_Basic___hyg_2146____closed__6() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__6() { _start: { lean_object* x_1; @@ -7288,37 +7381,37 @@ x_1 = lean_mk_string_from_bytes("_@", 2); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__7() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__5; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__6; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__5; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____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_Basic___hyg_2146____closed__8() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__7; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__7; x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1225____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_Basic___hyg_2146____closed__9() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__8; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__8; x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1225____closed__7; 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_Basic___hyg_2146____closed__10() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__10() { _start: { lean_object* x_1; @@ -7326,17 +7419,17 @@ x_1 = lean_mk_string_from_bytes("Basic", 5); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__11() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__9; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__10; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__9; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__10; 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_Basic___hyg_2146____closed__12() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__12() { _start: { lean_object* x_1; @@ -7344,27 +7437,27 @@ x_1 = lean_mk_string_from_bytes("_hyg", 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__13() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__11; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__12; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__11; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__12; 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_Basic___hyg_2146____closed__14() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__13; -x_2 = lean_unsigned_to_nat(2146u); +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__13; +x_2 = lean_unsigned_to_nat(2167u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__15() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__15() { _start: { lean_object* x_1; @@ -7372,23 +7465,23 @@ x_1 = lean_mk_string_from_bytes("debug", 5); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__16() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1225____closed__7; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__15; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__15; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167_(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_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__1; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__1; x_3 = 0; -x_4 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__14; +x_4 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__14; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); if (lean_obj_tag(x_5) == 0) { @@ -7396,7 +7489,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_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__16; +x_7 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__16; x_8 = l_Lean_registerTraceClass(x_7, x_3, x_4, x_6); return x_8; } @@ -54382,83 +54475,83 @@ lean_dec(x_2); return x_7; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__1() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__2; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__4; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__2; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__4; 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_16568____closed__2() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____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_16568____closed__1; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__6; +x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__1; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____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_16568____closed__3() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____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_16568____closed__2; +x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__2; x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1225____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_16568____closed__4() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____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_16568____closed__3; +x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__3; x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_1225____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_16568____closed__5() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____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_16568____closed__4; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__10; +x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__4; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____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_16568____closed__6() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____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_16568____closed__5; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__12; +x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__5; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____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_16568____closed__7() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____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_16568____closed__6; -x_2 = lean_unsigned_to_nat(16568u); +x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__6; +x_2 = lean_unsigned_to_nat(16589u); 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_16568_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589_(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_16568____closed__7; +x_4 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__7; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } @@ -54781,39 +54874,39 @@ l_Lean_Meta_throwIsDefEqStuck___rarg___closed__1 = _init_l_Lean_Meta_throwIsDefE lean_mark_persistent(l_Lean_Meta_throwIsDefEqStuck___rarg___closed__1); l_Lean_Meta_throwIsDefEqStuck___rarg___closed__2 = _init_l_Lean_Meta_throwIsDefEqStuck___rarg___closed__2(); lean_mark_persistent(l_Lean_Meta_throwIsDefEqStuck___rarg___closed__2); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__1(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__1); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__2 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__2(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__2); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__3 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__3(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__3); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__4 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__4(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__4); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__5 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__5(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__5); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__6 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__6(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__6); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__7 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__7(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__7); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__8 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__8(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__8); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__9 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__9(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__9); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__10 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__10(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__10); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__11 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__11(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__11); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__12 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__12(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__12); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__13 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__13(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__13); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__14 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__14(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__14); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__15 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__15(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__15); -l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__16 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__16(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146____closed__16); -if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2146_(lean_io_mk_world()); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__1(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__1); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__2 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__2(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__2); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__3 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__3(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__3); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__4 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__4(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__4); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__5 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__5(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__5); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__6 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__6(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__6); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__7 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__7(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__7); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__8 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__8(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__8); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__9 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__9(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__9); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__10 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__10(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__10); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__11 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__11(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__11); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__12 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__12(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__12); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__13 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__13(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__13); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__14 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__14(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__14); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__15 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__15(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__15); +l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__16 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__16(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167____closed__16); +if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2167_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_recordSynthPendingFailure___spec__2___closed__1 = _init_l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_recordSynthPendingFailure___spec__2___closed__1(); @@ -54965,21 +55058,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_16568____closed__1 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__1(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__1); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__2 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__2(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__2); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__3 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__3(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__3); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__4 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__4(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__4); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__5 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__5(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__5); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__6 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__6(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__6); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__7 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__7(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568____closed__7); -if (builtin) {res = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16568_(lean_io_mk_world()); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__1 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__1(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__1); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__2 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__2(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__2); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__3 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__3(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__3); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__4 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__4(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__4); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__5 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__5(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__5); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__6 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__6(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__6); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__7 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__7(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589____closed__7); +if (builtin) {res = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_16589_(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/Match.c b/stage0/stdlib/Lean/Meta/Match/Match.c index 561f7a74b7f3..abe0e2d43097 100644 --- a/stage0/stdlib/Lean/Meta/Match/Match.c +++ b/stage0/stdlib/Lean/Meta/Match/Match.c @@ -218,7 +218,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_ex LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_solveCnstrs_go___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_solveCnstrs_go___lambda__3___closed__4; LEAN_EXPORT lean_object* l_List_anyM___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_hasNatValPattern___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_mkConstWithLevelParams___at_Lean_Meta_registerCoercion___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_processConstructor___lambda__3___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_withAlts_mkMinorType___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_Match_initFn____x40_Lean_Meta_Match_Match___hyg_10661____closed__3; @@ -645,6 +644,7 @@ LEAN_EXPORT lean_object* l_Array_mapIdxM_map___at___private_Lean_Meta_Match_Matc LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Match_mkMatcher___spec__15(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*); static lean_object* l_List_mapM_loop___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_expandBitVecValuePattern___spec__1___closed__2; +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_MVarId_assign___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_solveCnstrs_go___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_getFinValue_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static double l_Lean_addTrace___at___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_solveCnstrs_go___spec__2___closed__1; @@ -46587,7 +46587,7 @@ lean_object* x_10; lean_object* x_11; lean_dec(x_4); x_10 = l_Lean_ConstantInfo_name(x_1); lean_dec(x_1); -x_11 = l_Lean_mkConstWithLevelParams___at_Lean_Meta_registerCoercion___spec__1(x_10, x_5, x_6, x_7, x_8, x_9); +x_11 = l_Lean_mkConstWithLevelParams___at_Lean_Meta_mkSimpCongrTheorem___spec__1(x_10, 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; lean_object* x_14; uint8_t x_15; lean_object* x_16; diff --git a/stage0/stdlib/Lean/Meta/Tactic/Cases.c b/stage0/stdlib/Lean/Meta/Tactic/Cases.c index 216ecc2a0163..fde701f91570 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Cases.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Cases.c @@ -14,12 +14,12 @@ extern "C" { #endif static lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_toByCasesSubgoal___closed__1; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__6; static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___spec__1___lambda__6___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_generalizeIndices___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Cases_Context_majorTypeIndices___default(lean_object*, lean_object*); lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); lean_object* l_Lean_Meta_FVarSubst_apply(lean_object*, lean_object*); +static lean_object* l_Lean_MVarId_byCasesDec___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_mkEqAndProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_inductionCasesOn___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_MetavarContext_0__Lean_DependsOn_dep_visit___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__44___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -67,15 +67,14 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_ LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitApp___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__46(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_inductionCasesOn___lambda__2___closed__4; lean_object* l_Lean_Meta_FVarSubst_insert(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__2; lean_object* l_Lean_Expr_sort___override(lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__9; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitApp___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyM___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__31___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyM___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__53(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkHashSetImp___rarg(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_inductionCasesOn___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_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484_(lean_object*); LEAN_EXPORT lean_object* l_Nat_anyTR_loop___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___spec__1___closed__2; static lean_object* l_Lean_Meta_generalizeTargetsEq___lambda__3___closed__2; @@ -87,16 +86,18 @@ LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_v LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__26___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_GetElem_0__outOfBounds___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__33___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__14; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__1; lean_object* lean_array_fget(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__35(lean_object*, lean_object*, lean_object*, size_t, size_t); extern lean_object* l_Lean_casesOnSuffix; +LEAN_EXPORT 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_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__41(lean_object*, lean_object*, lean_object*, size_t, size_t); static lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_mkEqAndProof___closed__6; lean_object* l_Lean_Meta_FVarSubst_get(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_Expr_fvarId_x21(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyM___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__47___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__7; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___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* lean_environment_find(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_throwInductiveTypeExpected___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -133,6 +134,7 @@ static lean_object* l_Lean_MVarId_casesAnd___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Meta_Cases_unifyEqs_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__37___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Cases_cases___lambda__2___closed__3; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__3; lean_object* l_Lean_AssocList_erase___at_Lean_Meta_FVarSubst_erase___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_toCasesSubgoals___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__52___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -146,13 +148,13 @@ static lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_mkEqAndProof static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___spec__1___lambda__1___closed__1; static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___spec__1___closed__5; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__13; size_t lean_usize_of_nat(lean_object*); static lean_object* l_Lean_Meta_generalizeTargetsEq___closed__2; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_MVarId_casesRec___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_EXPORT uint8_t l_Lean_PersistentArray_anyM___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__39(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_throwInductiveTypeExpected___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__10; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visit___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__36___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyM___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__23(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___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*); @@ -169,7 +171,6 @@ static lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_withNewEqs_l uint8_t lean_expr_eqv(lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___spec__1___lambda__6___closed__2; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visit___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__36(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__13; lean_object* l_Lean_instantiateMVars___at___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___spec__7(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visit___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__21(lean_object*, lean_object*, lean_object*, lean_object*); @@ -184,13 +185,13 @@ LEAN_EXPORT lean_object* l_Lean_MVarId_byCases(lean_object*, lean_object*, lean_ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__51(lean_object*, lean_object*, lean_object*, size_t, size_t); lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___spec__1___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*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__10; lean_object* l_Lean_Meta_SavedState_restore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_generalizeTargetsEq___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_PersistentArray_forIn___at_Lean_MVarId_casesRec___spec__3___lambda__1(lean_object*, 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___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__30(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_toByCasesSubgoal___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_acyclic(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_Cases___hyg_3484____closed__12; static lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_toByCasesSubgoal___closed__2; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_MVarId_casesRec___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*); @@ -203,6 +204,7 @@ lean_object* l_Lean_Meta_getLevel(lean_object*, lean_object*, lean_object*, lean lean_object* l_Lean_FVarId_getDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___spec__1___lambda__6___closed__4; static lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_mkEqAndProof___closed__7; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__2; lean_object* lean_st_ref_get(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_inductionCasesOn___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_mkCasesContext_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -226,9 +228,9 @@ extern lean_object* l_Lean_levelZero; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_unifyCasesEqs___spec__2(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_throwError___at_Lean_MVarId_byCases___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_instInhabitedExpr; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__14; lean_object* l_Lean_Meta_whnfD(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MVarId_casesAnd(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__11; LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__16___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_List_lengthTRAux___rarg(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyMAux___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__8(lean_object*, lean_object*, lean_object*); @@ -244,6 +246,7 @@ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___spec__1___closed__4; LEAN_EXPORT lean_object* l_Lean_observing_x3f___at_Lean_MVarId_casesRec___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_MVarId_casesRec___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*); +static lean_object* l_Lean_MVarId_byCasesDec___closed__4; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_mkCasesContext_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* l_Lean_mkNot(lean_object*); LEAN_EXPORT lean_object* l_Lean_MVarId_substEqs___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -253,6 +256,8 @@ lean_object* l_Lean_Meta_saveState___rarg(lean_object*, lean_object*, lean_objec LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_unifyCasesEqs___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_MVarId_casesRec___lambda__1___closed__1; static lean_object* l_Lean_Meta_Cases_cases___lambda__2___closed__5; +static lean_object* l_Lean_MVarId_byCasesDec___closed__5; +static lean_object* l_Lean_MVarId_byCasesDec___closed__2; lean_object* l_Lean_LocalDecl_fvarId(lean_object*); static lean_object* l_Lean_MVarId_casesAnd___lambda__1___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_inductionCasesOn(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -262,6 +267,7 @@ LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyMAux___at___private_Lean_Meta_Tact LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___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_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___spec__1___closed__3; lean_object* l_Lean_MVarId_assert(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_Cases___hyg_3703____closed__11; static lean_object* l_Lean_Meta_getInductiveUniverseAndParams___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_mkEqAndProof___closed__5; static lean_object* l_Lean_MVarId_byCases___closed__5; @@ -289,7 +295,7 @@ LEAN_EXPORT lean_object* l_Lean_MVarId_casesRec___lambda__2(lean_object*, lean_o LEAN_EXPORT lean_object* l_Array_mapIdxM_map___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_toCasesSubgoals___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_Cases_cases___closed__1; lean_object* l_Lean_Meta_introNCore(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_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__5; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__5; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_inductionCasesOn___lambda__2(lean_object*, 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_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__34___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__32___boxed(lean_object*, lean_object*, lean_object*); @@ -301,10 +307,10 @@ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases lean_object* l_Lean_Meta_ensureAtMostOne(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Cases_Context_nminors___default___boxed(lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyMAux___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__32(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__4; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_MVarId_casesRec___spec__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_PersistentArray_anyM___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__39___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_app___override(lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__4; LEAN_EXPORT lean_object* l_Lean_MVarId_casesAnd___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_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__35___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_getInductiveUniverseAndParams(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -314,10 +320,9 @@ LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_v static lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_mkEqAndProof___closed__4; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__42___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__8; static lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Meta_Cases_unifyEqs_x3f___spec__1___closed__2; +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703_(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 lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__3; lean_object* l_Lean_Meta_getLocalInstances(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyM___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__23___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___spec__1___closed__8; @@ -335,6 +340,7 @@ 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*); lean_object* l_Lean_LocalDecl_type(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_generalizeTargetsEq___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_MVarId_byCasesDec___closed__1; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visit___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__12(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*); @@ -398,8 +404,8 @@ lean_object* lean_array_get_size(lean_object*); lean_object* l_Lean_LocalDecl_toExpr(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_MVarId_casesRec___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_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_MVarId_casesRec___spec__7(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_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__9; static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_mkCasesContext_x3f___spec__1___closed__1; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__6; 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_MVarId_byCases___closed__3; @@ -413,7 +419,7 @@ LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_MVarId_casesR lean_object* lean_nat_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__13(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_inductionCasesOn___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_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__15; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__15; uint8_t l_Lean_Exception_isRuntime(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_elimAuxIndices___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_MVarId_cases___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -421,10 +427,8 @@ LEAN_EXPORT lean_object* l_Lean_Meta_generalizeIndices(lean_object*, lean_object LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__50(lean_object*, lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visit___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__28(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isFVar(lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__1; lean_object* l_Lean_Expr_mvarId_x21(lean_object*); static lean_object* l_Lean_MVarId_byCases___closed__4; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__7; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__17(lean_object*, lean_object*, lean_object*, size_t, size_t); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___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*); @@ -437,6 +441,8 @@ LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyM___at___private_Lean_Meta_Tactic_ static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_generalizeIndices___spec__1___lambda__6___closed__3; LEAN_EXPORT lean_object* l_Nat_anyTR_loop___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_toArrayAux___rarg(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__8; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__12; static lean_object* l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_throwInductiveTypeExpected___rarg___closed__3; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_Cases_hasIndepIndices___spec__19___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Array_isEmpty___rarg(lean_object*); @@ -17941,7 +17947,507 @@ lean_dec(x_2); return x_7; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__1() { +static lean_object* _init_l_Lean_MVarId_byCasesDec___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Decidable", 9); +return x_1; +} +} +static lean_object* _init_l_Lean_MVarId_byCasesDec___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_MVarId_byCasesDec___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_MVarId_byCasesDec___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_MVarId_byCasesDec___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; +} +} +static lean_object* _init_l_Lean_MVarId_byCasesDec___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("'byCasesDec' tactic failed, unexpected number of subgoals", 57); +return x_1; +} +} +static lean_object* _init_l_Lean_MVarId_byCasesDec___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_MVarId_byCasesDec___closed__4; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_MVarId_byCasesDec(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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_box(0); +x_11 = l_Lean_MVarId_byCasesDec___closed__3; +x_12 = l_Lean_Expr_app___override(x_11, x_2); +x_13 = l_Lean_MVarId_byCases___closed__2; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_14 = l_Lean_MVarId_assert(x_1, x_13, x_12, x_3, 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; uint8_t x_17; lean_object* 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 = 0; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_18 = l_Lean_Meta_intro1Core(x_15, x_17, x_5, x_6, x_7, x_8, x_16); +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, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = !lean_is_exclusive(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; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_22 = lean_ctor_get(x_19, 0); +x_23 = lean_ctor_get(x_19, 1); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_4); +lean_ctor_set(x_24, 1, x_10); +x_25 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set_uint8(x_25, sizeof(void*)*1, x_17); +x_26 = l_Lean_MVarId_byCases___closed__3; +lean_inc(x_25); +x_27 = lean_array_push(x_26, x_25); +x_28 = lean_array_push(x_27, x_25); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_29 = l_Lean_Meta_Cases_cases(x_23, x_22, x_28, x_17, x_5, x_6, x_7, x_8, x_20); +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, 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_get_size(x_30); +x_33 = lean_unsigned_to_nat(2u); +x_34 = lean_nat_dec_eq(x_32, x_33); +lean_dec(x_32); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; +lean_dec(x_30); +lean_free_object(x_19); +x_35 = l_Lean_MVarId_byCasesDec___closed__5; +x_36 = l_Lean_throwError___at_Lean_MVarId_byCases___spec__1(x_35, 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); +return x_36; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_37 = lean_unsigned_to_nat(0u); +x_38 = lean_array_fget(x_30, x_37); +x_39 = lean_unsigned_to_nat(1u); +x_40 = lean_array_fget(x_30, x_39); +lean_dec(x_30); +x_41 = l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_toByCasesSubgoal(x_40, x_5, x_6, x_7, x_8, x_31); +if (lean_obj_tag(x_41) == 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_Meta_Tactic_Cases_0__Lean_Meta_toByCasesSubgoal(x_38, x_5, x_6, x_7, x_8, x_43); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +if (lean_obj_tag(x_44) == 0) +{ +uint8_t x_45; +x_45 = !lean_is_exclusive(x_44); +if (x_45 == 0) +{ +lean_object* x_46; +x_46 = lean_ctor_get(x_44, 0); +lean_ctor_set(x_19, 1, x_46); +lean_ctor_set(x_19, 0, x_42); +lean_ctor_set(x_44, 0, x_19); +return x_44; +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_44, 0); +x_48 = lean_ctor_get(x_44, 1); +lean_inc(x_48); +lean_inc(x_47); +lean_dec(x_44); +lean_ctor_set(x_19, 1, x_47); +lean_ctor_set(x_19, 0, x_42); +x_49 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_49, 0, x_19); +lean_ctor_set(x_49, 1, x_48); +return x_49; +} +} +else +{ +uint8_t x_50; +lean_dec(x_42); +lean_free_object(x_19); +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 +{ +uint8_t x_54; +lean_dec(x_38); +lean_free_object(x_19); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_54 = !lean_is_exclusive(x_41); +if (x_54 == 0) +{ +return x_41; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = lean_ctor_get(x_41, 0); +x_56 = lean_ctor_get(x_41, 1); +lean_inc(x_56); +lean_inc(x_55); +lean_dec(x_41); +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_free_object(x_19); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_58 = !lean_is_exclusive(x_29); +if (x_58 == 0) +{ +return x_29; +} +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_59 = lean_ctor_get(x_29, 0); +x_60 = lean_ctor_get(x_29, 1); +lean_inc(x_60); +lean_inc(x_59); +lean_dec(x_29); +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 +{ +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_62 = lean_ctor_get(x_19, 0); +x_63 = lean_ctor_get(x_19, 1); +lean_inc(x_63); +lean_inc(x_62); +lean_dec(x_19); +x_64 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_64, 0, x_4); +lean_ctor_set(x_64, 1, x_10); +x_65 = lean_alloc_ctor(0, 1, 1); +lean_ctor_set(x_65, 0, x_64); +lean_ctor_set_uint8(x_65, sizeof(void*)*1, x_17); +x_66 = l_Lean_MVarId_byCases___closed__3; +lean_inc(x_65); +x_67 = lean_array_push(x_66, x_65); +x_68 = lean_array_push(x_67, x_65); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_69 = l_Lean_Meta_Cases_cases(x_63, x_62, x_68, x_17, x_5, x_6, x_7, x_8, x_20); +if (lean_obj_tag(x_69) == 0) +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; uint8_t x_74; +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_array_get_size(x_70); +x_73 = lean_unsigned_to_nat(2u); +x_74 = lean_nat_dec_eq(x_72, x_73); +lean_dec(x_72); +if (x_74 == 0) +{ +lean_object* x_75; lean_object* x_76; +lean_dec(x_70); +x_75 = l_Lean_MVarId_byCasesDec___closed__5; +x_76 = l_Lean_throwError___at_Lean_MVarId_byCases___spec__1(x_75, x_5, x_6, x_7, x_8, x_71); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(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; +x_77 = lean_unsigned_to_nat(0u); +x_78 = lean_array_fget(x_70, x_77); +x_79 = lean_unsigned_to_nat(1u); +x_80 = lean_array_fget(x_70, x_79); +lean_dec(x_70); +x_81 = l___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_toByCasesSubgoal(x_80, x_5, x_6, x_7, x_8, x_71); +if (lean_obj_tag(x_81) == 0) +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; +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___private_Lean_Meta_Tactic_Cases_0__Lean_Meta_toByCasesSubgoal(x_78, x_5, x_6, x_7, x_8, x_83); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +if (lean_obj_tag(x_84) == 0) +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +x_85 = lean_ctor_get(x_84, 0); +lean_inc(x_85); +x_86 = lean_ctor_get(x_84, 1); +lean_inc(x_86); +if (lean_is_exclusive(x_84)) { + lean_ctor_release(x_84, 0); + lean_ctor_release(x_84, 1); + x_87 = x_84; +} else { + lean_dec_ref(x_84); + x_87 = lean_box(0); +} +x_88 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_88, 0, x_82); +lean_ctor_set(x_88, 1, x_85); +if (lean_is_scalar(x_87)) { + x_89 = lean_alloc_ctor(0, 2, 0); +} else { + x_89 = x_87; +} +lean_ctor_set(x_89, 0, x_88); +lean_ctor_set(x_89, 1, x_86); +return x_89; +} +else +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_dec(x_82); +x_90 = lean_ctor_get(x_84, 0); +lean_inc(x_90); +x_91 = lean_ctor_get(x_84, 1); +lean_inc(x_91); +if (lean_is_exclusive(x_84)) { + lean_ctor_release(x_84, 0); + lean_ctor_release(x_84, 1); + x_92 = x_84; +} else { + lean_dec_ref(x_84); + 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; +} +} +else +{ +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +lean_dec(x_78); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_94 = lean_ctor_get(x_81, 0); +lean_inc(x_94); +x_95 = lean_ctor_get(x_81, 1); +lean_inc(x_95); +if (lean_is_exclusive(x_81)) { + lean_ctor_release(x_81, 0); + lean_ctor_release(x_81, 1); + x_96 = x_81; +} else { + lean_dec_ref(x_81); + x_96 = lean_box(0); +} +if (lean_is_scalar(x_96)) { + x_97 = lean_alloc_ctor(1, 2, 0); +} else { + x_97 = x_96; +} +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_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_98 = lean_ctor_get(x_69, 0); +lean_inc(x_98); +x_99 = lean_ctor_get(x_69, 1); +lean_inc(x_99); +if (lean_is_exclusive(x_69)) { + lean_ctor_release(x_69, 0); + lean_ctor_release(x_69, 1); + x_100 = x_69; +} else { + lean_dec_ref(x_69); + 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 +{ +uint8_t x_102; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_102 = !lean_is_exclusive(x_18); +if (x_102 == 0) +{ +return x_18; +} +else +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; +x_103 = lean_ctor_get(x_18, 0); +x_104 = lean_ctor_get(x_18, 1); +lean_inc(x_104); +lean_inc(x_103); +lean_dec(x_18); +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_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_106 = !lean_is_exclusive(x_14); +if (x_106 == 0) +{ +return x_14; +} +else +{ +lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_107 = lean_ctor_get(x_14, 0); +x_108 = lean_ctor_get(x_14, 1); +lean_inc(x_108); +lean_inc(x_107); +lean_dec(x_14); +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_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__1() { _start: { lean_object* x_1; @@ -17949,27 +18455,27 @@ x_1 = lean_mk_string_from_bytes("Lean", 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__2() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__1; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__3() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__2; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__2; x_2 = l_Lean_Meta_Cases_cases___lambda__2___closed__5; 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_Cases___hyg_3484____closed__4() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__4() { _start: { lean_object* x_1; @@ -17977,17 +18483,17 @@ x_1 = lean_mk_string_from_bytes("initFn", 6); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__5() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__3; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__4; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__3; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__6() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__6() { _start: { lean_object* x_1; @@ -17995,47 +18501,47 @@ x_1 = lean_mk_string_from_bytes("_@", 2); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__7() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__5; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__6; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__5; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__8() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__7; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__1; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__7; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__9() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__8; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__8; x_2 = l_Lean_Meta_Cases_cases___lambda__2___closed__5; 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_Cases___hyg_3484____closed__10() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__9; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__9; x_2 = l_Lean_Meta_Cases_cases___lambda__2___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_Cases___hyg_3484____closed__11() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__11() { _start: { lean_object* x_1; @@ -18043,17 +18549,17 @@ x_1 = lean_mk_string_from_bytes("Cases", 5); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__12() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__10; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__11; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__10; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__13() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__13() { _start: { lean_object* x_1; @@ -18061,33 +18567,33 @@ x_1 = lean_mk_string_from_bytes("_hyg", 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__14() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__12; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__13; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__12; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__15() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____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_Cases___hyg_3484____closed__14; -x_2 = lean_unsigned_to_nat(3484u); +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__14; +x_2 = lean_unsigned_to_nat(3703u); 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_Cases___hyg_3484_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703_(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_Cases_cases___lambda__2___closed__8; x_3 = 0; -x_4 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__15; +x_4 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__15; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } @@ -18267,37 +18773,47 @@ l_Lean_MVarId_byCases___closed__4 = _init_l_Lean_MVarId_byCases___closed__4(); lean_mark_persistent(l_Lean_MVarId_byCases___closed__4); l_Lean_MVarId_byCases___closed__5 = _init_l_Lean_MVarId_byCases___closed__5(); lean_mark_persistent(l_Lean_MVarId_byCases___closed__5); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__1(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__1); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__2 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__2(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__2); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__3 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__3(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__3); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__4 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__4(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__4); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__5 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__5(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__5); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__6 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__6(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__6); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__7 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__7(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__7); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__8 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__8(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__8); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__9 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__9(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__9); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__10 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__10(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__10); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__11 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__11(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__11); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__12 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__12(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__12); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__13 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__13(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__13); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__14 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__14(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__14); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__15 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__15(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484____closed__15); -if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3484_(lean_io_mk_world()); +l_Lean_MVarId_byCasesDec___closed__1 = _init_l_Lean_MVarId_byCasesDec___closed__1(); +lean_mark_persistent(l_Lean_MVarId_byCasesDec___closed__1); +l_Lean_MVarId_byCasesDec___closed__2 = _init_l_Lean_MVarId_byCasesDec___closed__2(); +lean_mark_persistent(l_Lean_MVarId_byCasesDec___closed__2); +l_Lean_MVarId_byCasesDec___closed__3 = _init_l_Lean_MVarId_byCasesDec___closed__3(); +lean_mark_persistent(l_Lean_MVarId_byCasesDec___closed__3); +l_Lean_MVarId_byCasesDec___closed__4 = _init_l_Lean_MVarId_byCasesDec___closed__4(); +lean_mark_persistent(l_Lean_MVarId_byCasesDec___closed__4); +l_Lean_MVarId_byCasesDec___closed__5 = _init_l_Lean_MVarId_byCasesDec___closed__5(); +lean_mark_persistent(l_Lean_MVarId_byCasesDec___closed__5); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__1(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__1); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__2 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__2(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__2); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__3 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__3(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__3); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__4 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__4(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__4); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__5 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__5(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__5); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__6 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__6(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__6); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__7 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__7(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__7); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__8 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__8(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__8); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__9 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__9(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__9); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__10 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__10(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__10); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__11 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__11(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__11); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__12 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__12(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__12); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__13 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__13(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__13); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__14 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__14(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__14); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__15 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__15(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703____closed__15); +if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Cases___hyg_3703_(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/FunInd.c b/stage0/stdlib/Lean/Meta/Tactic/FunInd.c index e2fa94c88ff8..ebb3e21bf0fc 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/FunInd.c +++ b/stage0/stdlib/Lean/Meta/Tactic/FunInd.c @@ -15,40 +15,47 @@ extern "C" { #endif LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionCase(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_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*); +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___closed__2; static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__7___closed__1; lean_object* l_Lean_throwError___at_Lean_Meta_collectForwardDeps___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__40___lambda__2___closed__2; lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__17; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Tactic_FunInd_buildInductionBody___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*); static lean_object* l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__12; -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__5(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_findRecursor___spec__7___rarg___lambda__6___closed__2; +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__10; LEAN_EXPORT lean_object* l_Lean_instantiateMVars___at_Lean_Tactic_FunInd_buildInductionCase___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__11; lean_object* l_StateRefT_x27_instMonadExceptOf___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__10(lean_object*); lean_object* l_Lean_registerReservedNameAction(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___closed__1; +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__4___boxed(lean_object**); +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__4; LEAN_EXPORT lean_object* l_StateT_lift___at_Lean_Tactic_FunInd_buildInductionBody___spec__34(lean_object*); -LEAN_EXPORT uint8_t l_Array_isEqvAux___at_Lean_Tactic_FunInd_findRecursor___spec__3(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__33___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_getElimExprInfo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__5; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__9(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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__4; +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__24; +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__2; +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__17___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__4(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_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); 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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__10(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___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*, uint8_t, uint8_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_deriveUnaryInduction___spec__14___rarg(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_mkFst___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__1(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_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__5___closed__5; LEAN_EXPORT lean_object* l_Array_mapIdxM_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_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__6___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___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* 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*); @@ -56,7 +63,6 @@ lean_object* l_Lean_mkAppN(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__5(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_getConstInfoDefn___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__9___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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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*); extern lean_object* l_Lean_Elab_WF_instInhabitedEqnInfo; static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__3; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -68,13 +74,14 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_removeLamda___at_Lean_Tactic_FunIn LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__17(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__6(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_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__40___closed__2; +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__3; +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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_EXPORT lean_object* l_Lean_getConstInfo___at_Lean_Tactic_FunInd_buildInductionBody___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_log___at___private_Lean_Meta_Instances_0__Lean_Meta_computeSynthOrder___spec__6(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__7(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_findRecursor___spec__6___rarg___lambda__13___closed__8; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_collectIHs___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_forInUnsafe_loop___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_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__20; +static lean_object* l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__2; LEAN_EXPORT lean_object* l_StateT_pure___at_Lean_Tactic_FunInd_buildInductionBody___spec__46___rarg(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_foldCalls___spec__11(lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__14___closed__4; @@ -86,10 +93,10 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_collectI 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*); static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__13___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__13(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_substVarAfter(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__23(lean_object*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__12; static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__8___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_ConstantInfo_type(lean_object*); @@ -102,22 +109,20 @@ static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___clo lean_object* l_Lean_ConstantInfo_levelParams(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Tactic_FunInd_buildInductionBody___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*); static lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__8___closed__1; -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__5___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_deduplicateIHs___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__8(uint8_t, 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_isInterrupt(lean_object*); -static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__9; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_maskArray___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_panic___at_Lean_Tactic_FunInd_buildInductionBody___spec__6(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__26___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* l_Lean_mkAppB(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Tactic_FunInd_buildInductionBody___spec__11___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_MVarId_revertAfter(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_findRecursor___spec__7___rarg___lambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__6___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__13___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_getConstInfo___at_Lean_Tactic_FunInd_buildInductionBody___spec__4___closed__1; -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__2(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_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isPProdProjWithArgs___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__3; @@ -125,11 +130,12 @@ uint8_t l_Array_contains___at_Lean_Meta_getElimExprInfo___spec__4(lean_object*, uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_findRecursor_err___spec__1(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*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__15; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__5(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_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__9; LEAN_EXPORT lean_object* l_StateT_pure___at_Lean_Tactic_FunInd_buildInductionBody___spec__46___rarg___boxed(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_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_removeLamda___at_Lean_Tactic_FunInd_foldCalls___spec__2___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__11___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__22___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -145,18 +151,16 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryIn lean_object* l_Array_toSubarray___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__15; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__13___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_11892____lambda__2___closed__22; lean_object* l_Lean_mkHashSetImp___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__6(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*); uint8_t l_Array_contains___at_Lean_findField_x3f___spec__1(lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__16; -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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*); +static lean_object* l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__1; static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__16___closed__1; lean_object* lean_mk_array(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__15___rarg___boxed(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_findRecursor___spec__6___rarg___lambda__13___closed__7; uint8_t lean_usize_dec_eq(size_t, size_t); +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatcherApp_Transform_0__Lean_Meta_MatcherApp_forallAltTelescope_x27___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___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_Tactic_FunInd_foldCalls___lambda__16___closed__3; extern lean_object* l_Lean_Elab_Structural_instInhabitedEqnInfo; @@ -165,13 +169,14 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_assertIHs(lean_object*, lean_objec static lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__4___closed__4; lean_object* l_Lean_Expr_mdata___override(lean_object*, lean_object*); lean_object* l___private_Init_GetElem_0__outOfBounds___rarg(lean_object*); -LEAN_EXPORT lean_object* l_Array_isEqvAux___at_Lean_Tactic_FunInd_findRecursor___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_replaceRef(lean_object*, lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__2___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__4(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_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__41(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_findRecursor___spec__7___rarg___lambda__14___closed__4; lean_object* l_Lean_Meta_mkExpectedTypeHint(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__4___closed__3; +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__15; lean_object* l_Lean_Expr_proj___override(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getPos_x3f(lean_object*, uint8_t); lean_object* lean_array_fget(lean_object*, lean_object*); @@ -183,7 +188,6 @@ LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Tactic_FunInd LEAN_EXPORT lean_object* l_panic___at_Lean_Tactic_FunInd_collectIHs___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_casesOnSuffix; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_withUserNames___at_Lean_Tactic_FunInd_buildInductionBody___spec__36___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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__1; LEAN_EXPORT lean_object* l_Array_mapIdxM_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*); lean_object* l_Lean_Syntax_getTailPos_x3f(lean_object*, uint8_t); lean_object* l_Lean_Meta_Match_MatcherInfo_arity(lean_object*); @@ -191,7 +195,9 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__7___boxed(lea lean_object* l_Lean_ConstantInfo_name(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_findRecursor___spec__2(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__24___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkFst___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_cleanPackedArgs___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_findRecursor___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__9(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_Tactic_FunInd_deriveUnpackedInduction(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_deriveUnaryInduction___spec__8___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -199,16 +205,18 @@ LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunIn LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__24(lean_object*); lean_object* l_Lean_Expr_fvarId_x21(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__2___lambda__1(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_findRecursor___spec__7___rarg___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* 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*); LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__2___lambda__1___boxed(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_findRecursor___spec__6___rarg___lambda__3___closed__1; static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__3___closed__2; lean_object* lean_environment_find(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__7___rarg(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_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___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_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_mkFst___closed__2; 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_mkFst___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__3(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_Lean_Tactic_FunInd_removeLamda___at_Lean_Tactic_FunInd_buildInductionBody___spec__12___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_substVarAfter___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -230,13 +238,17 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_assert LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__40___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, 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* l_List_get___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_cleanupAnnotations(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__5___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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__2; lean_object* l_Lean_stringToMessageData(lean_object*); 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, lean_object*, 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_12778____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__43___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__6___boxed(lean_object**); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__19; lean_object* l_Lean_Expr_getAppArgsN_loop(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__20(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*); @@ -246,9 +258,8 @@ extern lean_object* l_Lean_instInhabitedLevel; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_removeLamda___at_Lean_Tactic_FunInd_deriveUnaryInduction___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_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___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_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Tactic_FunInd_substVarAfter___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_Tactic_FunInd_motiveUniverseParamPos___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_mkFreshFVarId___at_Lean_Tactic_FunInd_deriveUnaryInduction___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_findRecursor___spec__6___rarg___lambda__13___closed__6; -static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecls_loop___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__6(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_string_dec_eq(lean_object*, lean_object*); @@ -257,11 +268,13 @@ LEAN_EXPORT lean_object* l_StateT_pure___at_Lean_Tactic_FunInd_buildInductionBod LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__9(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__37___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*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__3___closed__1; +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__14; static lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__18___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___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_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_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildInductionCase___spec__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_Tactic_FunInd_removeLamda___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Tactic_FunInd_buildInductionBody___spec__31(lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__2___closed__4; static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___closed__1; @@ -271,53 +284,49 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildI lean_object* l_instBEqProd___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__9___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__10(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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__1; +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__5; lean_object* l_Lean_CollectLevelParams_main(lean_object*, lean_object*); 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_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__3(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__26___lambda__8___closed__4; lean_object* l_Lean_Expr_appArg_x21(lean_object*); LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__40___lambda__2___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__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_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__37___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*); static lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__3; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___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_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__13; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__12(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__2(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_eqnInfoExt; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__5(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_11892____lambda__2___closed__23; -static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__5; lean_object* l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(lean_object*, lean_object*); lean_object* l_Lean_LocalDecl_index(lean_object*); LEAN_EXPORT lean_object* l_Lean_getConstInfoDefn___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_maskArray(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_deduplicateIHs___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_Tactic_FunInd_foldCalls___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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__9; extern lean_object* l_instInhabitedPUnit; 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_Lean_throwError___at_Lean_Tactic_FunInd_findRecursor___spec__1(lean_object*); 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*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__18; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__11___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_hasMVar(lean_object*); 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_EXPORT lean_object* l_Lean_mkFreshFVarId___at_Lean_Tactic_FunInd_buildInductionBody___spec__19(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__4___closed__2; static lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__8___closed__2; -static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__3; static lean_object* l_Lean_Tactic_FunInd_findRecursor___rarg___closed__1; static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__5___closed__3; +static lean_object* l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___closed__1; static lean_object* l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___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_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__5___boxed(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_11892____lambda__2___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatcherApp_Transform_0__Lean_Meta_MatcherApp_forallAltTelescope_x27___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___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_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__13(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Tactic_FunInd_buildInductionBody___spec__1(lean_object*); lean_object* l_Lean_Meta_isTypeCorrect(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_11892____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__8___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__2___closed__4; lean_object* l_Lean_Meta_forallBoundedTelescope___at___private_Lean_PrettyPrinter_Delaborator_FieldNotation_0__Lean_PrettyPrinter_Delaborator_generalizedFieldInfo___spec__3___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -325,20 +334,18 @@ LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunIn LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_deriveUnpackedInduction___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*); extern lean_object* l_Lean_Elab_Structural_eqnInfoExt; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_substVarAfter___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*); -static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__2; size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__10___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___boxed(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*); LEAN_EXPORT lean_object* l_panic___at_Lean_Tactic_FunInd_buildInductionBody___spec__10(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_11892____lambda__2___closed__21; +static lean_object* l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__3(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_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__28(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_Tactic_FunInd_collectIHs___lambda__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_substVarAfter___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_anyMUnsafe_any___at_Lean_Tactic_FunInd_collectIHs___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__3; -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__10; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkFst___lambda__1(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__16(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Tactic_FunInd_buildInductionBody___spec__11___rarg(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_Nat_foldRevM_loop___at_Lean_Tactic_FunInd_collectIHs___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -349,6 +356,8 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isPProdProjWithArgs(lean_object*, LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__13(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__23___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__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*); +static lean_object* l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__3; +extern lean_object* l_Lean_binductionOnSuffix; 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); @@ -356,12 +365,14 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductio LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__10___rarg(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_deriveUnaryInduction___spec__8___rarg(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_deriveUnaryInduction___spec__18___rarg___boxed(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_findRecursor___spec__4(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_assertIHs___spec__1___closed__1; 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_Tactic_FunInd_motiveUniverseParamPos___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_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__16___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); 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*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__3; lean_object* lean_st_ref_take(lean_object*, lean_object*); +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__5; 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_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); @@ -370,32 +381,34 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_collectI LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__16___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_panic___at_Lean_Meta_whnfCore_go___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__17(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_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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_EXPORT lean_object* l_Lean_Tactic_FunInd_mkSnd(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___closed__2; uint8_t lean_expr_eqv(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__9; lean_object* l_Lean_Meta_Match_Extension_getMatcherInfo_x3f(lean_object*, lean_object*); lean_object* l_List_set___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__14___closed__5; -static lean_object* l_Lean_Tactic_FunInd_isPProdProj___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__4(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_findRecursor___spec__6___rarg___lambda__13___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___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_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__6(lean_object*); lean_object* l_ReaderT_instMonadFunctor(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_findRecursor___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_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__2___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*); static lean_object* l_Lean_Tactic_FunInd_buildInductionCase___closed__2; +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__6___boxed(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__14(lean_object*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecls_loop___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__6___rarg(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_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__37___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_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__7; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__18(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___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_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__3___closed__3; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isPProdProjWithArgs___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__7___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__2; +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__9(lean_object*, 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_findRecursor___spec__7___rarg___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_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__16___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__26___lambda__8___closed__1; static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__2; @@ -404,7 +417,6 @@ LEAN_EXPORT lean_object* l_Lean_mkFreshId___at_Lean_Tactic_FunInd_buildInduction LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_collectIHs___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*); static lean_object* l_Lean_Tactic_FunInd_isPProdProjWithArgs___closed__1; 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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_collectIHs___spec__8(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_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_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_foldCalls___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*); @@ -413,13 +425,15 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstract LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__3(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_EXPORT uint8_t l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__40___lambda__2(lean_object*); lean_object* l_Lean_Meta_mkProjAndN(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_getPrefix(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__2___boxed(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__3___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__13___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__4___closed__2; -static lean_object* l_Lean_Tactic_FunInd_isPProdProj___closed__6; +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____closed__2; LEAN_EXPORT lean_object* l_Lean_log___at_Lean_Tactic_FunInd_buildInductionBody___spec__39(lean_object*, uint8_t, 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_12778____lambda__2___closed__11; static lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__40___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isPProdProj___boxed(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_deriveUnaryInduction___spec__17___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -440,6 +454,7 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionCase___boxed(lean_ob static lean_object* l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___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_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__10(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__37___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_collectIHs___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_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*); @@ -467,20 +482,22 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_collectI LEAN_EXPORT lean_object* l_Lean_Meta_getMatcherInfo_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__37___lambda__1(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_buildInductionBody___lambda__18___boxed(lean_object**); -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__9(lean_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_buildInductionBody___spec__35___rarg(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(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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____closed__1; +static lean_object* l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__3; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkSnd___lambda__1(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_foldCalls___spec__7(lean_object*); static lean_object* l_List_forIn_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__7___closed__3; lean_object* lean_array_to_list(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_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__2___closed__2; static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__11; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkFst___lambda__3(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*); uint8_t l_Lean_MessageData_hasTag(lean_object*, lean_object*); uint8_t l_Lean_Expr_hasLooseBVars(lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__20; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__5___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_foldCalls___lambda__14___closed__2; lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); @@ -499,7 +516,6 @@ LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMu LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__14(lean_object*, uint8_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_levelZero; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___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*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__7___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6(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*); @@ -509,8 +525,7 @@ static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__14___closed__1; static lean_object* l_panic___at_Lean_Tactic_FunInd_buildInductionBody___spec__6___closed__1; static lean_object* l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__3; lean_object* l_Lean_Meta_whnfD(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_isPProdProj___closed__2; -static lean_object* l_Lean_Tactic_FunInd_isPProdProj___closed__5; +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deduplicateIHs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___closed__1; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__29(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -531,10 +546,10 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInd LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_abstractIndependentMVars___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_Tactic_FunInd_findRecursor_err___rarg___closed__5; lean_object* l_Array_zipWithAux___at_Lean_Meta_MatcherApp_transform___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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_Tactic_FunInd_findRecursor___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_isPProdProj___closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___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*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__7; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkSnd___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__10___closed__1; lean_object* l_instHashableProd___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__9___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -546,53 +561,55 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryIn static lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__7___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__3(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_collectIHs(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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__12; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); lean_object* l_Lean_MVarId_clear(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__26___lambda__6___closed__4; static lean_object* l_Lean_getConstInfoDefn___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__2___closed__2; lean_object* l_Lean_Meta_ArgsPacker_curry(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_findRecursor___spec__6(lean_object*); LEAN_EXPORT lean_object* l_Lean_hasConst___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MapDeclarationExtension_find_x3f___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__3; 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*); extern lean_object* l_Lean_warningAsError; +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__22; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__11___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__18(lean_object*, lean_object*, lean_object*, lean_object*, size_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_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_buildInductionBody___spec__47___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, 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_foldCalls___spec__4___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); 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*, 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*); -static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__2; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__8___closed__3; static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Tactic_FunInd_buildInductionBody___spec__31___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_Tactic_FunInd_deriveUnaryInduction___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__3(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*); 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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__4; +static lean_object* l_Lean_Tactic_FunInd_mkSnd___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_maskArray___spec__1(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*); +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_substVarAfter___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__2___closed__3; -static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecls___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__5(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_Tactic_FunInd_buildInductionBody___boxed(lean_object*, lean_object*, lean_object*, lean_object*, 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_mkNot(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__9___rarg(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__26___lambda__6(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*, uint8_t, uint8_t, 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_11892____lambda__2___closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__3___boxed(lean_object**); static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___closed__1; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__43___lambda__2___closed__2; static lean_object* l_panic___at_Lean_Tactic_FunInd_collectIHs___spec__1___closed__1; static lean_object* l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__7; 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_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__10___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__2; +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7(lean_object*); +static lean_object* l_Lean_Tactic_FunInd_mkFst___closed__1; lean_object* l_Lean_LocalDecl_fvarId(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__6(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__14___rarg___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_foldCalls___spec__14(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_EXPORT lean_object* l_Array_mapIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -603,7 +620,9 @@ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Tactic_FunInd_foldCalls___s LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__1(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_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_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__38(lean_object*, size_t, size_t, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___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_Array_isEqvAux___at_Lean_Tactic_FunInd_findRecursor___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__43___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_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*); @@ -634,49 +653,55 @@ lean_object* l_Lean_MessageData_ofExpr(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__4(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_buildInductionBody___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*); LEAN_EXPORT lean_object* l_Lean_mkFreshId___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__13(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_11892____lambda__2___closed__26; 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*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_trySubstVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Core_instMonadQuotationCoreM; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatcherApp_Transform_0__Lean_Meta_MatcherApp_forallAltTelescope_x27___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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__26___lambda__6___closed__3; -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__1(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__21; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778_(lean_object*); +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__8; static lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__40___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*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__30(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__3; +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__26; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_findRecursor___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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 lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__8___boxed(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_deriveUnaryInduction___spec__12___boxed(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__2(lean_object*, uint8_t, 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__15(lean_object*); +lean_object* l_Lean_Expr_eta(lean_object*); lean_object* l_Lean_Meta_instantiateLambda___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___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*); static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__7___closed__6; +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__4; lean_object* l_Array_extract___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__6___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__8(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*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__18; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_findRecursor___rarg___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_Tactic_FunInd_mkSnd___lambda__1___closed__1; 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_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_findRecursor___spec__6___rarg___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_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__4(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_Tactic_FunInd_foldCalls___lambda__7___closed__5; static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__5(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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_Array_anyMUnsafe_any___at_Lean_Tactic_FunInd_foldCalls___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isFVarOf(lean_object*, lean_object*); +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_findRecursor___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__6___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_MatcherApp_inferMatchType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___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_forInUnsafe_loop___at_Lean_Tactic_FunInd_assertIHs___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_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__8; +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__6; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkSnd___lambda__2___boxed(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__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*); @@ -691,6 +716,7 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildI LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__13(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_instAddErrorMessageContextOfAddMessageContextOfMonad___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_findRecursor_err___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__4; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInduction(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___boxed__const__1; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__7___closed__1; @@ -705,16 +731,17 @@ static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___clo LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__14(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__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_object*, lean_object*); static lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__2___lambda__2___closed__1; +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatcherApp_Transform_0__Lean_Meta_MatcherApp_forallAltTelescope_x27___at_Lean_Tactic_FunInd_buildInductionBody___spec__42(lean_object*); 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*); lean_object* l_Lean_Meta_MatcherApp_arrowDomainsN(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_getConstInfo___at_Lean_Tactic_FunInd_buildInductionBody___spec__4___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__33(size_t, size_t, 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_findRecursor___spec__6___rarg___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*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__45___boxed(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__26___lambda__7___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__15(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_12778____lambda__2___closed__16; lean_object* l_Lean_Expr_app___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__9(lean_object*); static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__5___closed__6; @@ -722,22 +749,27 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__9(uin LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__5___boxed(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_EXPORT lean_object* l_Lean_Meta_withLocalDecls_loop___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__6___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_mkFst___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_findRecursor___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*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__11; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__7___boxed__const__1; static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__6; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Tactic_FunInd_buildInductionBody___spec__1___rarg___lambda__1(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_12778____lambda__2___closed__25; lean_object* l_Lean_mkApp3(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__5___closed__1; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildInductionCase___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_drop___rarg(lean_object*, lean_object*); extern lean_object* l_Lean_brecOnSuffix; +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___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_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__12(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_log___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_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Tactic_FunInd_collectIHs___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*); 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*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3(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_Match_Match_0__Lean_Meta_Match_getUElimPos_x3f___spec__2(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_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__16___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_panic___at_Lean_Tactic_FunInd_buildInductionBody___spec__10___closed__1; @@ -748,23 +780,18 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__1___b LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__11(uint8_t, 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_Lean_Tactic_FunInd_buildInductionBody___lambda__19(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*); -static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__2; static lean_object* l_panic___at_Lean_Tactic_FunInd_buildInductionBody___spec__6___closed__2; -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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*); 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_Lean_Tactic_FunInd_collectIHs___lambda__6(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_Tactic_FunInd_foldCalls___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_MVarId_assign___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__3(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_11892____lambda__2___closed__25; 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_Meta_Match_MatcherApp_Transform_0__Lean_Meta_MatcherApp_forallAltTelescope_x27___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___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_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__15___rarg(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_deriveUnaryInduction___spec__18___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__2___boxed(lean_object**); lean_object* l_Lean_indentExpr(lean_object*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__24; 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_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__6___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__15(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -777,11 +804,13 @@ lean_object* l_Lean_FVarId_getUserName(lean_object*, lean_object*, lean_object*, lean_object* l_StateRefT_x27_lift(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*); +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__3; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__8(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_12778____lambda__2___closed__6; lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__23; LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__20___rarg(lean_object*, lean_object*, uint8_t, 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__41___boxed(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_11892____lambda__2___closed__9; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__7(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_Lean_Tactic_FunInd_collectIHs___lambda__5___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_maskArray___rarg(lean_object*, lean_object*); @@ -789,9 +818,12 @@ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Tactic_FunInd_collectIHs___ lean_object* l_Lean_mkFreshFVarId___at___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux_process___spec__1___rarg(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_object* l_Lean_Meta_MatcherApp_toExpr(lean_object*); +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__2; LEAN_EXPORT lean_object* l_Lean_hasConst___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_foldCalls___lambda__7___closed__4; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkFst___lambda__2(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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecls___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_foldCalls___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*); @@ -800,46 +832,50 @@ extern lean_object* l_Lean_Expr_instHashable; lean_object* l___private_Lean_Meta_Tactic_Cleanup_0__Lean_Meta_cleanupCore(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Tactic_FunInd_collectIHs___spec__6(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__8(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_findRecursor___spec__7___rarg___lambda__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_findRecursor___spec__7___rarg___lambda__15___closed__7; LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Tactic_FunInd_buildInductionBody___spec__8(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__8(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_findRecursor(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_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___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_removeLamda___at_Lean_Tactic_FunInd_buildInductionBody___spec__12(lean_object*); lean_object* l_Lean_Expr_getAppFn(lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__11(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__27(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_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__6___rarg___boxed(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___boxed(lean_object*, lean_object*, lean_object*, 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__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Array_indexOfAux___at_Lean_MetavarContext_setMVarUserName___spec__3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__15___rarg(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_findRecursor___spec__4(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__26___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_Tactic_FunInd_cleanPackedArgs___lambda__4___closed__3; 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_collectIHs___lambda__5(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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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_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_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* l_Lean_mkArrow(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__1; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__5(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___boxed(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__26(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_instantiateMVarsIfMVarApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_abstractIndependentMVars___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_Lean_Tactic_FunInd_mkFst(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); lean_object* l_Array_ofSubarray___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___closed__2; 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* l_Array_back___rarg(lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__1; static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__5; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__6___closed__2; lean_object* l_List_reverse___rarg(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_motiveUniverseParamPos(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_mkFreshId___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___lambda__1(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_foldCalls___spec__4___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -852,15 +888,14 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__2(lean_o LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_deriveUnpackedInduction___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_cleanPackedArgs___lambda__5___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___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_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__1; +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__10(lean_object*, lean_object*, lean_object*); 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_EXPORT lean_object* l_Lean_instantiateMVars___at_Lean_Tactic_FunInd_buildInductionCase___spec__2(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___closed__4; 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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__17; -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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* l_Lean_Expr_constName(lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__13; static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__14___closed__3; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__10(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_buildInductionBody___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*, lean_object*, lean_object*); @@ -869,7 +904,7 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_maskArray___rarg___boxed(lean_obje 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_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___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_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkSnd___lambda__2(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__40___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_foldCalls___lambda__3___closed__6; lean_object* lean_array_uget(lean_object*, size_t); @@ -877,14 +912,14 @@ LEAN_EXPORT lean_object* l_Lean_mkFreshFVarId___at_Lean_Tactic_FunInd_buildInduc lean_object* l_Lean_Expr_fvar___override(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__24___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___closed__1; -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__4; 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_forInUnsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__43___boxed(lean_object*, lean_object*, lean_object*, lean_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_buildInductionBody___spec__44(lean_object*, size_t, size_t, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_isPProdProj___closed__3; +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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_EXPORT lean_object* l_Array_forInUnsafe_loop___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_EXPORT uint8_t l_Lean_Tactic_FunInd_isFunInductName___lambda__1(lean_object*); static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Tactic_FunInd_mkLambdaFVarsMasked___spec__1___closed__1; +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___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* l_instInhabitedOfMonad___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__14___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -907,14 +942,11 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_removeLamda(lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__7(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_collectIHs___spec__4(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_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____closed__2; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__8___closed__1; static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__4___closed__4; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___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*); static lean_object* l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__6; -static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__4; lean_object* l_Lean_Meta_Match_MatcherInfo_getNumDiscrEqs(lean_object*); -static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_findRecursor___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__11___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__2___closed__1; @@ -938,6 +970,7 @@ lean_object* lean_array_get_size(lean_object*); static lean_object* l_Lean_getConstInfo___at_Lean_Tactic_FunInd_buildInductionBody___spec__4___closed__3; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__11___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); 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*); +static lean_object* l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__4; lean_object* l_Lean_Meta_Match_forallAltTelescope___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_foldCalls___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_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__5___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -945,11 +978,9 @@ static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_bui LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, 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_103_(uint8_t, uint8_t); lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); extern lean_object* l_Lean_Meta_instAddMessageContextMetaM; static lean_object* l_List_forIn_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__7___closed__2; -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__14; uint8_t lean_usize_dec_lt(size_t, size_t); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__4___closed__4; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__14(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*); @@ -969,12 +1000,14 @@ static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualI uint8_t l_Lean_Expr_isConst(lean_object*); uint8_t l_Lean_Exception_isRuntime(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___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_Tactic_FunInd_mkFst___lambda__1___closed__4; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__9___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Tactic_FunInd_substVarAfter___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_beta(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_deriveUnpackedInduction___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* l_Lean_mkApp5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_findRecursor___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_substVarAfter___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* l_ReaderT_instMonadExceptOf___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__17___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -988,11 +1021,14 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__11(lean_object static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__2___closed__1; static lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__8___closed__3; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Tactic_FunInd_maskArray___spec__1___rarg(lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__6(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); lean_object* l_Lean_Expr_mvarId_x21(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__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_Tactic_FunInd_foldCalls___lambda__7___closed__3; lean_object* l_Lean_InductiveVal_numCtors(lean_object*); +static lean_object* l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__7(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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__19; static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__5___closed__2; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_buildInductionBody___spec__47(uint8_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_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__25(lean_object*); @@ -1000,16 +1036,19 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__4(uin static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__2; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); lean_object* l_Lean_MessageData_ofName(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892_(lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__26___lambda__6___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody(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_Tactic_FunInd_mkFst___lambda__3___boxed(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_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__8; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__16(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_Tactic_FunInd_foldCalls___lambda__12___closed__1; 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_Tactic_FunInd_deriveUnaryInduction___lambda__7(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_findRecursor_err___rarg___closed__13; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_motiveUniverseParamPos___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_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___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_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___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_Lean_Tactic_FunInd_isFunInductName___lambda__2___boxed(lean_object*, lean_object*, lean_object*); @@ -1017,6 +1056,7 @@ static lean_object* l_Lean_Tactic_FunInd_foldCalls___lambda__11___closed__1; static lean_object* l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__14; 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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__8(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*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___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*); @@ -1024,6 +1064,8 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryIn LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___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_Tactic_FunInd_findRecursor_err(lean_object*); lean_object* l_Lean_mkFreshFVarId___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___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*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___closed__2; lean_object* l_List_toArrayAux___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__40(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1033,6 +1075,7 @@ static lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__5___closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldCalls___spec__10___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Nat_foldRevM_loop___at_Lean_Tactic_FunInd_collectIHs___spec__7(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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__1; 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: { @@ -1157,7 +1200,53 @@ lean_dec(x_1); return x_4; } } -static lean_object* _init_l_Lean_Tactic_FunInd_isPProdProj___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("And", 3); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("left", 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__1; +x_2 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__2; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(1u); +x_2 = lean_mk_empty_array_with_capacity(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkFst___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_Tactic_FunInd_mkFst___lambda__1___closed__4; +x_9 = lean_array_push(x_8, x_1); +x_10 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__3; +x_11 = l_Lean_Meta_mkAppM(x_10, x_9, x_3, x_4, x_5, x_6, x_7); +return x_11; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__1() { _start: { lean_object* x_1; @@ -1165,7 +1254,7 @@ x_1 = lean_mk_string_from_bytes("PProd", 5); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_isPProdProj___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__2() { _start: { lean_object* x_1; @@ -1173,17 +1262,337 @@ x_1 = lean_mk_string_from_bytes("fst", 3); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_isPProdProj___closed__3() { +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__1; +x_2 = l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__2; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkFst___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_Tactic_FunInd_mkFst___lambda__1___closed__4; +x_9 = lean_array_push(x_8, x_1); +x_10 = l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__3; +x_11 = l_Lean_Meta_mkAppM(x_10, x_9, x_3, x_4, x_5, x_6, x_7); +return x_11; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Cannot project out of", 21); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("\nof Type", 8); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkFst___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; 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_indentExpr(x_1); +x_10 = l_Lean_Tactic_FunInd_mkFst___lambda__3___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_Lean_Tactic_FunInd_mkFst___lambda__3___closed__4; +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 = l_Lean_indentExpr(x_2); +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_Tactic_FunInd_removeLamda___rarg___lambda__2___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 = l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(x_17, x_4, x_5, x_6, x_7, x_8); +return x_18; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkFst___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_mkFst___lambda__2___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkFst(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; uint8_t 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); +lean_inc(x_11); +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_Expr_cleanupAnnotations(x_14); +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 = l_Lean_Tactic_FunInd_mkFst___lambda__3(x_1, x_11, x_18, 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_19; +} +else +{ +lean_object* x_20; uint8_t x_21; +x_20 = l_Lean_Expr_appFnCleanup(x_16, 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); +x_22 = lean_box(0); +x_23 = l_Lean_Tactic_FunInd_mkFst___lambda__3(x_1, x_11, x_22, 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_23; +} +else +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = l_Lean_Expr_appFnCleanup(x_20, lean_box(0)); +x_25 = l_Lean_Tactic_FunInd_mkFst___closed__1; +x_26 = l_Lean_Expr_isConstOf(x_24, x_25); +if (x_26 == 0) +{ +lean_object* x_27; uint8_t x_28; +x_27 = l_Lean_Tactic_FunInd_mkFst___closed__2; +x_28 = l_Lean_Expr_isConstOf(x_24, x_27); +lean_dec(x_24); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = lean_box(0); +x_30 = l_Lean_Tactic_FunInd_mkFst___lambda__3(x_1, x_11, x_29, 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_30; +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_11); +x_31 = lean_box(0); +x_32 = l_Lean_Tactic_FunInd_mkFst___lambda__2(x_1, x_31, x_2, x_3, x_4, x_5, x_15); +return x_32; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_24); +lean_dec(x_11); +x_33 = lean_box(0); +x_34 = l_Lean_Tactic_FunInd_mkFst___lambda__1(x_1, x_33, x_2, x_3, x_4, x_5, x_15); +return x_34; +} +} +} +} +else +{ +uint8_t x_35; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_35 = !lean_is_exclusive(x_10); +if (x_35 == 0) +{ +return x_10; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_10, 0); +x_37 = lean_ctor_get(x_10, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_10); +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_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_39 = !lean_is_exclusive(x_7); +if (x_39 == 0) +{ +return x_7; +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_7, 0); +x_41 = lean_ctor_get(x_7, 1); +lean_inc(x_41); +lean_inc(x_40); +lean_dec(x_7); +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_Tactic_FunInd_mkFst___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_mkFst___lambda__1(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_Lean_Tactic_FunInd_mkFst___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_Tactic_FunInd_mkFst___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_Lean_Tactic_FunInd_mkFst___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_mkFst___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); +lean_dec(x_4); +lean_dec(x_3); +return x_9; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkSnd___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("right", 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkSnd___lambda__1___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Tactic_FunInd_isPProdProj___closed__1; -x_2 = l_Lean_Tactic_FunInd_isPProdProj___closed__2; +x_1 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__1; +x_2 = l_Lean_Tactic_FunInd_mkSnd___lambda__1___closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Tactic_FunInd_isPProdProj___closed__4() { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkSnd___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_Tactic_FunInd_mkFst___lambda__1___closed__4; +x_9 = lean_array_push(x_8, x_1); +x_10 = l_Lean_Tactic_FunInd_mkSnd___lambda__1___closed__2; +x_11 = l_Lean_Meta_mkAppM(x_10, x_9, x_3, x_4, x_5, x_6, x_7); +return x_11; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__1() { _start: { lean_object* x_1; @@ -1191,36 +1600,226 @@ x_1 = lean_mk_string_from_bytes("snd", 3); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_isPProdProj___closed__5() { +static lean_object* _init_l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Tactic_FunInd_isPProdProj___closed__1; -x_2 = l_Lean_Tactic_FunInd_isPProdProj___closed__4; +x_1 = l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__1; +x_2 = l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Tactic_FunInd_isPProdProj___closed__6() { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkSnd___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_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(1u); -x_2 = lean_mk_empty_array_with_capacity(x_1); -return x_2; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_8 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; +x_9 = lean_array_push(x_8, x_1); +x_10 = l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__2; +x_11 = l_Lean_Meta_mkAppM(x_10, x_9, x_3, x_4, x_5, x_6, x_7); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkSnd(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; uint8_t 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); +lean_inc(x_11); +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_Expr_cleanupAnnotations(x_14); +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 = l_Lean_Tactic_FunInd_mkFst___lambda__3(x_1, x_11, x_18, 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_19; +} +else +{ +lean_object* x_20; uint8_t x_21; +x_20 = l_Lean_Expr_appFnCleanup(x_16, 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); +x_22 = lean_box(0); +x_23 = l_Lean_Tactic_FunInd_mkFst___lambda__3(x_1, x_11, x_22, 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_23; +} +else +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = l_Lean_Expr_appFnCleanup(x_20, lean_box(0)); +x_25 = l_Lean_Tactic_FunInd_mkFst___closed__1; +x_26 = l_Lean_Expr_isConstOf(x_24, x_25); +if (x_26 == 0) +{ +lean_object* x_27; uint8_t x_28; +x_27 = l_Lean_Tactic_FunInd_mkFst___closed__2; +x_28 = l_Lean_Expr_isConstOf(x_24, x_27); +lean_dec(x_24); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = lean_box(0); +x_30 = l_Lean_Tactic_FunInd_mkFst___lambda__3(x_1, x_11, x_29, 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_30; +} +else +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_11); +x_31 = lean_box(0); +x_32 = l_Lean_Tactic_FunInd_mkSnd___lambda__2(x_1, x_31, x_2, x_3, x_4, x_5, x_15); +return x_32; +} +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_24); +lean_dec(x_11); +x_33 = lean_box(0); +x_34 = l_Lean_Tactic_FunInd_mkSnd___lambda__1(x_1, x_33, x_2, x_3, x_4, x_5, x_15); +return x_34; +} +} +} +} +else +{ +uint8_t x_35; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_35 = !lean_is_exclusive(x_10); +if (x_35 == 0) +{ +return x_10; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_10, 0); +x_37 = lean_ctor_get(x_10, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_10); +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_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_39 = !lean_is_exclusive(x_7); +if (x_39 == 0) +{ +return x_7; +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_7, 0); +x_41 = lean_ctor_get(x_7, 1); +lean_inc(x_41); +lean_inc(x_40); +lean_dec(x_7); +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_Tactic_FunInd_mkSnd___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_mkSnd___lambda__1(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_Lean_Tactic_FunInd_mkSnd___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_Tactic_FunInd_mkSnd___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_Lean_Tactic_FunInd_isPProdProj(lean_object* x_1, lean_object* x_2, 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_isPProdProj___closed__3; +x_9 = l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__3; 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; uint8_t x_13; -x_12 = l_Lean_Tactic_FunInd_isPProdProj___closed__5; +x_12 = l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__2; x_13 = l_Lean_Expr_isAppOfArity(x_3, x_12, x_10); if (x_13 == 0) { @@ -1306,348 +1905,340 @@ lean_dec(x_21); x_30 = !lean_is_exclusive(x_22); if (x_30 == 0) { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_object* x_31; lean_object* x_32; x_31 = lean_ctor_get(x_22, 0); -x_32 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; -x_33 = lean_array_push(x_32, x_31); -x_34 = l_Lean_Meta_mkAppM(x_12, x_33, x_4, x_5, x_6, x_7, x_29); -if (lean_obj_tag(x_34) == 0) +x_32 = l_Lean_Tactic_FunInd_mkSnd(x_31, x_4, x_5, x_6, x_7, x_29); +if (lean_obj_tag(x_32) == 0) { -uint8_t x_35; -x_35 = !lean_is_exclusive(x_34); -if (x_35 == 0) +uint8_t x_33; +x_33 = !lean_is_exclusive(x_32); +if (x_33 == 0) { -lean_object* x_36; -x_36 = lean_ctor_get(x_34, 0); -lean_ctor_set(x_22, 0, x_36); -lean_ctor_set(x_34, 0, x_22); -return x_34; +lean_object* x_34; +x_34 = lean_ctor_get(x_32, 0); +lean_ctor_set(x_22, 0, x_34); +lean_ctor_set(x_32, 0, x_22); +return x_32; } else { -lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_37 = lean_ctor_get(x_34, 0); -x_38 = lean_ctor_get(x_34, 1); -lean_inc(x_38); -lean_inc(x_37); -lean_dec(x_34); -lean_ctor_set(x_22, 0, x_37); -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_22); -lean_ctor_set(x_39, 1, x_38); -return x_39; +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_32, 0); +x_36 = lean_ctor_get(x_32, 1); +lean_inc(x_36); +lean_inc(x_35); +lean_dec(x_32); +lean_ctor_set(x_22, 0, x_35); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_22); +lean_ctor_set(x_37, 1, x_36); +return x_37; } } else { -uint8_t x_40; +uint8_t x_38; lean_free_object(x_22); -x_40 = !lean_is_exclusive(x_34); -if (x_40 == 0) +x_38 = !lean_is_exclusive(x_32); +if (x_38 == 0) { -return x_34; +return x_32; } 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; +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_32, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_32); +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_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_44 = lean_ctor_get(x_22, 0); -lean_inc(x_44); +lean_object* x_42; lean_object* x_43; +x_42 = lean_ctor_get(x_22, 0); +lean_inc(x_42); lean_dec(x_22); -x_45 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; -x_46 = lean_array_push(x_45, x_44); -x_47 = l_Lean_Meta_mkAppM(x_12, x_46, x_4, x_5, x_6, x_7, x_29); -if (lean_obj_tag(x_47) == 0) +x_43 = l_Lean_Tactic_FunInd_mkSnd(x_42, x_4, x_5, x_6, x_7, x_29); +if (lean_obj_tag(x_43) == 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); -if (lean_is_exclusive(x_47)) { - lean_ctor_release(x_47, 0); - lean_ctor_release(x_47, 1); - x_50 = x_47; +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_43, 0); +lean_inc(x_44); +x_45 = lean_ctor_get(x_43, 1); +lean_inc(x_45); +if (lean_is_exclusive(x_43)) { + lean_ctor_release(x_43, 0); + lean_ctor_release(x_43, 1); + x_46 = x_43; } else { - lean_dec_ref(x_47); - x_50 = lean_box(0); + lean_dec_ref(x_43); + x_46 = lean_box(0); } -x_51 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_51, 0, x_48); -if (lean_is_scalar(x_50)) { - x_52 = lean_alloc_ctor(0, 2, 0); +x_47 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_47, 0, x_44); +if (lean_is_scalar(x_46)) { + x_48 = lean_alloc_ctor(0, 2, 0); } else { - x_52 = x_50; + x_48 = x_46; } -lean_ctor_set(x_52, 0, x_51); -lean_ctor_set(x_52, 1, x_49); -return x_52; +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_45); +return x_48; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_53 = lean_ctor_get(x_47, 0); -lean_inc(x_53); -x_54 = lean_ctor_get(x_47, 1); -lean_inc(x_54); -if (lean_is_exclusive(x_47)) { - lean_ctor_release(x_47, 0); - lean_ctor_release(x_47, 1); - x_55 = x_47; +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_49 = lean_ctor_get(x_43, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_43, 1); +lean_inc(x_50); +if (lean_is_exclusive(x_43)) { + lean_ctor_release(x_43, 0); + lean_ctor_release(x_43, 1); + x_51 = x_43; } else { - lean_dec_ref(x_47); - x_55 = lean_box(0); + lean_dec_ref(x_43); + x_51 = lean_box(0); } -if (lean_is_scalar(x_55)) { - x_56 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_51)) { + x_52 = lean_alloc_ctor(1, 2, 0); } else { - x_56 = x_55; + x_52 = x_51; } -lean_ctor_set(x_56, 0, x_53); -lean_ctor_set(x_56, 1, x_54); -return x_56; +lean_ctor_set(x_52, 0, x_49); +lean_ctor_set(x_52, 1, x_50); +return x_52; } } } } else { -uint8_t x_57; +uint8_t x_53; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -x_57 = !lean_is_exclusive(x_21); -if (x_57 == 0) +x_53 = !lean_is_exclusive(x_21); +if (x_53 == 0) { return x_21; } else { -lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_58 = lean_ctor_get(x_21, 0); -x_59 = lean_ctor_get(x_21, 1); -lean_inc(x_59); -lean_inc(x_58); +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_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; +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_61; lean_object* x_62; -x_61 = l_Lean_Expr_appArg_x21(x_3); +lean_object* x_57; lean_object* x_58; +x_57 = l_Lean_Expr_appArg_x21(x_3); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -x_62 = l_Lean_Tactic_FunInd_isPProdProj(x_1, x_2, x_61, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_61); -if (lean_obj_tag(x_62) == 0) +x_58 = l_Lean_Tactic_FunInd_isPProdProj(x_1, x_2, x_57, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_57); +if (lean_obj_tag(x_58) == 0) { -lean_object* x_63; -x_63 = lean_ctor_get(x_62, 0); -lean_inc(x_63); -if (lean_obj_tag(x_63) == 0) +lean_object* x_59; +x_59 = lean_ctor_get(x_58, 0); +lean_inc(x_59); +if (lean_obj_tag(x_59) == 0) { -uint8_t x_64; +uint8_t x_60; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -x_64 = !lean_is_exclusive(x_62); -if (x_64 == 0) +x_60 = !lean_is_exclusive(x_58); +if (x_60 == 0) { -lean_object* x_65; lean_object* x_66; -x_65 = lean_ctor_get(x_62, 0); -lean_dec(x_65); -x_66 = lean_box(0); -lean_ctor_set(x_62, 0, x_66); -return x_62; +lean_object* x_61; lean_object* x_62; +x_61 = lean_ctor_get(x_58, 0); +lean_dec(x_61); +x_62 = lean_box(0); +lean_ctor_set(x_58, 0, x_62); +return x_58; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_67 = lean_ctor_get(x_62, 1); -lean_inc(x_67); -lean_dec(x_62); -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; +lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_63 = lean_ctor_get(x_58, 1); +lean_inc(x_63); +lean_dec(x_58); +x_64 = lean_box(0); +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_70; uint8_t x_71; -x_70 = lean_ctor_get(x_62, 1); -lean_inc(x_70); -lean_dec(x_62); -x_71 = !lean_is_exclusive(x_63); -if (x_71 == 0) +lean_object* x_66; uint8_t x_67; +x_66 = lean_ctor_get(x_58, 1); +lean_inc(x_66); +lean_dec(x_58); +x_67 = !lean_is_exclusive(x_59); +if (x_67 == 0) { -lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; -x_72 = lean_ctor_get(x_63, 0); -x_73 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; -x_74 = lean_array_push(x_73, x_72); -x_75 = l_Lean_Meta_mkAppM(x_9, x_74, x_4, x_5, x_6, x_7, x_70); -if (lean_obj_tag(x_75) == 0) +lean_object* x_68; lean_object* x_69; +x_68 = lean_ctor_get(x_59, 0); +x_69 = l_Lean_Tactic_FunInd_mkFst(x_68, x_4, x_5, x_6, x_7, x_66); +if (lean_obj_tag(x_69) == 0) { -uint8_t x_76; -x_76 = !lean_is_exclusive(x_75); -if (x_76 == 0) +uint8_t x_70; +x_70 = !lean_is_exclusive(x_69); +if (x_70 == 0) { -lean_object* x_77; -x_77 = lean_ctor_get(x_75, 0); -lean_ctor_set(x_63, 0, x_77); -lean_ctor_set(x_75, 0, x_63); -return x_75; +lean_object* x_71; +x_71 = lean_ctor_get(x_69, 0); +lean_ctor_set(x_59, 0, x_71); +lean_ctor_set(x_69, 0, x_59); +return x_69; } else { -lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_78 = lean_ctor_get(x_75, 0); -x_79 = lean_ctor_get(x_75, 1); -lean_inc(x_79); -lean_inc(x_78); -lean_dec(x_75); -lean_ctor_set(x_63, 0, x_78); -x_80 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_80, 0, x_63); -lean_ctor_set(x_80, 1, x_79); -return x_80; +lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_72 = lean_ctor_get(x_69, 0); +x_73 = lean_ctor_get(x_69, 1); +lean_inc(x_73); +lean_inc(x_72); +lean_dec(x_69); +lean_ctor_set(x_59, 0, x_72); +x_74 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_74, 0, x_59); +lean_ctor_set(x_74, 1, x_73); +return x_74; } } else { -uint8_t x_81; -lean_free_object(x_63); -x_81 = !lean_is_exclusive(x_75); -if (x_81 == 0) +uint8_t x_75; +lean_free_object(x_59); +x_75 = !lean_is_exclusive(x_69); +if (x_75 == 0) { -return x_75; +return x_69; } else { -lean_object* x_82; lean_object* x_83; lean_object* x_84; -x_82 = lean_ctor_get(x_75, 0); -x_83 = lean_ctor_get(x_75, 1); -lean_inc(x_83); -lean_inc(x_82); -lean_dec(x_75); -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; +lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_76 = lean_ctor_get(x_69, 0); +x_77 = lean_ctor_get(x_69, 1); +lean_inc(x_77); +lean_inc(x_76); +lean_dec(x_69); +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_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_85 = lean_ctor_get(x_63, 0); -lean_inc(x_85); -lean_dec(x_63); -x_86 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; -x_87 = lean_array_push(x_86, x_85); -x_88 = l_Lean_Meta_mkAppM(x_9, x_87, x_4, x_5, x_6, x_7, x_70); -if (lean_obj_tag(x_88) == 0) +lean_object* x_79; lean_object* x_80; +x_79 = lean_ctor_get(x_59, 0); +lean_inc(x_79); +lean_dec(x_59); +x_80 = l_Lean_Tactic_FunInd_mkFst(x_79, x_4, x_5, x_6, x_7, x_66); +if (lean_obj_tag(x_80) == 0) { -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; +lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; +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_88); - x_91 = lean_box(0); + lean_dec_ref(x_80); + x_83 = lean_box(0); } -x_92 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_92, 0, x_89); -if (lean_is_scalar(x_91)) { - x_93 = lean_alloc_ctor(0, 2, 0); +x_84 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_84, 0, x_81); +if (lean_is_scalar(x_83)) { + x_85 = lean_alloc_ctor(0, 2, 0); } else { - x_93 = x_91; + x_85 = x_83; } -lean_ctor_set(x_93, 0, x_92); -lean_ctor_set(x_93, 1, x_90); -return x_93; +lean_ctor_set(x_85, 0, x_84); +lean_ctor_set(x_85, 1, x_82); +return x_85; } else { -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_94 = lean_ctor_get(x_88, 0); -lean_inc(x_94); -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; +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +x_86 = lean_ctor_get(x_80, 0); +lean_inc(x_86); +x_87 = lean_ctor_get(x_80, 1); +lean_inc(x_87); +if (lean_is_exclusive(x_80)) { + lean_ctor_release(x_80, 0); + lean_ctor_release(x_80, 1); + x_88 = x_80; } else { - lean_dec_ref(x_88); - x_96 = lean_box(0); + lean_dec_ref(x_80); + x_88 = lean_box(0); } -if (lean_is_scalar(x_96)) { - x_97 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_88)) { + x_89 = lean_alloc_ctor(1, 2, 0); } else { - x_97 = x_96; + x_89 = x_88; } -lean_ctor_set(x_97, 0, x_94); -lean_ctor_set(x_97, 1, x_95); -return x_97; +lean_ctor_set(x_89, 0, x_86); +lean_ctor_set(x_89, 1, x_87); +return x_89; } } } } else { -uint8_t x_98; +uint8_t x_90; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -x_98 = !lean_is_exclusive(x_62); -if (x_98 == 0) +x_90 = !lean_is_exclusive(x_58); +if (x_90 == 0) { -return x_62; +return x_58; } else { -lean_object* x_99; lean_object* x_100; lean_object* x_101; -x_99 = lean_ctor_get(x_62, 0); -x_100 = lean_ctor_get(x_62, 1); -lean_inc(x_100); -lean_inc(x_99); -lean_dec(x_62); -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; +lean_object* x_91; lean_object* x_92; lean_object* x_93; +x_91 = lean_ctor_get(x_58, 0); +x_92 = lean_ctor_get(x_58, 1); +lean_inc(x_92); +lean_inc(x_91); +lean_dec(x_58); +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; } } } @@ -1833,12 +2424,12 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isPProdProjWithArgs(lean_object* x { lean_object* x_9; lean_object* x_10; uint8_t x_11; x_9 = l_Lean_Tactic_FunInd_isPProdProjWithArgs___closed__1; -x_10 = l_Lean_Tactic_FunInd_isPProdProj___closed__3; +x_10 = l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__3; x_11 = l_Lean_Expr_isAppOf(x_3, x_10); if (x_11 == 0) { lean_object* x_12; uint8_t x_13; -x_12 = l_Lean_Tactic_FunInd_isPProdProj___closed__5; +x_12 = l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__2; x_13 = l_Lean_Expr_isAppOf(x_3, x_12); if (x_13 == 0) { @@ -2930,7 +3521,7 @@ lean_inc(x_14); x_15 = lean_ctor_get(x_13, 1); lean_inc(x_15); lean_dec(x_13); -x_16 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_16 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_17 = lean_array_push(x_16, x_6); x_18 = 0; x_19 = 1; @@ -2989,7 +3580,7 @@ lean_inc(x_14); x_15 = lean_ctor_get(x_13, 1); lean_inc(x_15); lean_dec(x_13); -x_16 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_16 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_17 = lean_array_push(x_16, x_6); x_18 = 0; x_19 = 1; @@ -3060,7 +3651,7 @@ static lean_object* _init_l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__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; x_1 = l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__1; x_2 = l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__2; -x_3 = lean_unsigned_to_nat(319u); +x_3 = lean_unsigned_to_nat(345u); x_4 = lean_unsigned_to_nat(4u); x_5 = l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -4829,77 +5420,80 @@ return x_2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldCalls___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; uint8_t x_12; +lean_object* x_11; lean_object* x_12; uint8_t x_13; x_11 = l_Lean_Expr_getAppFn(x_5); -x_12 = l_Lean_Expr_isFVar(x_11); -if (x_12 == 0) +lean_inc(x_11); +x_12 = l_Lean_Expr_eta(x_11); +x_13 = l_Lean_Expr_isFVar(x_12); +lean_dec(x_12); +if (x_13 == 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; lean_object* x_25; lean_object* x_26; uint8_t x_27; +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; uint8_t x_28; lean_dec(x_5); lean_dec(x_4); lean_dec(x_1); -x_13 = l_Lean_MessageData_ofExpr(x_2); -x_14 = l_Lean_Tactic_FunInd_foldCalls___lambda__14___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_Tactic_FunInd_foldCalls___lambda__14___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 = l_Lean_MessageData_ofExpr(x_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_Tactic_FunInd_foldCalls___lambda__14___closed__6; -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_MessageData_ofExpr(x_11); -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_Tactic_FunInd_removeLamda___rarg___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_Meta_mkSimpCongrTheorem___spec__4(x_25, x_6, x_7, x_8, x_9, x_10); +x_14 = l_Lean_MessageData_ofExpr(x_2); +x_15 = l_Lean_Tactic_FunInd_foldCalls___lambda__14___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_Tactic_FunInd_foldCalls___lambda__14___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 = l_Lean_MessageData_ofExpr(x_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_Tactic_FunInd_foldCalls___lambda__14___closed__6; +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_MessageData_ofExpr(x_11); +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_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +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_mkSimpCongrTheorem___spec__4(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); -x_27 = !lean_is_exclusive(x_26); -if (x_27 == 0) +x_28 = !lean_is_exclusive(x_27); +if (x_28 == 0) { -return x_26; +return x_27; } 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_object* x_29; lean_object* x_30; lean_object* x_31; +x_29 = lean_ctor_get(x_27, 0); +x_30 = lean_ctor_get(x_27, 1); +lean_inc(x_30); 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; +lean_dec(x_27); +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_31; lean_object* x_32; +lean_object* x_32; lean_object* x_33; lean_dec(x_11); lean_dec(x_3); lean_dec(x_2); -x_31 = lean_box(0); -x_32 = l_Lean_Tactic_FunInd_foldCalls___lambda__13(x_5, x_1, x_4, x_31, x_6, x_7, x_8, x_9, x_10); +x_32 = lean_box(0); +x_33 = l_Lean_Tactic_FunInd_foldCalls___lambda__13(x_5, x_1, x_4, x_32, 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_32; +return x_33; } } } @@ -4936,7 +5530,7 @@ static lean_object* _init_l_Lean_Tactic_FunInd_foldCalls___lambda__16___closed__ 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_foldCalls___lambda__3___closed__1; x_2 = l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__2; -x_3 = lean_unsigned_to_nat(243u); +x_3 = lean_unsigned_to_nat(269u); x_4 = lean_unsigned_to_nat(43u); x_5 = l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -4976,6 +5570,7 @@ return x_16; else { lean_object* x_17; lean_object* x_18; uint8_t x_19; +lean_dec(x_1); x_17 = lean_ctor_get(x_13, 0); lean_inc(x_17); lean_dec(x_13); @@ -4992,6 +5587,7 @@ lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); +lean_inc(x_20); x_22 = lean_infer_type(x_20, x_7, x_8, x_9, x_10, x_18); if (lean_obj_tag(x_22) == 0) { @@ -5019,7 +5615,7 @@ lean_inc(x_3); x_28 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_foldCalls___lambda__14), 10, 3); lean_closure_set(x_28, 0, x_3); lean_closure_set(x_28, 1, x_26); -lean_closure_set(x_28, 2, x_1); +lean_closure_set(x_28, 2, x_20); x_29 = 0; lean_inc(x_10); lean_inc(x_9); @@ -5229,6 +5825,7 @@ else uint8_t x_69; lean_free_object(x_17); lean_dec(x_21); +lean_dec(x_20); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -5236,7 +5833,6 @@ lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -lean_dec(x_1); x_69 = !lean_is_exclusive(x_25); if (x_69 == 0) { @@ -5262,6 +5858,7 @@ else uint8_t x_73; lean_free_object(x_17); lean_dec(x_21); +lean_dec(x_20); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -5269,7 +5866,6 @@ lean_dec(x_7); 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) { @@ -5302,6 +5898,7 @@ lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); +lean_inc(x_77); x_79 = lean_infer_type(x_77, x_7, x_8, x_9, x_10, x_18); if (lean_obj_tag(x_79) == 0) { @@ -5329,7 +5926,7 @@ lean_inc(x_3); x_85 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_foldCalls___lambda__14), 10, 3); lean_closure_set(x_85, 0, x_3); lean_closure_set(x_85, 1, x_83); -lean_closure_set(x_85, 2, x_1); +lean_closure_set(x_85, 2, x_77); x_86 = 0; lean_inc(x_10); lean_inc(x_9); @@ -5540,6 +6137,7 @@ else { lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_dec(x_78); +lean_dec(x_77); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -5547,7 +6145,6 @@ lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -lean_dec(x_1); x_126 = lean_ctor_get(x_82, 0); lean_inc(x_126); x_127 = lean_ctor_get(x_82, 1); @@ -5574,6 +6171,7 @@ else { lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_dec(x_78); +lean_dec(x_77); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -5581,7 +6179,6 @@ lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -lean_dec(x_1); x_130 = lean_ctor_get(x_79, 0); lean_inc(x_130); x_131 = lean_ctor_get(x_79, 1); @@ -6199,7 +6796,7 @@ lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean 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 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_15 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; lean_inc(x_1); x_16 = lean_array_push(x_15, x_1); x_17 = 1; @@ -6268,7 +6865,7 @@ lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean 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 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_15 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; lean_inc(x_1); x_16 = lean_array_push(x_15, x_1); x_17 = 1; @@ -6337,7 +6934,7 @@ lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean 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 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_15 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; lean_inc(x_1); x_16 = lean_array_push(x_15, x_1); x_17 = 0; @@ -6739,7 +7336,7 @@ lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean 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 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_15 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; lean_inc(x_1); x_16 = lean_array_push(x_15, x_1); x_17 = 0; @@ -7193,7 +7790,7 @@ static lean_object* _init_l_Lean_Tactic_FunInd_collectIHs___lambda__4___closed__ 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_foldCalls___lambda__3___closed__1; x_2 = l_Lean_Tactic_FunInd_collectIHs___lambda__4___closed__1; -x_3 = lean_unsigned_to_nat(444u); +x_3 = lean_unsigned_to_nat(470u); x_4 = lean_unsigned_to_nat(4u); x_5 = l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -8474,7 +9071,7 @@ static lean_object* _init_l_Lean_Tactic_FunInd_collectIHs___lambda__9___closed__ 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_foldCalls___lambda__3___closed__1; x_2 = l_Lean_Tactic_FunInd_collectIHs___lambda__4___closed__1; -x_3 = lean_unsigned_to_nat(391u); +x_3 = lean_unsigned_to_nat(417u); x_4 = lean_unsigned_to_nat(40u); x_5 = l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -8533,7 +9130,7 @@ lean_inc(x_24); x_25 = lean_ctor_get(x_23, 1); lean_inc(x_25); lean_dec(x_23); -x_26 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_26 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_27 = lean_array_push(x_26, x_18); x_28 = 0; x_29 = 1; @@ -8647,7 +9244,7 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___lambda__12(lean_objec { lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; x_8 = l_Lean_Expr_fvar___override(x_1); -x_9 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_9 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_10 = lean_array_push(x_9, x_8); x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); @@ -8815,7 +9412,7 @@ if (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_35, 0); x_38 = l_Lean_Meta_MatcherApp_toExpr(x_37); -x_39 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_39 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_40 = lean_array_push(x_39, x_38); lean_ctor_set(x_35, 0, x_40); return x_35; @@ -8829,7 +9426,7 @@ lean_inc(x_42); lean_inc(x_41); lean_dec(x_35); x_43 = l_Lean_Meta_MatcherApp_toExpr(x_41); -x_44 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_44 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_45 = lean_array_push(x_44, x_43); x_46 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_46, 0, x_45); @@ -9237,72 +9834,75 @@ return x_9; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_collectIHs___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) { _start: { -lean_object* x_10; uint8_t x_11; +lean_object* x_10; lean_object* x_11; uint8_t x_12; x_10 = l_Lean_Expr_getAppFn(x_4); -x_11 = l_Lean_Expr_isFVar(x_10); -if (x_11 == 0) +lean_inc(x_10); +x_11 = l_Lean_Expr_eta(x_10); +x_12 = l_Lean_Expr_isFVar(x_11); +lean_dec(x_11); +if (x_12 == 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; lean_object* x_25; uint8_t x_26; +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_dec(x_3); -x_12 = l_Lean_MessageData_ofExpr(x_1); -x_13 = l_Lean_Tactic_FunInd_foldCalls___lambda__14___closed__2; -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_foldCalls___lambda__14___closed__4; -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_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_Tactic_FunInd_foldCalls___lambda__14___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); -x_21 = l_Lean_MessageData_ofExpr(x_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 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; -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_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_24, x_5, x_6, x_7, x_8, x_9); +x_13 = l_Lean_MessageData_ofExpr(x_1); +x_14 = l_Lean_Tactic_FunInd_foldCalls___lambda__14___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_Tactic_FunInd_foldCalls___lambda__14___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 = l_Lean_MessageData_ofExpr(x_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_Tactic_FunInd_foldCalls___lambda__14___closed__6; +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_MessageData_ofExpr(x_10); +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_Tactic_FunInd_removeLamda___rarg___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_Meta_mkSimpCongrTheorem___spec__4(x_25, x_5, x_6, x_7, x_8, x_9); lean_dec(x_7); lean_dec(x_5); -x_26 = !lean_is_exclusive(x_25); -if (x_26 == 0) +x_27 = !lean_is_exclusive(x_26); +if (x_27 == 0) { -return x_25; +return x_26; } else { -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_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_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; +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 { -lean_object* x_30; lean_object* x_31; +lean_object* x_31; lean_object* x_32; lean_dec(x_10); lean_dec(x_2); lean_dec(x_1); -x_30 = lean_box(0); -x_31 = l_Lean_Tactic_FunInd_collectIHs___lambda__16(x_3, x_30, x_5, x_6, x_7, x_8, x_9); +x_31 = lean_box(0); +x_32 = l_Lean_Tactic_FunInd_collectIHs___lambda__16(x_3, x_31, x_5, x_6, x_7, x_8, x_9); lean_dec(x_7); lean_dec(x_5); lean_dec(x_3); -return x_31; +return x_32; } } } @@ -9312,7 +9912,7 @@ static lean_object* _init_l_Lean_Tactic_FunInd_collectIHs___lambda__18___closed_ 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_foldCalls___lambda__3___closed__1; x_2 = l_Lean_Tactic_FunInd_collectIHs___lambda__4___closed__1; -x_3 = lean_unsigned_to_nat(338u); +x_3 = lean_unsigned_to_nat(364u); x_4 = lean_unsigned_to_nat(43u); x_5 = l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -9352,6 +9952,7 @@ return x_16; else { lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; size_t x_22; size_t x_23; lean_object* x_24; +lean_dec(x_1); x_17 = lean_ctor_get(x_13, 0); lean_inc(x_17); lean_dec(x_13); @@ -9446,7 +10047,6 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_1); x_85 = !lean_is_exclusive(x_82); if (x_85 == 0) { @@ -9498,10 +10098,11 @@ lean_inc(x_35); x_36 = lean_ctor_get(x_34, 1); lean_inc(x_36); lean_dec(x_34); +lean_inc(x_19); lean_inc(x_35); x_37 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_collectIHs___lambda__17___boxed), 9, 2); lean_closure_set(x_37, 0, x_35); -lean_closure_set(x_37, 1, x_1); +lean_closure_set(x_37, 1, x_19); x_38 = 0; lean_inc(x_10); lean_inc(x_9); @@ -9655,7 +10256,6 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_1); x_69 = !lean_is_exclusive(x_34); if (x_69 == 0) { @@ -9686,7 +10286,6 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_1); x_73 = !lean_is_exclusive(x_31); if (x_73 == 0) { @@ -9721,7 +10320,6 @@ lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -lean_dec(x_1); x_89 = !lean_is_exclusive(x_24); if (x_89 == 0) { @@ -13380,7 +13978,7 @@ return x_57; else { 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 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_58 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_59 = lean_array_push(x_58, x_15); x_60 = 0; x_61 = 1; @@ -13734,7 +14332,7 @@ return x_132; else { lean_object* x_133; lean_object* x_134; uint8_t x_135; uint8_t x_136; uint8_t x_137; lean_object* x_138; -x_133 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_133 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_134 = lean_array_push(x_133, x_94); x_135 = 0; x_136 = 1; @@ -14103,7 +14701,7 @@ return x_208; else { lean_object* x_209; lean_object* x_210; uint8_t x_211; uint8_t x_212; uint8_t x_213; lean_object* x_214; -x_209 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_209 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_210 = lean_array_push(x_209, x_170); x_211 = 0; x_212 = 1; @@ -30391,7 +30989,7 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__1(lea _start: { lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_17 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_17 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; lean_inc(x_10); x_18 = lean_array_push(x_17, x_10); x_19 = lean_unsigned_to_nat(0u); @@ -31304,7 +31902,7 @@ if (x_22 == 0) 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_23 = lean_ctor_get(x_20, 0); x_24 = lean_ctor_get(x_20, 1); -x_25 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_25 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_26 = lean_array_push(x_25, x_10); x_27 = 0; x_28 = 1; @@ -31374,7 +31972,7 @@ x_41 = lean_ctor_get(x_20, 1); lean_inc(x_41); lean_inc(x_40); lean_dec(x_20); -x_42 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_42 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_43 = lean_array_push(x_42, x_10); x_44 = 0; x_45 = 1; @@ -32587,7 +33185,7 @@ if (x_21 == 0) lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; uint8_t x_27; uint8_t x_28; lean_object* x_29; x_22 = lean_ctor_get(x_19, 0); x_23 = lean_ctor_get(x_19, 1); -x_24 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_24 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_25 = lean_array_push(x_24, x_10); x_26 = 0; x_27 = 1; @@ -32657,7 +33255,7 @@ x_40 = lean_ctor_get(x_19, 1); lean_inc(x_40); lean_inc(x_39); lean_dec(x_19); -x_41 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_41 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_42 = lean_array_push(x_41, x_10); x_43 = 0; x_44 = 1; @@ -33127,7 +33725,7 @@ static lean_object* _init_l_Lean_Tactic_FunInd_buildInductionBody___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; x_1 = l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__1; x_2 = l_Lean_Tactic_FunInd_buildInductionBody___lambda__12___closed__1; -x_3 = lean_unsigned_to_nat(601u); +x_3 = lean_unsigned_to_nat(627u); x_4 = lean_unsigned_to_nat(40u); x_5 = l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -33184,7 +33782,7 @@ if (x_28 == 0) lean_object* x_29; lean_object* x_30; 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_29 = lean_ctor_get(x_26, 0); x_30 = lean_ctor_get(x_26, 1); -x_31 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_31 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_32 = lean_array_push(x_31, x_22); x_33 = 0; x_34 = 1; @@ -33254,7 +33852,7 @@ x_47 = lean_ctor_get(x_26, 1); lean_inc(x_47); lean_inc(x_46); lean_dec(x_26); -x_48 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_48 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_49 = lean_array_push(x_48, x_22); x_50 = 0; x_51 = 1; @@ -33388,7 +33986,7 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__15(le { lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_9 = l_Lean_Expr_fvar___override(x_1); -x_10 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_10 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_11 = lean_array_push(x_10, x_9); x_12 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_12, 0, x_11); @@ -37026,6 +37624,304 @@ lean_dec(x_1); return x_12; } } +static lean_object* _init_l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("motive result type must be a sort", 33); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_motiveUniverseParamPos___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: +{ +if (lean_obj_tag(x_4) == 3) +{ +lean_object* x_10; +lean_dec(x_1); +x_10 = lean_ctor_get(x_4, 0); +if (lean_obj_tag(x_10) == 4) +{ +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_11 = lean_ctor_get(x_10, 0); +x_12 = l_Lean_ConstantInfo_levelParams(x_2); +x_13 = l_List_redLength___rarg(x_12); +x_14 = lean_mk_empty_array_with_capacity(x_13); +lean_dec(x_13); +x_15 = l_List_toArrayAux___rarg(x_12, x_14); +x_16 = lean_unsigned_to_nat(0u); +x_17 = l_Array_indexOfAux___at_Lean_MetavarContext_setMVarUserName___spec__3(x_15, x_11, x_16); +lean_dec(x_15); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +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_9); +return x_19; +} +else +{ +uint8_t x_20; +x_20 = !lean_is_exclusive(x_17); +if (x_20 == 0) +{ +lean_object* x_21; +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_17); +lean_ctor_set(x_21, 1, x_9); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_17, 0); +lean_inc(x_22); +lean_dec(x_17); +x_23 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_23, 0, 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_9); +return x_24; +} +} +} +else +{ +lean_object* x_25; lean_object* x_26; +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_9); +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 = l_Lean_indentExpr(x_1); +x_28 = l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___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_Tactic_FunInd_removeLamda___rarg___lambda__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___private_Lean_Meta_Match_Match_0__Lean_Meta_Match_getUElimPos_x3f___spec__2(x_31, x_5, x_6, x_7, x_8, x_9); +return x_32; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_motiveUniverseParamPos___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); +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; uint8_t 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); +lean_inc(x_10); +x_12 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___boxed), 9, 2); +lean_closure_set(x_12, 0, x_10); +lean_closure_set(x_12, 1, x_2); +x_13 = 0; +x_14 = l_Lean_Meta_forallTelescopeReducing___at_Lean_Meta_getParamNames___spec__2___rarg(x_10, x_12, x_13, x_4, x_5, x_6, x_7, x_11); +return x_14; +} +else +{ +uint8_t x_15; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_15 = !lean_is_exclusive(x_9); +if (x_15 == 0) +{ +return x_9; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_9, 0); +x_17 = lean_ctor_get(x_9, 1); +lean_inc(x_17); +lean_inc(x_16); +lean_dec(x_9); +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_Tactic_FunInd_motiveUniverseParamPos___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("unexpected eliminator resulting type", 36); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_motiveUniverseParamPos___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; uint8_t x_10; +lean_dec(x_2); +x_9 = l_Lean_Expr_getAppFn(x_3); +x_10 = l_Lean_Expr_isFVar(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; uint8_t x_17; +lean_dec(x_9); +lean_dec(x_1); +x_11 = l_Lean_indentExpr(x_3); +x_12 = l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3___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_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___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_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); +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; +lean_dec(x_3); +x_21 = lean_box(0); +x_22 = l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__2(x_9, x_1, x_21, x_4, x_5, x_6, x_7, x_8); +return x_22; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_motiveUniverseParamPos(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_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; lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13; +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_ConstantInfo_type(x_8); +x_11 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3), 8, 1); +lean_closure_set(x_11, 0, x_8); +x_12 = 0; +x_13 = l_Lean_Meta_forallTelescopeReducing___at_Lean_Meta_getParamNames___spec__2___rarg(x_10, x_11, x_12, x_2, x_3, x_4, x_5, x_9); +return x_13; +} +else +{ +uint8_t x_14; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_14 = !lean_is_exclusive(x_7); +if (x_14 == 0) +{ +return x_7; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_7, 0); +x_16 = lean_ctor_get(x_7, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_7); +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_motiveUniverseParamPos___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_Tactic_FunInd_motiveUniverseParamPos___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_Tactic_FunInd_motiveUniverseParamPos___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_Tactic_FunInd_motiveUniverseParamPos___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_throwError___at_Lean_Tactic_FunInd_findRecursor_err___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) { _start: { @@ -37368,7 +38264,45 @@ goto _start; } } } -LEAN_EXPORT uint8_t l_Array_isEqvAux___at_Lean_Tactic_FunInd_findRecursor___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_Lean_throwError___at_Lean_Tactic_FunInd_findRecursor___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: +{ +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 uint8_t l_Array_isEqvAux___at_Lean_Tactic_FunInd_findRecursor___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; uint8_t x_9; @@ -37410,7 +38344,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___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_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___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) { _start: { uint8_t x_7; @@ -37456,7 +38390,7 @@ return x_6; } } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___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_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___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) { _start: { uint8_t x_7; @@ -37500,7 +38434,7 @@ return x_6; } } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; @@ -37508,7 +38442,7 @@ x_4 = l_Lean_mkAppB(x_2, x_3, x_1); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; lean_object* x_12; @@ -37519,7 +38453,7 @@ lean_ctor_set(x_12, 1, x_10); return x_12; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__1() { _start: { lean_object* x_1; @@ -37527,7 +38461,7 @@ x_1 = lean_mk_string_from_bytes("WellFounded", 11); return x_1; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__2() { _start: { lean_object* x_1; @@ -37535,17 +38469,17 @@ x_1 = lean_mk_string_from_bytes("fix", 3); return x_1; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__3() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__1; -x_2 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__2; +x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__1; +x_2 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__2; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__4() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -37557,7 +38491,7 @@ lean_ctor_set(x_3, 1, x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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, 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; uint8_t x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; @@ -37567,10 +38501,10 @@ x_17 = l_List_lengthTRAux___rarg(x_15, x_16); x_18 = lean_nat_dec_lt(x_16, x_17); lean_dec(x_17); x_19 = lean_array_pop(x_2); -x_20 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_20 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; lean_inc(x_3); x_21 = lean_array_push(x_20, x_3); -x_22 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__1), 3, 1); +x_22 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__1), 3, 1); lean_closure_set(x_22, 0, x_3); if (x_18 == 0) { @@ -37578,13 +38512,13 @@ lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean lean_dec(x_15); x_23 = l_Lean_instInhabitedLevel; x_24 = l___private_Init_GetElem_0__outOfBounds___rarg(x_23); -x_25 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__4; +x_25 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__4; 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 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__3; +x_27 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__3; x_28 = l_Lean_Expr_const___override(x_27, x_26); -x_29 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__2___boxed), 10, 4); +x_29 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__2___boxed), 10, 4); lean_closure_set(x_29, 0, x_28); lean_closure_set(x_29, 1, x_4); lean_closure_set(x_29, 2, x_5); @@ -37600,13 +38534,13 @@ 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; uint8_t x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; x_34 = l_List_get___rarg(x_15, x_16); lean_dec(x_15); -x_35 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__4; +x_35 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__4; x_36 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_36, 0, x_34); lean_ctor_set(x_36, 1, x_35); -x_37 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__3; +x_37 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__3; x_38 = l_Lean_Expr_const___override(x_37, x_36); -x_39 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__2___boxed), 10, 4); +x_39 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__2___boxed), 10, 4); lean_closure_set(x_39, 0, x_38); lean_closure_set(x_39, 1, x_4); lean_closure_set(x_39, 2, x_5); @@ -37619,7 +38553,7 @@ return x_43; } } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__1() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___closed__1() { _start: { lean_object* x_1; @@ -37627,16 +38561,16 @@ x_1 = lean_mk_string_from_bytes("functional induction: expected the target as la return x_1; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__2() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__1; +x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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, lean_object* x_8, lean_object* x_9, 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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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, lean_object* x_8, lean_object* x_9, 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; uint8_t x_18; @@ -37657,7 +38591,7 @@ lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); x_19 = l_Lean_indentExpr(x_4); -x_20 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__2; +x_20 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___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); @@ -37694,12 +38628,12 @@ else lean_object* x_29; lean_object* x_30; lean_dec(x_4); x_29 = lean_box(0); -x_30 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3(x_1, x_2, x_10, x_5, x_7, x_8, x_3, x_9, x_29, x_11, x_12, x_13, x_14, x_15); +x_30 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3(x_1, x_2, x_10, x_5, x_7, x_8, x_3, x_9, x_29, x_11, x_12, x_13, x_14, x_15); return x_30; } } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; lean_object* x_11; @@ -37710,7 +38644,7 @@ lean_ctor_set(x_11, 1, x_9); return x_11; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__1() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__1() { _start: { lean_object* x_1; @@ -37718,17 +38652,17 @@ x_1 = lean_mk_string_from_bytes("fixF", 4); return x_1; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__2() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__1; -x_2 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__1; +x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__1; +x_2 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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, lean_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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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, 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; 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; @@ -37742,9 +38676,9 @@ x_18 = lean_array_pop(x_2); x_19 = l_Lean_instInhabitedExpr; x_20 = l_Array_back___rarg(x_19, x_2); lean_dec(x_2); -x_21 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_21 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_22 = lean_array_push(x_21, x_20); -x_23 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__1), 3, 1); +x_23 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__1), 3, 1); lean_closure_set(x_23, 0, x_3); if (x_17 == 0) { @@ -37752,13 +38686,13 @@ lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean lean_dec(x_14); x_24 = l_Lean_instInhabitedLevel; x_25 = l___private_Init_GetElem_0__outOfBounds___rarg(x_24); -x_26 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__4; +x_26 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__4; x_27 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_27, 0, x_25); lean_ctor_set(x_27, 1, x_26); -x_28 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__2; +x_28 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__2; x_29 = l_Lean_Expr_const___override(x_28, x_27); -x_30 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__5___boxed), 9, 3); +x_30 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__5___boxed), 9, 3); lean_closure_set(x_30, 0, x_29); lean_closure_set(x_30, 1, x_4); lean_closure_set(x_30, 2, x_5); @@ -37773,13 +38707,13 @@ 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; uint8_t x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; x_35 = l_List_get___rarg(x_14, x_15); lean_dec(x_14); -x_36 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__4; +x_36 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__4; x_37 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_37, 0, x_35); lean_ctor_set(x_37, 1, x_36); -x_38 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__2; +x_38 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__2; x_39 = l_Lean_Expr_const___override(x_38, x_37); -x_40 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__5___boxed), 9, 3); +x_40 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__5___boxed), 9, 3); lean_closure_set(x_40, 0, x_39); lean_closure_set(x_40, 1, x_4); lean_closure_set(x_40, 2, x_5); @@ -37791,7 +38725,7 @@ return x_44; } } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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_object* x_7, lean_object* x_8, lean_object* x_9, 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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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_object* x_7, lean_object* x_8, lean_object* x_9, 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; uint8_t x_18; @@ -37812,7 +38746,7 @@ lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); x_19 = l_Lean_indentExpr(x_4); -x_20 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__2; +x_20 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___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); @@ -37849,12 +38783,12 @@ else lean_object* x_29; lean_object* x_30; lean_dec(x_4); x_29 = lean_box(0); -x_30 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6(x_1, x_2, x_10, x_5, x_6, x_3, x_8, x_29, x_11, x_12, x_13, x_14, x_15); +x_30 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6(x_1, x_2, x_10, x_5, x_6, x_3, x_8, x_29, x_11, x_12, x_13, x_14, x_15); return x_30; } } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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; @@ -37862,7 +38796,7 @@ x_8 = l_Lean_Tactic_FunInd_findRecursor_err___rarg(x_1, x_3, x_4, x_5, x_6, x_7) return x_8; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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) { _start: { lean_object* x_11; uint8_t x_12; uint8_t x_13; uint8_t x_14; lean_object* x_15; @@ -37961,7 +38895,7 @@ return x_35; } } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__10(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__10(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; lean_object* x_5; @@ -37970,38 +38904,206 @@ x_5 = l_Lean_mkAppN(x_4, x_1); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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, lean_object* x_7, lean_object* x_8, lean_object* x_9, 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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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, 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_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; uint8_t x_28; lean_object* x_29; lean_object* x_30; -lean_inc(x_1); -x_16 = l_Lean_Expr_constLevels_x21(x_1); -x_17 = lean_unsigned_to_nat(0u); -x_18 = l_Lean_levelZero; -x_19 = l_List_set___rarg(x_16, x_17, x_18); -x_20 = l_Lean_Expr_constName(x_1); -lean_dec(x_1); -x_21 = l_Lean_Expr_const___override(x_20, x_19); -x_22 = l_Array_toSubarray___rarg(x_2, x_17, x_3); -x_23 = l_Array_ofSubarray___rarg(x_22); -x_24 = l_Lean_mkAppN(x_21, x_23); -x_25 = lean_array_get_size(x_4); -lean_inc(x_6); -lean_inc(x_5); -x_26 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__9___boxed), 10, 4); -lean_closure_set(x_26, 0, x_5); -lean_closure_set(x_26, 1, x_6); -lean_closure_set(x_26, 2, x_4); -lean_closure_set(x_26, 3, x_24); -x_27 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__10), 3, 1); -lean_closure_set(x_27, 0, x_6); -x_28 = 0; -x_29 = lean_box(x_28); -x_30 = lean_apply_12(x_7, x_29, x_8, x_5, x_25, x_9, x_26, x_27, x_11, x_12, x_13, x_14, x_15); -return x_30; +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_array_get_size(x_1); +lean_inc(x_3); +lean_inc(x_2); +x_14 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__9___boxed), 10, 4); +lean_closure_set(x_14, 0, x_2); +lean_closure_set(x_14, 1, x_3); +lean_closure_set(x_14, 2, x_1); +lean_closure_set(x_14, 3, x_7); +x_15 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__10), 3, 1); +lean_closure_set(x_15, 0, x_3); +x_16 = 0; +x_17 = lean_box(x_16); +x_18 = lean_apply_12(x_4, x_17, x_5, x_2, x_13, x_6, x_14, x_15, x_8, x_9, x_10, x_11, x_12); +return x_18; +} +} +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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, 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 = l_Lean_Expr_const___override(x_5, x_1); +x_12 = lean_unsigned_to_nat(0u); +x_13 = l_Array_toSubarray___rarg(x_2, x_12, x_3); +x_14 = l_Array_ofSubarray___rarg(x_13); +x_15 = l_Lean_mkAppN(x_11, x_14); +x_16 = lean_apply_6(x_4, x_15, x_6, x_7, x_8, x_9, x_10); +return x_16; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__1() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Unexpected brecOn name ", 23); +return x_1; +} +} +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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, 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_dec(x_11); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +x_17 = l_Lean_Tactic_FunInd_motiveUniverseParamPos(x_1, x_12, x_13, x_14, x_15, x_16); +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) +{ +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_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_20 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__11), 12, 6); +lean_closure_set(x_20, 0, x_2); +lean_closure_set(x_20, 1, x_3); +lean_closure_set(x_20, 2, x_4); +lean_closure_set(x_20, 3, x_5); +lean_closure_set(x_20, 4, x_6); +lean_closure_set(x_20, 5, x_7); +lean_inc(x_8); +x_21 = l_Lean_Expr_constLevels_x21(x_8); +x_22 = lean_unsigned_to_nat(1u); +x_23 = l_List_drop___rarg(x_22, x_21); +lean_dec(x_21); +x_24 = l_Lean_Expr_constName(x_8); +lean_dec(x_8); +if (lean_obj_tag(x_24) == 1) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +lean_dec(x_24); +x_26 = l_Lean_binductionOnSuffix; +x_27 = l_Lean_Name_str___override(x_25, x_26); +x_28 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__12(x_23, x_9, x_10, x_20, x_27, x_12, x_13, x_14, x_15, x_19); +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; uint8_t x_35; +lean_dec(x_23); +lean_dec(x_20); +lean_dec(x_10); +lean_dec(x_9); +x_29 = l_Lean_MessageData_ofName(x_24); +x_30 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13___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_Tactic_FunInd_removeLamda___rarg___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_throwError___at_Lean_Tactic_FunInd_findRecursor___spec__3(x_33, x_12, x_13, x_14, x_15, x_19); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +x_35 = !lean_is_exclusive(x_34); +if (x_35 == 0) +{ +return x_34; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_34, 0); +x_37 = lean_ctor_get(x_34, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_34); +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; +x_39 = lean_ctor_get(x_17, 1); +lean_inc(x_39); +lean_dec(x_17); +x_40 = lean_ctor_get(x_18, 0); +lean_inc(x_40); +lean_dec(x_18); +lean_inc(x_8); +x_41 = l_Lean_Expr_constLevels_x21(x_8); +x_42 = l_Lean_levelZero; +x_43 = l_List_set___rarg(x_41, x_40, x_42); +lean_dec(x_40); +x_44 = l_Lean_Expr_constName(x_8); +lean_dec(x_8); +x_45 = l_Lean_Expr_const___override(x_44, x_43); +x_46 = lean_unsigned_to_nat(0u); +x_47 = l_Array_toSubarray___rarg(x_9, x_46, x_10); +x_48 = l_Array_ofSubarray___rarg(x_47); +x_49 = l_Lean_mkAppN(x_45, x_48); +x_50 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__11(x_2, x_3, x_4, x_5, x_6, x_7, x_49, x_12, x_13, x_14, x_15, x_39); +return x_50; +} +} +else +{ +uint8_t x_51; +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_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_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; +} +} +} +} +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__1() { _start: { lean_object* x_1; @@ -38009,16 +39111,16 @@ x_1 = lean_mk_string_from_bytes("functional induction: unexpected recursor: ", 4 return x_1; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__2() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__1; +x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__3() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__3() { _start: { lean_object* x_1; @@ -38026,82 +39128,83 @@ x_1 = lean_mk_string_from_bytes(" has no universe parameters", 27); return x_1; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__4() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__3; +x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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, lean_object* x_8, lean_object* x_9, 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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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, lean_object* x_8, lean_object* x_9, 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; lean_object* x_19; uint8_t x_20; -lean_dec(x_10); -lean_inc(x_1); -x_16 = l_Lean_Expr_constLevels_x21(x_1); -x_17 = lean_unsigned_to_nat(0u); -x_18 = l_List_lengthTRAux___rarg(x_16, x_17); -lean_dec(x_16); -x_19 = lean_unsigned_to_nat(1u); -x_20 = lean_nat_dec_le(x_19, x_18); -lean_dec(x_18); -if (x_20 == 0) +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; +lean_dec(x_11); +lean_inc(x_8); +x_17 = l_Lean_Expr_constLevels_x21(x_8); +x_18 = lean_unsigned_to_nat(0u); +x_19 = l_List_lengthTRAux___rarg(x_17, x_18); +lean_dec(x_17); +x_20 = lean_unsigned_to_nat(1u); +x_21 = lean_nat_dec_le(x_20, x_19); +lean_dec(x_19); +if (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; uint8_t x_27; +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_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_21 = l_Lean_MessageData_ofExpr(x_1); -x_22 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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); -x_24 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___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_Meta_mkSimpCongrTheorem___spec__4(x_25, x_11, x_12, x_13, x_14, x_15); +lean_dec(x_1); +x_22 = l_Lean_MessageData_ofExpr(x_8); +x_23 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___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_22); +x_25 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__4; +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_mkSimpCongrTheorem___spec__4(x_26, 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); -x_27 = !lean_is_exclusive(x_26); -if (x_27 == 0) +x_28 = !lean_is_exclusive(x_27); +if (x_28 == 0) { -return x_26; +return x_27; } 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_object* x_29; lean_object* x_30; lean_object* x_31; +x_29 = lean_ctor_get(x_27, 0); +x_30 = lean_ctor_get(x_27, 1); +lean_inc(x_30); 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; +lean_dec(x_27); +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_31; lean_object* x_32; -x_31 = lean_box(0); -x_32 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__11(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_31, x_11, x_12, x_13, x_14, x_15); -return x_32; +lean_object* x_32; lean_object* x_33; +x_32 = lean_box(0); +x_33 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_32, x_12, x_13, x_14, x_15, x_16); +return x_33; } } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__1() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__1() { _start: { lean_object* x_1; @@ -38109,17 +39212,17 @@ x_1 = lean_mk_string_from_bytes("brecOn", 6); return x_1; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__2() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___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_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__1; +x_2 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___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_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__3() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__3() { _start: { lean_object* x_1; @@ -38127,16 +39230,16 @@ x_1 = lean_mk_string_from_bytes(" is defined in a way not supported by functiona return x_1; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__4() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__3; +x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__5() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__5() { _start: { lean_object* x_1; @@ -38144,26 +39247,26 @@ x_1 = lean_mk_string_from_bytes("for example by recursion over an inductive pred return x_1; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__6() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__6() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__5; +x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__7() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__7() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__6; +x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__6; x_2 = l_Lean_MessageData_ofFormat(x_1); return x_2; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__8() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__8() { _start: { lean_object* x_1; @@ -38171,16 +39274,16 @@ x_1 = lean_mk_string_from_bytes("functional induction: unexpected order of fixed return x_1; } } -static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__9() { +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__9() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__8; +x_1 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__8; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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, 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; uint8_t x_20; @@ -38208,7 +39311,7 @@ if (x_20 == 0) { lean_object* x_21; uint8_t x_22; lean_dec(x_7); -x_21 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__2; +x_21 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__2; x_22 = l_Lean_Name_isSuffixOf(x_21, x_18); lean_dec(x_18); if (x_22 == 0) @@ -38363,12 +39466,12 @@ else lean_object* x_49; lean_object* x_50; lean_object* x_51; uint8_t x_52; x_49 = l_Lean_Expr_appArg(x_46, lean_box(0)); x_50 = l_Lean_Expr_appFnCleanup(x_46, lean_box(0)); -x_51 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__3; +x_51 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__3; x_52 = l_Lean_Expr_isConstOf(x_50, x_51); if (x_52 == 0) { lean_object* x_53; uint8_t x_54; -x_53 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__2; +x_53 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__2; x_54 = l_Lean_Expr_isConstOf(x_50, x_53); lean_dec(x_50); if (x_54 == 0) @@ -38395,7 +39498,7 @@ else { lean_object* x_56; lean_dec(x_6); -x_56 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__7(x_1, x_3, x_4, x_5, x_49, x_45, x_41, x_37, x_33, x_29, x_8, x_9, x_10, x_11, x_25); +x_56 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__7(x_1, x_3, x_4, x_5, x_49, x_45, x_41, x_37, x_33, x_29, x_8, x_9, x_10, x_11, x_25); return x_56; } } @@ -38404,7 +39507,7 @@ else lean_object* x_57; lean_dec(x_50); lean_dec(x_6); -x_57 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4(x_1, x_3, x_4, x_5, x_49, x_45, x_41, x_37, x_33, x_29, x_8, x_9, x_10, x_11, x_25); +x_57 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4(x_1, x_3, x_4, x_5, x_49, x_45, x_41, x_37, x_33, x_29, x_8, x_9, x_10, x_11, x_25); return x_57; } } @@ -38432,11 +39535,11 @@ if (lean_is_scalar(x_16)) { } lean_ctor_set(x_60, 0, x_59); lean_ctor_set(x_60, 1, x_58); -x_61 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__4; +x_61 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___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); -x_63 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__7; +x_63 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__7; x_64 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_64, 0, x_62); lean_ctor_set(x_64, 1, x_63); @@ -38451,7 +39554,6 @@ return x_65; else { lean_object* x_66; lean_object* x_67; -lean_dec(x_18); lean_dec(x_6); lean_dec(x_2); x_66 = lean_box(0); @@ -38537,7 +39639,7 @@ else size_t x_128; lean_object* x_129; lean_object* x_130; x_128 = lean_usize_of_nat(x_85); x_129 = l_Lean_Tactic_FunInd_foldCalls___lambda__11___closed__1; -x_130 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__5(x_74, x_84, x_3, x_73, x_128, x_129); +x_130 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__6(x_74, x_84, x_3, x_73, x_128, x_129); x_89 = x_130; goto block_124; } @@ -38568,7 +39670,7 @@ else size_t x_121; lean_object* x_122; lean_object* x_123; x_121 = lean_usize_of_nat(x_85); x_122 = l_Lean_Tactic_FunInd_foldCalls___lambda__11___closed__1; -x_123 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__4(x_74, x_84, x_3, x_73, x_121, x_122); +x_123 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__5(x_74, x_84, x_3, x_73, x_121, x_122); x_90 = x_123; goto block_117; } @@ -38593,12 +39695,13 @@ lean_dec(x_88); lean_dec(x_84); lean_dec(x_75); lean_dec(x_74); +lean_dec(x_18); lean_dec(x_7); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); x_94 = l_Lean_indentExpr(x_5); -x_95 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__9; +x_95 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__9; if (lean_is_scalar(x_16)) { x_96 = lean_alloc_ctor(7, 2, 0); } else { @@ -38638,7 +39741,7 @@ return x_103; else { uint8_t x_104; -x_104 = l_Array_isEqvAux___at_Lean_Tactic_FunInd_findRecursor___spec__3(x_3, x_89, x_90, lean_box(0), x_3, x_91, x_86); +x_104 = l_Array_isEqvAux___at_Lean_Tactic_FunInd_findRecursor___spec__4(x_3, x_89, x_90, lean_box(0), x_3, x_91, x_86); lean_dec(x_91); lean_dec(x_3); if (x_104 == 0) @@ -38650,11 +39753,12 @@ lean_dec(x_88); lean_dec(x_84); lean_dec(x_75); lean_dec(x_74); +lean_dec(x_18); lean_dec(x_7); lean_dec(x_4); lean_dec(x_1); x_105 = l_Lean_indentExpr(x_5); -x_106 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__9; +x_106 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__9; if (lean_is_scalar(x_16)) { x_107 = lean_alloc_ctor(7, 2, 0); } else { @@ -38697,7 +39801,7 @@ lean_object* x_115; lean_object* x_116; lean_dec(x_16); lean_dec(x_5); x_115 = lean_box(0); -x_116 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12(x_1, x_7, x_75, x_74, x_90, x_84, x_4, x_89, x_88, x_115, x_8, x_9, x_10, x_11, x_69); +x_116 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14(x_18, x_74, x_90, x_84, x_4, x_89, x_88, x_1, x_7, x_75, x_115, x_8, x_9, x_10, x_11, x_69); return x_116; } } @@ -38708,6 +39812,7 @@ return x_116; else { uint8_t x_135; +lean_dec(x_18); lean_dec(x_16); lean_dec(x_11); lean_dec(x_10); @@ -38740,7 +39845,7 @@ return x_138; } } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___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, lean_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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___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, 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_7) == 5) @@ -38783,7 +39888,7 @@ else { lean_object* x_24; lean_object* x_25; lean_inc(x_5); -x_24 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13), 12, 7); +x_24 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15), 12, 7); lean_closure_set(x_24, 0, x_7); lean_closure_set(x_24, 1, x_6); lean_closure_set(x_24, 2, x_5); @@ -38798,11 +39903,11 @@ return x_25; } } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___boxed), 14, 0); +x_2 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___boxed), 14, 0); return x_2; } } @@ -38875,7 +39980,7 @@ x_16 = lean_unsigned_to_nat(1u); x_17 = lean_nat_sub(x_13, x_16); lean_dec(x_13); lean_inc(x_6); -x_18 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg(x_1, x_2, x_3, x_4, x_5, x_6, x_6, x_15, x_17, x_7, x_8, x_9, x_10, x_11); +x_18 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg(x_1, x_2, x_3, x_4, x_5, x_6, x_6, x_15, x_17, x_7, x_8, x_9, x_10, x_11); return x_18; } } @@ -38979,11 +40084,23 @@ lean_dec(x_1); return x_7; } } -LEAN_EXPORT lean_object* l_Array_isEqvAux___at_Lean_Tactic_FunInd_findRecursor___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_Lean_throwError___at_Lean_Tactic_FunInd_findRecursor___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) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_throwError___at_Lean_Tactic_FunInd_findRecursor___spec__3(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_isEqvAux___at_Lean_Tactic_FunInd_findRecursor___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: { uint8_t x_8; lean_object* x_9; -x_8 = l_Array_isEqvAux___at_Lean_Tactic_FunInd_findRecursor___spec__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +x_8 = l_Array_isEqvAux___at_Lean_Tactic_FunInd_findRecursor___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_3); @@ -38993,7 +40110,7 @@ x_9 = lean_box(x_8); return x_9; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___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_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___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) { _start: { size_t x_7; size_t x_8; lean_object* x_9; @@ -39001,14 +40118,14 @@ 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_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__4(x_1, x_2, x_3, x_7, x_8, x_6); +x_9 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__5(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_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___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_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___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) { _start: { size_t x_7; size_t x_8; lean_object* x_9; @@ -39016,18 +40133,18 @@ 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_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__5(x_1, x_2, x_3, x_7, x_8, x_6); +x_9 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_findRecursor___spec__6(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_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; -x_11 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_11 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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); @@ -39035,20 +40152,20 @@ lean_dec(x_6); return x_11; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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, 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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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_9); return x_15; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; -x_10 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_10 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__5(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); @@ -39056,20 +40173,20 @@ lean_dec(x_5); return x_10; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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: { lean_object* x_14; -x_14 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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); +x_14 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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_8); return x_14; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__8(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +x_8 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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); @@ -39078,11 +40195,11 @@ lean_dec(x_2); return x_8; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___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) { _start: { lean_object* x_11; -x_11 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_11 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__9(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); @@ -39090,20 +40207,11 @@ lean_dec(x_6); return x_11; } } -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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, lean_object* x_7, lean_object* x_8, lean_object* x_9, 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_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___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_15); -lean_dec(x_10); -return x_16; -} -} -LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___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, lean_object* x_14) { _start: { lean_object* x_15; -x_15 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___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, x_13, x_14); +x_15 = l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___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, x_13, x_14); lean_dec(x_2); return x_15; } @@ -40922,7 +42030,7 @@ lean_inc(x_20); lean_dec(x_18); lean_inc(x_2); x_21 = l_Lean_Expr_fvarId_x21(x_2); -x_22 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_22 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; lean_inc(x_21); x_23 = lean_array_push(x_22, x_21); lean_inc(x_14); @@ -41453,7 +42561,7 @@ 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_isPProdProj___closed__6; +x_49 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_50 = lean_array_push(x_49, x_10); x_51 = l_Lean_Meta_mkLambdaFVars(x_50, x_47, x_33, x_40, x_41, x_11, x_12, x_13, x_14, x_48); if (lean_obj_tag(x_51) == 0) @@ -43006,7 +44114,7 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_2); x_16 = l_Lean_Expr_appArg_x21(x_1); -x_17 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_17 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_18 = lean_array_push(x_17, x_16); x_19 = l_Lean_Expr_beta(x_3, x_18); x_20 = l_Array_ofSubarray___rarg(x_4); @@ -43194,7 +44302,7 @@ lean_dec(x_5); lean_dec(x_4); x_41 = l_Lean_Expr_appArg_x21(x_34); lean_dec(x_34); -x_42 = l_Lean_Tactic_FunInd_isPProdProj___closed__6; +x_42 = l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4; x_43 = lean_array_push(x_42, x_41); x_44 = l_Lean_Expr_beta(x_37, x_43); x_45 = l_Array_ofSubarray___rarg(x_33); @@ -43263,7 +44371,7 @@ static lean_object* _init_l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__5___clo 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_foldCalls___lambda__3___closed__1; x_2 = l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__5___closed__5; -x_3 = lean_unsigned_to_nat(835u); +x_3 = lean_unsigned_to_nat(890u); x_4 = lean_unsigned_to_nat(50u); x_5 = l_Lean_Tactic_FunInd_foldCalls___lambda__3___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -47514,7 +48622,7 @@ lean_dec(x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__1(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_12778____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; @@ -47526,15 +48634,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_11892____lambda__2___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____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_11892____lambda__1___boxed), 4, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__1___boxed), 4, 0); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__2() { _start: { uint8_t x_1; uint8_t x_2; uint8_t x_3; uint8_t x_4; lean_object* x_5; @@ -47559,7 +48667,7 @@ lean_ctor_set_uint8(x_5, 12, x_2); return x_5; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__3() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__3() { _start: { lean_object* x_1; @@ -47567,21 +48675,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_11892____lambda__2___closed__4() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__3; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__5() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__5() { _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_11892____lambda__2___closed__4; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4; x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -47589,7 +48697,7 @@ 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_11892____lambda__2___closed__6() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__6() { _start: { lean_object* x_1; lean_object* x_2; @@ -47598,23 +48706,23 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__7() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__7() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__6; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__8() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__7; -x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__6; +x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__7; +x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____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); @@ -47625,25 +48733,25 @@ lean_ctor_set_usize(x_5, 4, x_1); return x_5; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__9() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__9() { _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_11892____lambda__2___closed__5; -x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__8; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__5; +x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__10() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__10() { _start: { 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; x_1 = lean_box(0); -x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__2; -x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__9; +x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__2; +x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__9; x_4 = l_Lean_Tactic_FunInd_foldCalls___lambda__11___closed__1; x_5 = lean_unsigned_to_nat(0u); x_6 = 0; @@ -47659,11 +48767,11 @@ lean_ctor_set_uint8(x_7, sizeof(void*)*6 + 1, x_6); return x_7; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__11() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__11() { _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_11892____lambda__2___closed__4; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4; x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -47671,11 +48779,11 @@ 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_11892____lambda__2___closed__12() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__12() { _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_11892____lambda__2___closed__4; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4; x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -47683,11 +48791,11 @@ 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_11892____lambda__2___closed__13() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__13() { _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_11892____lambda__2___closed__4; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4; x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -47695,14 +48803,14 @@ 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_11892____lambda__2___closed__14() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____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; x_1 = lean_unsigned_to_nat(0u); -x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__11; -x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__12; -x_4 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__13; +x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__11; +x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__12; +x_4 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__13; x_5 = lean_alloc_ctor(0, 9, 0); lean_ctor_set(x_5, 0, x_1); lean_ctor_set(x_5, 1, x_1); @@ -47716,11 +48824,11 @@ lean_ctor_set(x_5, 8, x_3); return x_5; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__15() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__15() { _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_11892____lambda__2___closed__4; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4; x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -47728,7 +48836,7 @@ 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_11892____lambda__2___closed__16() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__16() { _start: { lean_object* x_1; @@ -47736,11 +48844,11 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Meta_InfoCacheKey_instHashable___boxed), return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__17() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__17() { _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_11892____lambda__2___closed__4; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4; x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -47748,11 +48856,11 @@ 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_11892____lambda__2___closed__18() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__18() { _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_11892____lambda__2___closed__4; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4; x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -47760,7 +48868,7 @@ 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_11892____lambda__2___closed__19() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__19() { _start: { lean_object* x_1; lean_object* x_2; @@ -47771,7 +48879,7 @@ lean_closure_set(x_2, 1, x_1); return x_2; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__20() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__20() { _start: { lean_object* x_1; lean_object* x_2; @@ -47782,11 +48890,11 @@ lean_closure_set(x_2, 1, x_1); return x_2; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__21() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__21() { _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_11892____lambda__2___closed__4; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4; x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -47794,11 +48902,11 @@ 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_11892____lambda__2___closed__22() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__22() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__21; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__21; x_2 = lean_alloc_ctor(0, 4, 0); lean_ctor_set(x_2, 0, x_1); lean_ctor_set(x_2, 1, x_1); @@ -47807,14 +48915,14 @@ 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_11892____lambda__2___closed__23() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__15; -x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__17; -x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__18; -x_4 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__22; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__15; +x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__17; +x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__18; +x_4 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__22; x_5 = lean_alloc_ctor(0, 7, 0); lean_ctor_set(x_5, 0, x_1); lean_ctor_set(x_5, 1, x_2); @@ -47826,11 +48934,11 @@ lean_ctor_set(x_5, 6, x_4); return x_5; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__24() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__24() { _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_11892____lambda__2___closed__4; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4; x_2 = lean_unsigned_to_nat(0u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -47838,12 +48946,12 @@ 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_11892____lambda__2___closed__25() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__25() { _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_11892____lambda__2___closed__13; -x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__24; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__13; +x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__24; x_3 = lean_alloc_ctor(0, 4, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_1); @@ -47852,15 +48960,15 @@ lean_ctor_set(x_3, 3, x_2); return x_3; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__26() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__26() { _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_11892____lambda__2___closed__14; -x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__23; -x_4 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__8; -x_5 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__25; +x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__14; +x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__23; +x_4 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__8; +x_5 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__25; x_6 = lean_alloc_ctor(0, 5, 0); lean_ctor_set(x_6, 0, x_2); lean_ctor_set(x_6, 1, x_3); @@ -47870,7 +48978,7 @@ 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_11892____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_12778____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; @@ -47884,7 +48992,7 @@ 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_11892____lambda__2___closed__1; +x_10 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____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); @@ -47907,14 +49015,14 @@ 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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__26; +x_16 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__26; 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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__10; +x_20 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__10; lean_inc(x_18); x_21 = l_Lean_Tactic_FunInd_deriveInduction(x_15, x_20, x_18, x_2, x_3, x_19); if (lean_obj_tag(x_21) == 0) @@ -47998,7 +49106,7 @@ 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_11892____lambda__2___closed__1; +x_41 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__1; lean_inc(x_1); x_42 = l_Lean_Tactic_FunInd_isFunInductName(x_40, x_1); x_43 = lean_unbox(x_42); @@ -48019,14 +49127,14 @@ lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean x_46 = lean_ctor_get(x_1, 0); lean_inc(x_46); lean_dec(x_1); -x_47 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__26; +x_47 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__26; 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_11892____lambda__2___closed__10; +x_51 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__10; 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) @@ -48101,7 +49209,7 @@ return x_66; } } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____closed__1() { _start: { lean_object* x_1; @@ -48109,19 +49217,19 @@ 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_11892____closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____closed__2() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2), 4, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2), 4, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778_(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_11892____closed__1; +x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____closed__1; x_3 = l_Lean_registerReservedNamePredicate(x_2, x_1); if (lean_obj_tag(x_3) == 0) { @@ -48129,7 +49237,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_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____closed__2; +x_5 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____closed__2; x_6 = l_Lean_registerReservedNameAction(x_5, x_4); return x_6; } @@ -48157,11 +49265,11 @@ return x_10; } } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____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_12778____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_11892____lambda__1(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__1(x_1, x_2, x_3, x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); @@ -48225,18 +49333,40 @@ l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__3 = _init_l_Lean_T lean_mark_persistent(l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__3); l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4 = _init_l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4(); lean_mark_persistent(l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4); -l_Lean_Tactic_FunInd_isPProdProj___closed__1 = _init_l_Lean_Tactic_FunInd_isPProdProj___closed__1(); -lean_mark_persistent(l_Lean_Tactic_FunInd_isPProdProj___closed__1); -l_Lean_Tactic_FunInd_isPProdProj___closed__2 = _init_l_Lean_Tactic_FunInd_isPProdProj___closed__2(); -lean_mark_persistent(l_Lean_Tactic_FunInd_isPProdProj___closed__2); -l_Lean_Tactic_FunInd_isPProdProj___closed__3 = _init_l_Lean_Tactic_FunInd_isPProdProj___closed__3(); -lean_mark_persistent(l_Lean_Tactic_FunInd_isPProdProj___closed__3); -l_Lean_Tactic_FunInd_isPProdProj___closed__4 = _init_l_Lean_Tactic_FunInd_isPProdProj___closed__4(); -lean_mark_persistent(l_Lean_Tactic_FunInd_isPProdProj___closed__4); -l_Lean_Tactic_FunInd_isPProdProj___closed__5 = _init_l_Lean_Tactic_FunInd_isPProdProj___closed__5(); -lean_mark_persistent(l_Lean_Tactic_FunInd_isPProdProj___closed__5); -l_Lean_Tactic_FunInd_isPProdProj___closed__6 = _init_l_Lean_Tactic_FunInd_isPProdProj___closed__6(); -lean_mark_persistent(l_Lean_Tactic_FunInd_isPProdProj___closed__6); +l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__1 = _init_l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__1); +l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__2 = _init_l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__2); +l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__3 = _init_l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__3(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__3); +l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4 = _init_l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___lambda__1___closed__4); +l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__1 = _init_l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__1); +l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__2 = _init_l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__2); +l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__3 = _init_l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__3(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___lambda__2___closed__3); +l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__1 = _init_l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__1); +l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__2 = _init_l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__2); +l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__3 = _init_l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__3(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__3); +l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__4 = _init_l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__4(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___lambda__3___closed__4); +l_Lean_Tactic_FunInd_mkFst___closed__1 = _init_l_Lean_Tactic_FunInd_mkFst___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___closed__1); +l_Lean_Tactic_FunInd_mkFst___closed__2 = _init_l_Lean_Tactic_FunInd_mkFst___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkFst___closed__2); +l_Lean_Tactic_FunInd_mkSnd___lambda__1___closed__1 = _init_l_Lean_Tactic_FunInd_mkSnd___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkSnd___lambda__1___closed__1); +l_Lean_Tactic_FunInd_mkSnd___lambda__1___closed__2 = _init_l_Lean_Tactic_FunInd_mkSnd___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkSnd___lambda__1___closed__2); +l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__1 = _init_l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__1); +l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__2 = _init_l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_mkSnd___lambda__2___closed__2); l_Lean_Tactic_FunInd_isPProdProjWithArgs___lambda__2___closed__1 = _init_l_Lean_Tactic_FunInd_isPProdProjWithArgs___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_isPProdProjWithArgs___lambda__2___closed__1); l_Lean_Tactic_FunInd_isPProdProjWithArgs___closed__1 = _init_l_Lean_Tactic_FunInd_isPProdProjWithArgs___closed__1(); @@ -48425,6 +49555,14 @@ l_Array_mapIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2__ lean_mark_persistent(l_Array_mapIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___closed__1); l_Lean_Tactic_FunInd_abstractIndependentMVars___boxed__const__1 = _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___boxed__const__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_abstractIndependentMVars___boxed__const__1); +l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___closed__1 = _init_l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___closed__1); +l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___closed__2 = _init_l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__1___closed__2); +l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3___closed__1 = _init_l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3___closed__1); +l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3___closed__2 = _init_l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_motiveUniverseParamPos___lambda__3___closed__2); l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__1 = _init_l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__1); l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__2 = _init_l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__2(); @@ -48455,48 +49593,52 @@ l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__14 = _init_l_Lean_Tactic_ lean_mark_persistent(l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__14); l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__15 = _init_l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__15(); lean_mark_persistent(l_Lean_Tactic_FunInd_findRecursor_err___rarg___closed__15); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__1); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__2 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__2); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__3 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__3(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__3); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__4 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__4(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__3___closed__4); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__1(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__1); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__2 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__2(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__4___closed__2); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__1(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__1); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__2 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__2(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__6___closed__2); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__1(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__1); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__2 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__2(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__2); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__3 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__3(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__3); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__4 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__4(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__12___closed__4); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__1(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__1); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__2 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__2(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__2); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__3 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__3(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__3); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__4 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__4(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__4); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__5 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__5(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__5); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__6 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__6(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__6); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__7 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__7(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__7); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__8 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__8(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__8); -l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__9 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__9(); -lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__6___rarg___lambda__13___closed__9); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__1); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__2 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__2); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__3 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__3(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__3); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__4 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__4(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__3___closed__4); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___closed__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___closed__1); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___closed__2 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___closed__2(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__4___closed__2); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__1(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__1); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__2 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__2(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__6___closed__2); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13___closed__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13___closed__1(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13___closed__1); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13___closed__2 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13___closed__2(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__13___closed__2); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__1(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__1); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__2 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__2(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__2); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__3 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__3(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__3); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__4 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__4(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__14___closed__4); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__1(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__1); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__2 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__2(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__2); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__3 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__3(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__3); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__4 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__4(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__4); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__5 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__5(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__5); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__6 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__6(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__6); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__7 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__7(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__7); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__8 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__8(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__8); +l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__9 = _init_l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__9(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_findRecursor___spec__7___rarg___lambda__15___closed__9); l_Lean_Tactic_FunInd_findRecursor___rarg___closed__1 = _init_l_Lean_Tactic_FunInd_findRecursor___rarg___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_findRecursor___rarg___closed__1); l_Lean_getConstInfoDefn___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__2___closed__1 = _init_l_Lean_getConstInfoDefn___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__2___closed__1(); @@ -48621,63 +49763,63 @@ l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__2 = _init_l_Lean_Tact lean_mark_persistent(l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__2); l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__3 = _init_l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__3(); lean_mark_persistent(l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__3); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__1 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__1); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__2 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__2); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__3 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__3(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__3); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__4 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__4(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__4); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__5 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__5(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__5); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__6 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__6(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__6); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__7 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__7(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__7); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__8 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__8(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__8); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__9 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__9(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__9); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__10 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__10(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__10); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__11 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__11(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__11); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__12 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__12(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__12); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__13 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__13(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__13); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__14 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__14(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__14); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__15 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__15(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__15); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__16 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__16(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__16); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__17 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__17(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__17); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__18 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__18(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__18); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__19 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__19(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__19); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__20 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__20(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__20); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__21 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__21(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__21); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__22 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__22(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__22); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__23 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__23(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__23); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__24 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__24(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__24); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__25 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__25(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__25); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__26 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__26(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____lambda__2___closed__26); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____closed__1 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____closed__1(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____closed__1); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____closed__2 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____closed__2(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892____closed__2); -if (builtin) {res = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_11892_(lean_io_mk_world()); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__1 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__1); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__2 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__2); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__3 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__3(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__3); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__4); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__5 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__5(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__5); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__6 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__6(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__6); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__7 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__7(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__7); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__8 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__8(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__8); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__9 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__9(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__9); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__10 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__10(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__10); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__11 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__11(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__11); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__12 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__12(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__12); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__13 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__13(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__13); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__14 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__14(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__14); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__15 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__15(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__15); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__16 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__16(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__16); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__17 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__17(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__17); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__18 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__18(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__18); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__19 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__19(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__19); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__20 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__20(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__20); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__21 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__21(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__21); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__22 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__22(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__22); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__23 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__23(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__23); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__24 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__24(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__24); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__25 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__25(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__25); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__26 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__26(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____lambda__2___closed__26); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____closed__1 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____closed__1); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____closed__2 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778____closed__2); +if (builtin) {res = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_12778_(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/Attr.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Attr.c index b786cc8e9140..754706525e5c 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Attr.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Attr.c @@ -21,7 +21,6 @@ LEAN_EXPORT lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_init static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__10; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_5_(lean_object*); static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_58____closed__2; -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___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___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__31; @@ -88,6 +87,7 @@ static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr_ static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__28; lean_object* l_instHashableProd___rarg___boxed(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*); static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_421____closed__2; lean_object* l_Lean_Meta_Simp_registerSimprocAttr(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_421____closed__9; @@ -468,7 +468,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Gr 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); +x_9 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(x_1, x_7, x_8, x_2, x_3, x_4, x_5, x_6); return x_9; } } @@ -945,7 +945,7 @@ x_21 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindC 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); +x_22 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___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; diff --git a/stage0/stdlib/Lean/Meta/Tactic/NormCast.c b/stage0/stdlib/Lean/Meta/Tactic/NormCast.c index 78f37c069a83..756121d7cfdd 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/NormCast.c +++ b/stage0/stdlib/Lean/Meta/Tactic/NormCast.c @@ -39,7 +39,6 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_NormCast_countCoe LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_NormCast_0__Lean_Meta_NormCast_reprLabel____x40_Lean_Meta_Tactic_NormCast___hyg_108_(uint8_t, 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_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_NormCast_countCoes___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_NormCast_classifyType___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_NormCast_countCoes___spec__2(lean_object*, size_t, size_t, lean_object*); @@ -172,6 +171,7 @@ lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Meta_NormCast_countCoes___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_Meta_NormCast_instInhabitedNormCastExtension___lambda__5(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_NormCast_classifyType___lambda__4___closed__5; +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_NormCast_pushCastExt; 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*); @@ -1413,7 +1413,7 @@ lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -x_16 = l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1___rarg(x_11, x_14, x_15, x_4, x_5, x_6, x_7, x_8); +x_16 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___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; @@ -1510,7 +1510,7 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_23 = l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1___rarg(x_20, x_21, x_22, x_8, x_9, x_10, x_11, x_12); +x_23 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(x_20, x_21, x_22, x_8, x_9, x_10, x_11, x_12); if (lean_obj_tag(x_23) == 0) { lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; @@ -1938,7 +1938,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_NormCast_countCoes(lean_object* x_1, lean_o lean_object* x_7; uint8_t x_8; lean_object* x_9; x_7 = l_Lean_Meta_NormCast_countCoes___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); +x_9 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(x_1, x_7, x_8, x_2, x_3, x_4, x_5, x_6); return x_9; } } @@ -1999,7 +1999,7 @@ lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -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); +x_9 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(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; @@ -2688,7 +2688,7 @@ lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_9); -x_13 = l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1___rarg(x_9, x_11, x_12, x_3, x_4, x_5, x_6, x_7); +x_13 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(x_9, x_11, x_12, x_3, x_4, x_5, x_6, x_7); if (lean_obj_tag(x_13) == 0) { lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; @@ -2793,7 +2793,7 @@ lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_33); -x_37 = l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1___rarg(x_33, x_35, x_36, x_3, x_4, x_5, x_6, x_7); +x_37 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(x_33, x_35, x_36, x_3, x_4, x_5, x_6, x_7); if (lean_obj_tag(x_37) == 0) { lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; diff --git a/stage0/stdlib/Lean/Meta/Tactic/Simp/Attr.c b/stage0/stdlib/Lean/Meta/Tactic/Simp/Attr.c index 4ff5af32c60b..cf124e51b37f 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Simp/Attr.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Simp/Attr.c @@ -30,23 +30,29 @@ static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_Attr___hyg_7 static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__3; lean_object* lean_mk_empty_array_with_capacity(lean_object*); static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__22; +LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_ConstantInfo_type(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_mkSimpAttr(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint32_t l_UInt32_ofNatTruncate(lean_object*); lean_object* l_Lean_Meta_isProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_HashMap_insert___at_Lean_Meta_registerSimpAttr___spec__1(lean_object*, lean_object*, lean_object*); static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__9; +lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); static lean_object* l_Lean_Meta_mkSimpAttr___lambda__1___closed__15; lean_object* lean_array_push(lean_object*, lean_object*); static lean_object* l_Lean_Meta_mkSimpAttr___lambda__1___closed__8; lean_object* lean_mk_array(lean_object*, lean_object*); static lean_object* l_Lean_Meta_mkSimpAttr___lambda__1___closed__6; static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__21; +lean_object* l_Lean_replaceRef(lean_object*, lean_object*); +lean_object* l_Lean_Syntax_getPos_x3f(lean_object*, uint8_t); lean_object* lean_array_fget(lean_object*, lean_object*); extern lean_object* l_Lean_Expr_instBEq; static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__2; lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Syntax_getTailPos_x3f(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_AssocList_contains___at_Lean_Meta_registerSimpAttr___spec__2___boxed(lean_object*, lean_object*); +lean_object* l_Lean_MessageData_hasSyntheticSorry(lean_object*); static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__11; uint8_t l_Lean_ConstantInfo_hasValue(lean_object*); lean_object* l_Lean_Attribute_add(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); @@ -54,10 +60,13 @@ static lean_object* l_Lean_Meta_mkSimpAttr___lambda__1___closed__13; static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__17; LEAN_EXPORT lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8_; static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__26; +static lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1___closed__1; lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___closed__2; uint8_t l_Lean_Meta_hasSmartUnfoldingDecl(lean_object*, lean_object*); +uint8_t lean_string_dec_eq(lean_object*, lean_object*); uint8_t l_Lean_Meta_SimpTheorems_isLemma(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6(lean_object*, lean_object*, uint8_t, 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*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Context_mkDefault___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___closed__4; @@ -96,11 +105,12 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Context_mkDefault___boxed(lean_object* lean_object* l_Lean_Meta_getEqnsFor_x3f(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_mkSimpAttr___lambda__3___boxed(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_throwError___at_Lean_registerTagAttribute___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__1; static lean_object* l_Lean_Meta_mkSimpAttr___lambda__1___closed__11; lean_object* lean_st_mk_ref(lean_object*, lean_object*); static lean_object* l_Lean_Meta_getSEvalTheorems___closed__1; +uint8_t l_Lean_MessageData_hasTag(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_ScopedEnvExtension_modifyState___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Simp_isSimproc(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_registerSimpAttr___closed__1; @@ -113,10 +123,15 @@ 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_Simp_Context_mkDefault(lean_object*, lean_object*); static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__25; +extern lean_object* l_Lean_warningAsError; static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__7; +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_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_simpExtension; +LEAN_EXPORT uint8_t l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2(lean_object*); lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__4; +LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__11; LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_Attr___hyg_713_(lean_object*); @@ -129,6 +144,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_registerSimpAttr(lean_object*, lean_object* size_t lean_hashmap_mk_idx(lean_object*, uint64_t); static lean_object* l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___closed__3; LEAN_EXPORT lean_object* l_Lean_HashMapImp_expand___at_Lean_Meta_registerSimpAttr___spec__3(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_log___at_Lean_Meta_mkSimpAttr___spec__5(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__24; static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_Attr___hyg_687____closed__2; lean_object* l_Lean_Meta_SimpExtension_getTheorems(lean_object*, lean_object*, lean_object*, lean_object*); @@ -140,15 +156,19 @@ static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_Attr___hyg_6 LEAN_EXPORT lean_object* l_Lean_Meta_mkSimpAttr___lambda__2___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_AssocList_contains___at_Lean_Meta_registerSimpAttr___spec__2(lean_object*, lean_object*); static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__4; +static lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__2; lean_object* l_Lean_Meta_Simp_isBuiltinSimproc(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_mkSimpAttr___lambda__1___closed__2; +static lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___lambda__1___boxed(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___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__1; +LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___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_mkSimpAttr___lambda__1___closed__17; static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__7; static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__29; extern lean_object* l_Lean_Meta_instInhabitedSimpTheorems; +LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___boxed(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___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__5; uint8_t l_Lean_Meta_SimpTheorems_isDeclToUnfold(lean_object*, lean_object*); @@ -175,6 +195,7 @@ extern lean_object* l_Lean_Meta_Simp_defaultMaxSteps; static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__23; extern lean_object* l_Lean_Meta_simpExtensionMapRef; lean_object* lean_array_uget(lean_object*, size_t); +static lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__1; lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__6; lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); @@ -184,17 +205,22 @@ static lean_object* l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___s static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__8; lean_object* l_Lean_Meta_InfoCacheKey_instHashable___boxed(lean_object*); lean_object* lean_array_get_size(lean_object*); +uint8_t l___private_Lean_Message_0__Lean_beqMessageSeverity____x40_Lean_Message___hyg_103_(uint8_t, uint8_t); uint8_t lean_nat_dec_le(lean_object*, lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_getSimpTheorems(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_log___at_Lean_Meta_mkSimpAttr___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_logWarning___at_Lean_Meta_mkSimpAttr___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_Attr___hyg_713____closed__5; lean_object* l_Lean_Meta_SimpTheorems_eraseCore(lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_Attr___hyg_713____closed__4; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); +static lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__3; lean_object* l_Lean_MessageData_ofName(lean_object*); static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__8; +lean_object* l_Lean_MessageLog_add(lean_object*, lean_object*); lean_object* l_Lean_Meta_Simp_simpAttrNameToSimprocAttrName(lean_object*); lean_object* l___private_Lean_Data_HashMap_0__Lean_numBucketsForCapacity(lean_object*); static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__1() { @@ -930,6 +956,1051 @@ return x_27; } } } +static lean_object* _init_l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("", 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(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) { +_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; lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_10 = lean_ctor_get(x_7, 6); +x_11 = lean_ctor_get(x_7, 7); +lean_inc(x_11); +lean_inc(x_10); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_10); +lean_ctor_set(x_12, 1, x_11); +x_13 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_1); +x_14 = 0; +x_15 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1___closed__1; +x_16 = lean_alloc_ctor(0, 5, 2); +lean_ctor_set(x_16, 0, x_2); +lean_ctor_set(x_16, 1, x_3); +lean_ctor_set(x_16, 2, x_4); +lean_ctor_set(x_16, 3, x_15); +lean_ctor_set(x_16, 4, x_13); +lean_ctor_set_uint8(x_16, sizeof(void*)*5, x_14); +lean_ctor_set_uint8(x_16, sizeof(void*)*5 + 1, x_5); +x_17 = lean_st_ref_take(x_8, 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 = !lean_is_exclusive(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_21 = lean_ctor_get(x_18, 5); +x_22 = l_Lean_MessageLog_add(x_16, x_21); +lean_ctor_set(x_18, 5, x_22); +x_23 = lean_st_ref_set(x_8, x_18, x_19); +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 +{ +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_30 = lean_ctor_get(x_18, 0); +x_31 = lean_ctor_get(x_18, 1); +x_32 = lean_ctor_get(x_18, 2); +x_33 = lean_ctor_get(x_18, 3); +x_34 = lean_ctor_get(x_18, 4); +x_35 = lean_ctor_get(x_18, 5); +x_36 = lean_ctor_get(x_18, 6); +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_18); +x_37 = l_Lean_MessageLog_add(x_16, x_35); +x_38 = lean_alloc_ctor(0, 7, 0); +lean_ctor_set(x_38, 0, x_30); +lean_ctor_set(x_38, 1, x_31); +lean_ctor_set(x_38, 2, x_32); +lean_ctor_set(x_38, 3, x_33); +lean_ctor_set(x_38, 4, x_34); +lean_ctor_set(x_38, 5, x_37); +lean_ctor_set(x_38, 6, x_36); +x_39 = lean_st_ref_set(x_8, x_38, x_19); +x_40 = lean_ctor_get(x_39, 1); +lean_inc(x_40); +if (lean_is_exclusive(x_39)) { + lean_ctor_release(x_39, 0); + lean_ctor_release(x_39, 1); + x_41 = x_39; +} else { + lean_dec_ref(x_39); + x_41 = lean_box(0); +} +x_42 = lean_box(0); +if (lean_is_scalar(x_41)) { + x_43 = lean_alloc_ctor(0, 2, 0); +} else { + x_43 = x_41; +} +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_40); +return x_43; +} +} +} +static lean_object* _init_l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Elab", 4); +return x_1; +} +} +static lean_object* _init_l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("unsolvedGoals", 13); +return x_1; +} +} +static lean_object* _init_l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("synthPlaceholder", 16); +return x_1; +} +} +LEAN_EXPORT uint8_t l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2(lean_object* x_1) { +_start: +{ +if (lean_obj_tag(x_1) == 1) +{ +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, 1); +x_5 = lean_ctor_get(x_2, 1); +x_6 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___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___auto____x40_Lean_Meta_Tactic_Simp_Attr___hyg_8____closed__3; +x_9 = lean_string_dec_eq(x_5, x_8); +if (x_9 == 0) +{ +uint8_t x_10; +x_10 = 0; +return x_10; +} +else +{ +lean_object* x_11; uint8_t x_12; +x_11 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__2; +x_12 = lean_string_dec_eq(x_4, x_11); +return x_12; +} +} +else +{ +lean_object* x_13; uint8_t x_14; +x_13 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__3; +x_14 = lean_string_dec_eq(x_4, x_13); +return x_14; +} +} +else +{ +uint8_t x_15; +x_15 = 0; +return x_15; +} +} +else +{ +uint8_t x_16; +x_16 = 0; +return x_16; +} +} +else +{ +uint8_t x_17; +x_17 = 0; +return x_17; +} +} +} +static lean_object* _init_l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___boxed), 1, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_warningAsError; +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6(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; uint8_t x_182; uint8_t x_183; +x_182 = 2; +x_183 = l___private_Lean_Message_0__Lean_beqMessageSeverity____x40_Lean_Message___hyg_103_(x_3, x_182); +if (x_183 == 0) +{ +lean_object* x_184; +x_184 = lean_box(0); +x_7 = x_184; +goto block_181; +} +else +{ +lean_object* x_185; uint8_t x_186; +lean_inc(x_2); +x_185 = l_Lean_MessageData_hasSyntheticSorry(x_2); +x_186 = lean_unbox(x_185); +lean_dec(x_185); +if (x_186 == 0) +{ +lean_object* x_187; +x_187 = lean_box(0); +x_7 = x_187; +goto block_181; +} +else +{ +lean_object* x_188; lean_object* x_189; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_188 = lean_box(0); +x_189 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_189, 0, x_188); +lean_ctor_set(x_189, 1, x_6); +return x_189; +} +} +block_181: +{ +uint8_t x_8; lean_object* x_175; uint8_t x_176; uint8_t x_177; +lean_dec(x_7); +x_175 = lean_ctor_get(x_4, 2); +lean_inc(x_175); +x_176 = 1; +x_177 = l___private_Lean_Message_0__Lean_beqMessageSeverity____x40_Lean_Message___hyg_103_(x_3, x_176); +if (x_177 == 0) +{ +lean_dec(x_175); +x_8 = x_3; +goto block_174; +} +else +{ +lean_object* x_178; uint8_t x_179; +x_178 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__2; +x_179 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_175, x_178); +lean_dec(x_175); +if (x_179 == 0) +{ +x_8 = x_3; +goto block_174; +} +else +{ +uint8_t x_180; +x_180 = 2; +x_8 = x_180; +goto block_174; +} +} +block_174: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; +x_9 = lean_ctor_get(x_4, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_4, 1); +lean_inc(x_10); +x_11 = lean_ctor_get(x_4, 5); +lean_inc(x_11); +x_12 = lean_ctor_get_uint8(x_4, sizeof(void*)*12 + 1); +x_13 = l_Lean_replaceRef(x_1, x_11); +lean_dec(x_11); +lean_dec(x_1); +x_14 = 0; +x_15 = l_Lean_Syntax_getPos_x3f(x_13, x_14); +x_16 = l_Lean_Syntax_getTailPos_x3f(x_13, x_14); +if (lean_obj_tag(x_15) == 0) +{ +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; uint8_t x_18; +x_17 = l_Lean_addMessageContextPartial___at_Lean_Core_instAddMessageContextCoreM___spec__1(x_2, 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; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_19 = lean_ctor_get(x_17, 0); +x_20 = lean_ctor_get(x_17, 1); +x_21 = lean_unsigned_to_nat(0u); +x_22 = l_Lean_FileMap_toPosition(x_10, x_21); +lean_inc(x_22); +x_23 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_23, 0, x_22); +if (x_12 == 0) +{ +lean_object* x_24; lean_object* x_25; +lean_free_object(x_17); +x_24 = lean_box(0); +x_25 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_19, x_9, x_22, x_23, x_8, x_24, x_4, x_5, x_20); +lean_dec(x_5); +lean_dec(x_4); +return x_25; +} +else +{ +lean_object* x_26; uint8_t x_27; +x_26 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1; +lean_inc(x_19); +x_27 = l_Lean_MessageData_hasTag(x_26, x_19); +if (x_27 == 0) +{ +lean_object* x_28; +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_19); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_28 = lean_box(0); +lean_ctor_set(x_17, 0, x_28); +return x_17; +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_free_object(x_17); +x_29 = lean_box(0); +x_30 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_19, x_9, x_22, x_23, x_8, x_29, x_4, x_5, x_20); +lean_dec(x_5); +lean_dec(x_4); +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_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_unsigned_to_nat(0u); +x_34 = l_Lean_FileMap_toPosition(x_10, x_33); +lean_inc(x_34); +x_35 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_35, 0, x_34); +if (x_12 == 0) +{ +lean_object* x_36; lean_object* x_37; +x_36 = lean_box(0); +x_37 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_31, x_9, x_34, x_35, x_8, x_36, x_4, x_5, x_32); +lean_dec(x_5); +lean_dec(x_4); +return x_37; +} +else +{ +lean_object* x_38; uint8_t x_39; +x_38 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1; +lean_inc(x_31); +x_39 = l_Lean_MessageData_hasTag(x_38, x_31); +if (x_39 == 0) +{ +lean_object* x_40; lean_object* x_41; +lean_dec(x_35); +lean_dec(x_34); +lean_dec(x_31); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_40 = lean_box(0); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_40); +lean_ctor_set(x_41, 1, x_32); +return x_41; +} +else +{ +lean_object* x_42; lean_object* x_43; +x_42 = lean_box(0); +x_43 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_31, x_9, x_34, x_35, x_8, x_42, x_4, x_5, x_32); +lean_dec(x_5); +lean_dec(x_4); +return x_43; +} +} +} +} +else +{ +uint8_t x_44; +x_44 = !lean_is_exclusive(x_16); +if (x_44 == 0) +{ +lean_object* x_45; lean_object* x_46; uint8_t x_47; +x_45 = lean_ctor_get(x_16, 0); +x_46 = l_Lean_addMessageContextPartial___at_Lean_Core_instAddMessageContextCoreM___spec__1(x_2, x_4, x_5, x_6); +x_47 = !lean_is_exclusive(x_46); +if (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_46, 0); +x_49 = lean_ctor_get(x_46, 1); +x_50 = lean_unsigned_to_nat(0u); +lean_inc(x_10); +x_51 = l_Lean_FileMap_toPosition(x_10, x_50); +x_52 = l_Lean_FileMap_toPosition(x_10, x_45); +lean_dec(x_45); +lean_ctor_set(x_16, 0, x_52); +if (x_12 == 0) +{ +lean_object* x_53; lean_object* x_54; +lean_free_object(x_46); +x_53 = lean_box(0); +x_54 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_48, x_9, x_51, x_16, x_8, x_53, x_4, x_5, x_49); +lean_dec(x_5); +lean_dec(x_4); +return x_54; +} +else +{ +lean_object* x_55; uint8_t x_56; +x_55 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1; +lean_inc(x_48); +x_56 = l_Lean_MessageData_hasTag(x_55, x_48); +if (x_56 == 0) +{ +lean_object* x_57; +lean_dec(x_16); +lean_dec(x_51); +lean_dec(x_48); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_57 = lean_box(0); +lean_ctor_set(x_46, 0, x_57); +return x_46; +} +else +{ +lean_object* x_58; lean_object* x_59; +lean_free_object(x_46); +x_58 = lean_box(0); +x_59 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_48, x_9, x_51, x_16, x_8, x_58, x_4, x_5, x_49); +lean_dec(x_5); +lean_dec(x_4); +return x_59; +} +} +} +else +{ +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_46, 0); +x_61 = lean_ctor_get(x_46, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_46); +x_62 = lean_unsigned_to_nat(0u); +lean_inc(x_10); +x_63 = l_Lean_FileMap_toPosition(x_10, x_62); +x_64 = l_Lean_FileMap_toPosition(x_10, x_45); +lean_dec(x_45); +lean_ctor_set(x_16, 0, x_64); +if (x_12 == 0) +{ +lean_object* x_65; lean_object* x_66; +x_65 = lean_box(0); +x_66 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_60, x_9, x_63, x_16, x_8, x_65, x_4, x_5, x_61); +lean_dec(x_5); +lean_dec(x_4); +return x_66; +} +else +{ +lean_object* x_67; uint8_t x_68; +x_67 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1; +lean_inc(x_60); +x_68 = l_Lean_MessageData_hasTag(x_67, x_60); +if (x_68 == 0) +{ +lean_object* x_69; lean_object* x_70; +lean_dec(x_16); +lean_dec(x_63); +lean_dec(x_60); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +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_61); +return x_70; +} +else +{ +lean_object* x_71; lean_object* x_72; +x_71 = lean_box(0); +x_72 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_60, x_9, x_63, x_16, x_8, x_71, x_4, x_5, x_61); +lean_dec(x_5); +lean_dec(x_4); +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; lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_73 = lean_ctor_get(x_16, 0); +lean_inc(x_73); +lean_dec(x_16); +x_74 = l_Lean_addMessageContextPartial___at_Lean_Core_instAddMessageContextCoreM___spec__1(x_2, x_4, x_5, x_6); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +x_76 = lean_ctor_get(x_74, 1); +lean_inc(x_76); +if (lean_is_exclusive(x_74)) { + lean_ctor_release(x_74, 0); + lean_ctor_release(x_74, 1); + x_77 = x_74; +} else { + lean_dec_ref(x_74); + x_77 = lean_box(0); +} +x_78 = lean_unsigned_to_nat(0u); +lean_inc(x_10); +x_79 = l_Lean_FileMap_toPosition(x_10, x_78); +x_80 = l_Lean_FileMap_toPosition(x_10, x_73); +lean_dec(x_73); +x_81 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_81, 0, x_80); +if (x_12 == 0) +{ +lean_object* x_82; lean_object* x_83; +lean_dec(x_77); +x_82 = lean_box(0); +x_83 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_75, x_9, x_79, x_81, x_8, x_82, x_4, x_5, x_76); +lean_dec(x_5); +lean_dec(x_4); +return x_83; +} +else +{ +lean_object* x_84; uint8_t x_85; +x_84 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1; +lean_inc(x_75); +x_85 = l_Lean_MessageData_hasTag(x_84, x_75); +if (x_85 == 0) +{ +lean_object* x_86; lean_object* x_87; +lean_dec(x_81); +lean_dec(x_79); +lean_dec(x_75); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_86 = lean_box(0); +if (lean_is_scalar(x_77)) { + x_87 = lean_alloc_ctor(0, 2, 0); +} else { + x_87 = x_77; +} +lean_ctor_set(x_87, 0, x_86); +lean_ctor_set(x_87, 1, x_76); +return x_87; +} +else +{ +lean_object* x_88; lean_object* x_89; +lean_dec(x_77); +x_88 = lean_box(0); +x_89 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_75, x_9, x_79, x_81, x_8, x_88, x_4, x_5, x_76); +lean_dec(x_5); +lean_dec(x_4); +return x_89; +} +} +} +} +} +else +{ +if (lean_obj_tag(x_16) == 0) +{ +uint8_t x_90; +x_90 = !lean_is_exclusive(x_15); +if (x_90 == 0) +{ +lean_object* x_91; lean_object* x_92; uint8_t x_93; +x_91 = lean_ctor_get(x_15, 0); +x_92 = l_Lean_addMessageContextPartial___at_Lean_Core_instAddMessageContextCoreM___spec__1(x_2, x_4, x_5, x_6); +x_93 = !lean_is_exclusive(x_92); +if (x_93 == 0) +{ +lean_object* x_94; lean_object* x_95; lean_object* x_96; +x_94 = lean_ctor_get(x_92, 0); +x_95 = lean_ctor_get(x_92, 1); +x_96 = l_Lean_FileMap_toPosition(x_10, x_91); +lean_dec(x_91); +lean_inc(x_96); +lean_ctor_set(x_15, 0, x_96); +if (x_12 == 0) +{ +lean_object* x_97; lean_object* x_98; +lean_free_object(x_92); +x_97 = lean_box(0); +x_98 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_94, x_9, x_96, x_15, x_8, x_97, x_4, x_5, x_95); +lean_dec(x_5); +lean_dec(x_4); +return x_98; +} +else +{ +lean_object* x_99; uint8_t x_100; +x_99 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1; +lean_inc(x_94); +x_100 = l_Lean_MessageData_hasTag(x_99, x_94); +if (x_100 == 0) +{ +lean_object* x_101; +lean_dec(x_15); +lean_dec(x_96); +lean_dec(x_94); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_101 = lean_box(0); +lean_ctor_set(x_92, 0, x_101); +return x_92; +} +else +{ +lean_object* x_102; lean_object* x_103; +lean_free_object(x_92); +x_102 = lean_box(0); +x_103 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_94, x_9, x_96, x_15, x_8, x_102, x_4, x_5, x_95); +lean_dec(x_5); +lean_dec(x_4); +return x_103; +} +} +} +else +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; +x_104 = lean_ctor_get(x_92, 0); +x_105 = lean_ctor_get(x_92, 1); +lean_inc(x_105); +lean_inc(x_104); +lean_dec(x_92); +x_106 = l_Lean_FileMap_toPosition(x_10, x_91); +lean_dec(x_91); +lean_inc(x_106); +lean_ctor_set(x_15, 0, x_106); +if (x_12 == 0) +{ +lean_object* x_107; lean_object* x_108; +x_107 = lean_box(0); +x_108 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_104, x_9, x_106, x_15, x_8, x_107, x_4, x_5, x_105); +lean_dec(x_5); +lean_dec(x_4); +return x_108; +} +else +{ +lean_object* x_109; uint8_t x_110; +x_109 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1; +lean_inc(x_104); +x_110 = l_Lean_MessageData_hasTag(x_109, x_104); +if (x_110 == 0) +{ +lean_object* x_111; lean_object* x_112; +lean_dec(x_15); +lean_dec(x_106); +lean_dec(x_104); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_111 = lean_box(0); +x_112 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_112, 0, x_111); +lean_ctor_set(x_112, 1, x_105); +return x_112; +} +else +{ +lean_object* x_113; lean_object* x_114; +x_113 = lean_box(0); +x_114 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_104, x_9, x_106, x_15, x_8, x_113, x_4, x_5, x_105); +lean_dec(x_5); +lean_dec(x_4); +return x_114; +} +} +} +} +else +{ +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; +x_115 = lean_ctor_get(x_15, 0); +lean_inc(x_115); +lean_dec(x_15); +x_116 = l_Lean_addMessageContextPartial___at_Lean_Core_instAddMessageContextCoreM___spec__1(x_2, x_4, x_5, x_6); +x_117 = lean_ctor_get(x_116, 0); +lean_inc(x_117); +x_118 = lean_ctor_get(x_116, 1); +lean_inc(x_118); +if (lean_is_exclusive(x_116)) { + lean_ctor_release(x_116, 0); + lean_ctor_release(x_116, 1); + x_119 = x_116; +} else { + lean_dec_ref(x_116); + x_119 = lean_box(0); +} +x_120 = l_Lean_FileMap_toPosition(x_10, x_115); +lean_dec(x_115); +lean_inc(x_120); +x_121 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_121, 0, x_120); +if (x_12 == 0) +{ +lean_object* x_122; lean_object* x_123; +lean_dec(x_119); +x_122 = lean_box(0); +x_123 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_117, x_9, x_120, x_121, x_8, x_122, x_4, x_5, x_118); +lean_dec(x_5); +lean_dec(x_4); +return x_123; +} +else +{ +lean_object* x_124; uint8_t x_125; +x_124 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1; +lean_inc(x_117); +x_125 = l_Lean_MessageData_hasTag(x_124, x_117); +if (x_125 == 0) +{ +lean_object* x_126; lean_object* x_127; +lean_dec(x_121); +lean_dec(x_120); +lean_dec(x_117); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_126 = lean_box(0); +if (lean_is_scalar(x_119)) { + x_127 = lean_alloc_ctor(0, 2, 0); +} else { + x_127 = x_119; +} +lean_ctor_set(x_127, 0, x_126); +lean_ctor_set(x_127, 1, x_118); +return x_127; +} +else +{ +lean_object* x_128; lean_object* x_129; +lean_dec(x_119); +x_128 = lean_box(0); +x_129 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_117, x_9, x_120, x_121, x_8, x_128, x_4, x_5, x_118); +lean_dec(x_5); +lean_dec(x_4); +return x_129; +} +} +} +} +else +{ +lean_object* x_130; uint8_t x_131; +x_130 = lean_ctor_get(x_15, 0); +lean_inc(x_130); +lean_dec(x_15); +x_131 = !lean_is_exclusive(x_16); +if (x_131 == 0) +{ +lean_object* x_132; lean_object* x_133; uint8_t x_134; +x_132 = lean_ctor_get(x_16, 0); +x_133 = l_Lean_addMessageContextPartial___at_Lean_Core_instAddMessageContextCoreM___spec__1(x_2, x_4, x_5, x_6); +x_134 = !lean_is_exclusive(x_133); +if (x_134 == 0) +{ +lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; +x_135 = lean_ctor_get(x_133, 0); +x_136 = lean_ctor_get(x_133, 1); +lean_inc(x_10); +x_137 = l_Lean_FileMap_toPosition(x_10, x_130); +lean_dec(x_130); +x_138 = l_Lean_FileMap_toPosition(x_10, x_132); +lean_dec(x_132); +lean_ctor_set(x_16, 0, x_138); +if (x_12 == 0) +{ +lean_object* x_139; lean_object* x_140; +lean_free_object(x_133); +x_139 = lean_box(0); +x_140 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_135, x_9, x_137, x_16, x_8, x_139, x_4, x_5, x_136); +lean_dec(x_5); +lean_dec(x_4); +return x_140; +} +else +{ +lean_object* x_141; uint8_t x_142; +x_141 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1; +lean_inc(x_135); +x_142 = l_Lean_MessageData_hasTag(x_141, x_135); +if (x_142 == 0) +{ +lean_object* x_143; +lean_dec(x_16); +lean_dec(x_137); +lean_dec(x_135); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_143 = lean_box(0); +lean_ctor_set(x_133, 0, x_143); +return x_133; +} +else +{ +lean_object* x_144; lean_object* x_145; +lean_free_object(x_133); +x_144 = lean_box(0); +x_145 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_135, x_9, x_137, x_16, x_8, x_144, x_4, x_5, x_136); +lean_dec(x_5); +lean_dec(x_4); +return x_145; +} +} +} +else +{ +lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; +x_146 = lean_ctor_get(x_133, 0); +x_147 = lean_ctor_get(x_133, 1); +lean_inc(x_147); +lean_inc(x_146); +lean_dec(x_133); +lean_inc(x_10); +x_148 = l_Lean_FileMap_toPosition(x_10, x_130); +lean_dec(x_130); +x_149 = l_Lean_FileMap_toPosition(x_10, x_132); +lean_dec(x_132); +lean_ctor_set(x_16, 0, x_149); +if (x_12 == 0) +{ +lean_object* x_150; lean_object* x_151; +x_150 = lean_box(0); +x_151 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_146, x_9, x_148, x_16, x_8, x_150, x_4, x_5, x_147); +lean_dec(x_5); +lean_dec(x_4); +return x_151; +} +else +{ +lean_object* x_152; uint8_t x_153; +x_152 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1; +lean_inc(x_146); +x_153 = l_Lean_MessageData_hasTag(x_152, x_146); +if (x_153 == 0) +{ +lean_object* x_154; lean_object* x_155; +lean_dec(x_16); +lean_dec(x_148); +lean_dec(x_146); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_154 = lean_box(0); +x_155 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_155, 0, x_154); +lean_ctor_set(x_155, 1, x_147); +return x_155; +} +else +{ +lean_object* x_156; lean_object* x_157; +x_156 = lean_box(0); +x_157 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_146, x_9, x_148, x_16, x_8, x_156, x_4, x_5, x_147); +lean_dec(x_5); +lean_dec(x_4); +return x_157; +} +} +} +} +else +{ +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; +x_158 = lean_ctor_get(x_16, 0); +lean_inc(x_158); +lean_dec(x_16); +x_159 = l_Lean_addMessageContextPartial___at_Lean_Core_instAddMessageContextCoreM___spec__1(x_2, x_4, x_5, x_6); +x_160 = lean_ctor_get(x_159, 0); +lean_inc(x_160); +x_161 = lean_ctor_get(x_159, 1); +lean_inc(x_161); +if (lean_is_exclusive(x_159)) { + lean_ctor_release(x_159, 0); + lean_ctor_release(x_159, 1); + x_162 = x_159; +} else { + lean_dec_ref(x_159); + x_162 = lean_box(0); +} +lean_inc(x_10); +x_163 = l_Lean_FileMap_toPosition(x_10, x_130); +lean_dec(x_130); +x_164 = l_Lean_FileMap_toPosition(x_10, x_158); +lean_dec(x_158); +x_165 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_165, 0, x_164); +if (x_12 == 0) +{ +lean_object* x_166; lean_object* x_167; +lean_dec(x_162); +x_166 = lean_box(0); +x_167 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_160, x_9, x_163, x_165, x_8, x_166, x_4, x_5, x_161); +lean_dec(x_5); +lean_dec(x_4); +return x_167; +} +else +{ +lean_object* x_168; uint8_t x_169; +x_168 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1; +lean_inc(x_160); +x_169 = l_Lean_MessageData_hasTag(x_168, x_160); +if (x_169 == 0) +{ +lean_object* x_170; lean_object* x_171; +lean_dec(x_165); +lean_dec(x_163); +lean_dec(x_160); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_170 = lean_box(0); +if (lean_is_scalar(x_162)) { + x_171 = lean_alloc_ctor(0, 2, 0); +} else { + x_171 = x_162; +} +lean_ctor_set(x_171, 0, x_170); +lean_ctor_set(x_171, 1, x_161); +return x_171; +} +else +{ +lean_object* x_172; lean_object* x_173; +lean_dec(x_162); +x_172 = lean_box(0); +x_173 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_160, x_9, x_163, x_165, x_8, x_172, x_4, x_5, x_161); +lean_dec(x_5); +lean_dec(x_4); +return x_173; +} +} +} +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_log___at_Lean_Meta_mkSimpAttr___spec__5(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; +x_6 = lean_ctor_get(x_3, 5); +lean_inc(x_6); +x_7 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6(x_6, x_1, x_2, x_3, x_4, x_5); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_logWarning___at_Lean_Meta_mkSimpAttr___spec__4(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; uint8_t x_7; +x_5 = lean_ctor_get(x_2, 2); +lean_inc(x_5); +x_6 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__2; +x_7 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_5, x_6); +lean_dec(x_5); +if (x_7 == 0) +{ +uint8_t x_8; lean_object* x_9; +x_8 = 1; +x_9 = l_Lean_log___at_Lean_Meta_mkSimpAttr___spec__5(x_1, x_8, x_2, x_3, x_4); +return x_9; +} +else +{ +uint8_t x_10; lean_object* x_11; +x_10 = 2; +x_11 = l_Lean_log___at_Lean_Meta_mkSimpAttr___spec__5(x_1, x_10, x_2, x_3, x_4); +return x_11; +} +} +} LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___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: { @@ -978,105 +2049,100 @@ return x_2; LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___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_19; +lean_object* x_6; uint8_t x_18; lean_inc(x_2); lean_inc(x_1); -x_19 = l_Lean_Meta_SimpTheorems_isLemma(x_1, x_2); -if (x_19 == 0) +x_18 = l_Lean_Meta_SimpTheorems_isLemma(x_1, x_2); +if (x_18 == 0) { if (lean_obj_tag(x_2) == 0) { -uint8_t x_20; -x_20 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); -if (x_20 == 0) +uint8_t x_19; +x_19 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_19 == 0) { -lean_object* x_21; -lean_dec(x_1); -x_21 = lean_box(0); -x_6 = x_21; -goto block_18; +lean_object* x_20; +x_20 = lean_box(0); +x_6 = x_20; +goto block_17; } else { -uint8_t x_22; -x_22 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); -if (x_22 == 0) +uint8_t x_21; +x_21 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_21 == 0) { -lean_object* x_23; uint8_t x_24; -x_23 = lean_ctor_get(x_2, 0); -lean_inc(x_23); -lean_inc(x_23); +lean_object* x_22; uint8_t x_23; +x_22 = lean_ctor_get(x_2, 0); +lean_inc(x_22); +lean_inc(x_22); lean_inc(x_1); -x_24 = l_Lean_Meta_SimpTheorems_isDeclToUnfold(x_1, x_23); -if (x_24 == 0) +x_23 = l_Lean_Meta_SimpTheorems_isDeclToUnfold(x_1, x_22); +if (x_23 == 0) { -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_1, 5); -lean_inc(x_25); -x_26 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_erase___spec__1(x_25, x_23); -if (x_26 == 0) +lean_object* x_24; uint8_t x_25; +x_24 = lean_ctor_get(x_1, 5); +lean_inc(x_24); +x_25 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_erase___spec__1(x_24, x_22); +if (x_25 == 0) { -lean_object* x_27; -lean_dec(x_1); -x_27 = lean_box(0); -x_6 = x_27; -goto block_18; +lean_object* x_26; +x_26 = lean_box(0); +x_6 = x_26; +goto block_17; } else { -lean_object* x_28; lean_object* x_29; -x_28 = lean_box(0); -x_29 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___lambda__1(x_1, x_2, x_28, x_3, x_4, x_5); +lean_object* x_27; lean_object* x_28; +x_27 = lean_box(0); +x_28 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___lambda__1(x_1, x_2, x_27, x_3, x_4, x_5); lean_dec(x_4); lean_dec(x_3); -return x_29; +return x_28; } } else { -lean_object* x_30; lean_object* x_31; -lean_dec(x_23); -x_30 = lean_box(0); -x_31 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___lambda__1(x_1, x_2, x_30, x_3, x_4, x_5); +lean_object* x_29; lean_object* x_30; +lean_dec(x_22); +x_29 = lean_box(0); +x_30 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___lambda__1(x_1, x_2, x_29, x_3, x_4, x_5); lean_dec(x_4); lean_dec(x_3); -return x_31; +return x_30; } } else { -lean_object* x_32; -lean_dec(x_1); -x_32 = lean_box(0); -x_6 = x_32; -goto block_18; +lean_object* x_31; +x_31 = lean_box(0); +x_6 = x_31; +goto block_17; } } } else { -lean_object* x_33; -lean_dec(x_1); -x_33 = lean_box(0); -x_6 = x_33; -goto block_18; +lean_object* x_32; +x_32 = lean_box(0); +x_6 = x_32; +goto block_17; } } else { -lean_object* x_34; lean_object* x_35; -x_34 = lean_box(0); -x_35 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___lambda__1(x_1, x_2, x_34, x_3, x_4, x_5); +lean_object* x_33; lean_object* x_34; +x_33 = lean_box(0); +x_34 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___lambda__1(x_1, x_2, x_33, x_3, x_4, x_5); lean_dec(x_4); lean_dec(x_3); -return x_35; +return x_34; } -block_18: +block_17: { -lean_object* x_7; 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_7; lean_object* x_8; lean_object* x_9; 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_dec(x_6); x_7 = l_Lean_Meta_Origin_key(x_2); -lean_dec(x_2); x_8 = l_Lean_MessageData_ofName(x_7); x_9 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___closed__2; x_10 = lean_alloc_ctor(7, 2, 0); @@ -1086,27 +2152,19 @@ x_11 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___clos 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_registerTagAttribute___spec__1(x_12, x_3, x_4, x_5); -lean_dec(x_4); -lean_dec(x_3); -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_4); +lean_inc(x_3); +x_13 = l_Lean_logWarning___at_Lean_Meta_mkSimpAttr___spec__4(x_12, x_3, x_4, x_5); +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_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; -} +x_16 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___lambda__1(x_1, x_2, x_14, x_3, x_4, x_15); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_14); +return x_16; } } } @@ -2026,51 +3084,51 @@ return x_1; LEAN_EXPORT lean_object* l_Lean_Meta_mkSimpAttr___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; lean_object* x_8; lean_object* x_59; lean_object* x_60; uint8_t x_61; +uint8_t x_7; lean_object* x_8; lean_object* x_55; lean_object* x_56; uint8_t x_57; lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); -x_59 = l_Lean_Meta_Simp_isSimproc(x_3, x_4, x_5, x_6); +x_55 = l_Lean_Meta_Simp_isSimproc(x_3, x_4, x_5, x_6); +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_unbox(x_56); +if (x_57 == 0) +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; uint8_t x_62; +lean_dec(x_56); +x_58 = lean_ctor_get(x_55, 1); +lean_inc(x_58); +lean_dec(x_55); +lean_inc(x_3); +x_59 = l_Lean_Meta_Simp_isBuiltinSimproc(x_3, x_4, x_5, x_58); x_60 = lean_ctor_get(x_59, 0); lean_inc(x_60); -x_61 = lean_unbox(x_60); -if (x_61 == 0) -{ -lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; uint8_t x_66; -lean_dec(x_60); -x_62 = lean_ctor_get(x_59, 1); -lean_inc(x_62); +x_61 = lean_ctor_get(x_59, 1); +lean_inc(x_61); lean_dec(x_59); -lean_inc(x_3); -x_63 = l_Lean_Meta_Simp_isBuiltinSimproc(x_3, x_4, x_5, x_62); -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 = lean_unbox(x_64); -lean_dec(x_64); -x_7 = x_66; -x_8 = x_65; -goto block_58; +x_62 = lean_unbox(x_60); +lean_dec(x_60); +x_7 = x_62; +x_8 = x_61; +goto block_54; } else { -lean_object* x_67; uint8_t x_68; -x_67 = lean_ctor_get(x_59, 1); -lean_inc(x_67); -lean_dec(x_59); -x_68 = lean_unbox(x_60); -lean_dec(x_60); -x_7 = x_68; -x_8 = x_67; -goto block_58; +lean_object* x_63; uint8_t x_64; +x_63 = lean_ctor_get(x_55, 1); +lean_inc(x_63); +lean_dec(x_55); +x_64 = lean_unbox(x_56); +lean_dec(x_56); +x_7 = x_64; +x_8 = x_63; +goto block_54; } -block_58: +block_54: { if (x_7 == 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; uint8_t x_16; lean_object* x_17; lean_object* x_18; +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; 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; uint8_t x_24; lean_dec(x_2); x_9 = lean_st_ref_get(x_5, x_8); x_10 = lean_ctor_get(x_9, 0); @@ -2092,9 +3150,6 @@ lean_ctor_set_uint8(x_17, sizeof(void*)*1, x_15); lean_ctor_set_uint8(x_17, sizeof(void*)*1 + 1, x_16); lean_inc(x_5); x_18 = l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3(x_14, x_17, x_4, x_5, x_11); -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; uint8_t x_24; x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); x_20 = lean_ctor_get(x_18, 1); @@ -2197,34 +3252,10 @@ return x_51; } else { -uint8_t x_52; -lean_dec(x_5); -x_52 = !lean_is_exclusive(x_18); -if (x_52 == 0) -{ -return x_18; -} -else -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = lean_ctor_get(x_18, 0); -x_54 = lean_ctor_get(x_18, 1); -lean_inc(x_54); -lean_inc(x_53); -lean_dec(x_18); -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; -x_56 = l_Lean_Meta_Simp_simpAttrNameToSimprocAttrName(x_2); -x_57 = l_Lean_Attribute_erase(x_3, x_56, x_4, x_5, x_8); -return x_57; +lean_object* x_52; lean_object* x_53; +x_52 = l_Lean_Meta_Simp_simpAttrNameToSimprocAttrName(x_2); +x_53 = l_Lean_Attribute_erase(x_3, x_52, x_4, x_5, x_8); +return x_53; } } } @@ -2286,6 +3317,49 @@ lean_dec(x_5); return x_18; } } +LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___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_5); +lean_dec(x_5); +x_11 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1(x_1, x_2, x_3, x_4, x_10, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___boxed(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; +x_2 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2(x_1); +lean_dec(x_1); +x_3 = lean_box(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Meta_mkSimpAttr___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) { +_start: +{ +uint8_t x_7; lean_object* x_8; +x_7 = lean_unbox(x_3); +lean_dec(x_3); +x_8 = l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6(x_1, x_2, x_7, x_4, x_5, x_6); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_log___at_Lean_Meta_mkSimpAttr___spec__5___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_log___at_Lean_Meta_mkSimpAttr___spec__5(x_1, x_6, x_3, x_4, x_5); +return x_7; +} +} LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___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: { @@ -3196,6 +4270,18 @@ l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__12 = lean_mark_persistent(l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__12); l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__13 = _init_l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__13(); lean_mark_persistent(l_Lean_ScopedEnvExtension_add___at_Lean_Meta_mkSimpAttr___spec__1___closed__13); +l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1___closed__1 = _init_l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__1___closed__1); +l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__1 = _init_l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__1); +l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__2 = _init_l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__2); +l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__3 = _init_l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__3(); +lean_mark_persistent(l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___lambda__2___closed__3); +l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1 = _init_l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1(); +lean_mark_persistent(l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__1); +l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__2 = _init_l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__2(); +lean_mark_persistent(l_Lean_logAt___at_Lean_Meta_mkSimpAttr___spec__6___closed__2); l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___closed__1 = _init_l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___closed__1(); lean_mark_persistent(l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___closed__1); l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___closed__2 = _init_l_Lean_Meta_SimpTheorems_erase___at_Lean_Meta_mkSimpAttr___spec__3___closed__2(); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Simp/BuiltinSimprocs/BitVec.c b/stage0/stdlib/Lean/Meta/Tactic/Simp/BuiltinSimprocs/BitVec.c index 9e2e35704698..34be7faf2c6a 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Simp/BuiltinSimprocs/BitVec.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Simp/BuiltinSimprocs/BitVec.c @@ -13,8 +13,8 @@ #ifdef __cplusplus extern "C" { #endif +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__6; static lean_object* l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1319____closed__5; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__13; lean_object* l_BitVec_abs(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceBitVecOfFin_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5673_(lean_object*); LEAN_EXPORT lean_object* l_BitVec_reduceUMod___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -28,7 +28,6 @@ static lean_object* l___regBuiltin_BitVec_reduceMul_declare__1____x40_Lean_Meta_ static lean_object* l___regBuiltin_BitVec_reduceExtracLsb_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4952____closed__8; static lean_object* l___regBuiltin_BitVec_reduceHShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2118____closed__1; LEAN_EXPORT lean_object* l_BitVec_reduceSLE___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___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceGT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3882____closed__1; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2074____closed__13; static lean_object* l___regBuiltin_BitVec_reduceMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1713____closed__9; @@ -49,12 +48,12 @@ static lean_object* l___regBuiltin_BitVec_reduceOr_declare__1____x40_Lean_Meta_T LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceOfNat_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3753_(lean_object*); static lean_object* l_BitVec_reduceExtracLsb_x27___closed__1; static lean_object* l___regBuiltin_BitVec_reduceRotateLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2167____closed__6; +LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6197_(lean_object*); lean_object* l_Lean_mkNatLit(lean_object*); LEAN_EXPORT lean_object* l_BitVec_reduceShiftShift___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___regBuiltin_BitVec_reduceLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3839____closed__1; static lean_object* l___regBuiltin_BitVec_reduceSignExtend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5261____closed__7; static lean_object* l_BitVec_reduceGetBit___lambda__1___closed__9; -LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6182_(lean_object*); static lean_object* l_BitVec_reduceBitVecOfFin___closed__3; static lean_object* l___regBuiltin_BitVec_reduceAppend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2555____closed__3; static lean_object* l___regBuiltin_BitVec_reduceGetLsb_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1916____closed__2; @@ -68,6 +67,7 @@ static lean_object* l_BitVec_reduceLT___closed__1; static lean_object* l___regBuiltin_BitVec_reduceOfInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3465____closed__1; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceBitVecToFin_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5868_(lean_object*); static lean_object* l_BitVec_reduceAllOnes___closed__2; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__16; static lean_object* l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1319____closed__2; LEAN_EXPORT lean_object* l_BitVec_reduceNot(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*); @@ -96,6 +96,7 @@ static lean_object* l___regBuiltin_BitVec_reduceAppend_declare__1____x40_Lean_Me static lean_object* l___regBuiltin_BitVec_reduceBitVecToFin_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5866____closed__6; static lean_object* l_BitVec_reduceOfInt___closed__3; static lean_object* l_BitVec_reduceHShiftLeft___closed__1; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__2; static lean_object* l___regBuiltin_BitVec_reduceSub_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1631____closed__1; static lean_object* l_BitVec_reduceHShiftRight___closed__1; static lean_object* l___regBuiltin_BitVec_reduceBitVecOfFin_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5669____closed__4; @@ -104,11 +105,9 @@ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceSMTUDiv_declare__1____x40_L static lean_object* l___regBuiltin_BitVec_reduceAbs_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1377____closed__6; LEAN_EXPORT lean_object* l_BitVec_reduceUMod(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceSShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2003_(lean_object*); -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__9; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1323_(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceGE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3927_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceSub_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1629____closed__6; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__18; LEAN_EXPORT lean_object* l_BitVec_reduceShiftLeftZeroExtend(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_reduceSMTSDiv___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___regBuiltin_BitVec_reduceXOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1503_(lean_object*); @@ -121,7 +120,6 @@ LEAN_EXPORT lean_object* l_BitVec_reduceAllOnes___lambda__1___boxed(lean_object* static lean_object* l___regBuiltin_BitVec_reduceMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1713____closed__5; LEAN_EXPORT lean_object* l_BitVec_reduceAnd___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___regBuiltin_BitVec_reduceOfNat_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3753____closed__6; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__15; LEAN_EXPORT lean_object* l_BitVec_reduceZeroExtend_x27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_BitVec_reduceGetBit___lambda__1___closed__5; static lean_object* l___regBuiltin_BitVec_reduceDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1671____closed__9; @@ -142,6 +140,7 @@ LEAN_EXPORT lean_object* l_BitVec_reduceBoolPred___lambda__1___boxed(lean_object static lean_object* l_BitVec_reduceOfNat___closed__1; static lean_object* l_BitVec_reduceToInt___lambda__1___closed__7; LEAN_EXPORT lean_object* l_BitVec_reduceToInt___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_mkEqSymm(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceSLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4015____closed__1; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceSDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1873_(lean_object*); lean_object* l_Lean_mkAppB(lean_object*, lean_object*, lean_object*); @@ -170,6 +169,7 @@ static lean_object* l___regBuiltin_BitVec_reduceSMod_declare__1____x40_Lean_Meta LEAN_EXPORT lean_object* l_BitVec_reduceShiftLeftShiftLeft(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_BitVec_reduceULE___closed__2; static lean_object* l___regBuiltin_BitVec_reduceAbs_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1377____closed__3; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__14; static lean_object* l_BitVec_reduceShiftRightShiftRight___closed__1; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2074____closed__11; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceSMTSDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1899_(lean_object*); @@ -241,7 +241,6 @@ static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_x27_declare__1____x40 LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceGetMsb_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1941_(lean_object*); static lean_object* l_BitVec_reduceCast___closed__1; static lean_object* l___regBuiltin_BitVec_reduceLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3839____closed__2; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__13; LEAN_EXPORT lean_object* l_BitVec_reduceExtracLsb_x27___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_BitVec_reduceOfInt___closed__1; LEAN_EXPORT lean_object* l_BitVec_fromExpr_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -252,10 +251,10 @@ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceReplicate_declare__1____x40 static lean_object* l_BitVec_reduceNot___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceSub_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1629_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceSub_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1629____closed__8; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__19; static lean_object* l___regBuiltin_BitVec_reduceSMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1817____closed__8; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2074____closed__5; static lean_object* l___regBuiltin_BitVec_reduceSub_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1629____closed__5; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__20; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2074____closed__7; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2047____closed__1; LEAN_EXPORT lean_object* l_BitVec_reduceGT___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -265,9 +264,9 @@ static lean_object* l___regBuiltin_BitVec_reduceSLT_declare__1____x40_Lean_Meta_ LEAN_EXPORT lean_object* l_BitVec_reduceGE___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___regBuiltin_BitVec_reduceGE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3927____closed__1; static lean_object* l___regBuiltin_BitVec_reduceAppend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2555____closed__1; +LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163_(lean_object*); LEAN_EXPORT lean_object* l_BitVec_reduceZeroExtend(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_reduceOfInt___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___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceSDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1869____closed__2; static lean_object* l___regBuiltin_BitVec_reduceToInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3225____closed__5; lean_object* l_Lean_Meta_Simp_evalPropStep(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -287,6 +286,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceToInt_declare__1____x40_Lea static lean_object* l_BitVec_reduceDiv___closed__3; static lean_object* l___regBuiltin_BitVec_reduceXOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1505____closed__1; lean_object* l_Lean_Expr_cleanupAnnotations(lean_object*); +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__4; static lean_object* l___regBuiltin_BitVec_reduceHShiftRight_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2145____closed__4; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2045____closed__11; lean_object* l_Lean_Meta_evalNat(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -299,15 +299,14 @@ static lean_object* l___regBuiltin_BitVec_reduceSShiftRight_declare__1____x40_Le static lean_object* l___regBuiltin_BitVec_reduceToNat_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3039____closed__3; static lean_object* l___regBuiltin_BitVec_reduceRotateRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2189____closed__4; static lean_object* l___regBuiltin_BitVec_reduceGetMsb_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1937____closed__6; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__16; LEAN_EXPORT lean_object* l_BitVec_reduceHShiftLeft_x27___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceToNat_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3039____closed__4; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__9; LEAN_EXPORT lean_object* l_BitVec_reduceOfNat(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceULT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3947____closed__1; static lean_object* l___regBuiltin_BitVec_reduceSub_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1629____closed__2; static lean_object* l_BitVec_reduceGetBit___lambda__1___closed__2; static lean_object* l___regBuiltin_BitVec_reduceAdd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1545____closed__3; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__13; static lean_object* l___regBuiltin_BitVec_reduceSLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4013____closed__8; static lean_object* l___regBuiltin_BitVec_reduceMul_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1587____closed__10; static lean_object* l___regBuiltin_BitVec_reduceShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1959____closed__4; @@ -316,7 +315,6 @@ static lean_object* l___regBuiltin_BitVec_reduceDiv_declare__1____x40_Lean_Meta_ lean_object* l_BitVec_shiftLeft(lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceHShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2116____closed__4; uint8_t lean_int_dec_le(lean_object*, lean_object*); -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6182____closed__1; static lean_object* l_BitVec_reduceAnd___closed__3; lean_object* lean_nat_shiftr(lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceAbs_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1377____closed__1; @@ -331,13 +329,15 @@ static lean_object* l___regBuiltin_BitVec_reduceDiv_declare__1____x40_Lean_Meta_ static lean_object* l_BitVec_reduceSLE___closed__1; static lean_object* l___regBuiltin_BitVec_reduceOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1461____closed__6; static lean_object* l___regBuiltin_BitVec_reduceOfInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3463____closed__4; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__2; static lean_object* l___regBuiltin_BitVec_reduceReplicate_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5219____closed__5; static lean_object* l_BitVec_reduceShiftLeftZeroExtend___closed__3; lean_object* l_Lean_Level_ofNat(lean_object*); lean_object* l_Lean_Expr_appArg_x21(lean_object*); static lean_object* l_BitVec_reduceAbs___closed__1; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__6; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__18; static lean_object* l___regBuiltin_BitVec_reduceToInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3225____closed__1; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__19; static lean_object* l___regBuiltin_BitVec_reduceMul_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1587____closed__5; static lean_object* l___regBuiltin_BitVec_reduceZeroExtend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5240____closed__3; static lean_object* l___regBuiltin_BitVec_reduceGE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3925____closed__2; @@ -348,6 +348,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceRotateRight_declare__1____x static lean_object* l_BitVec_reduceMul___closed__1; static lean_object* l_BitVec_reduceGetBit___lambda__1___closed__7; static lean_object* l___regBuiltin_BitVec_reduceGetLsb_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1916____closed__1; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__12; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2047_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceUDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1765____closed__3; static lean_object* l_BitVec_reduceSignExtend___closed__2; @@ -389,8 +390,9 @@ static lean_object* l___regBuiltin_BitVec_reduceAdd_declare__1____x40_Lean_Meta_ LEAN_EXPORT lean_object* l_BitVec_reduceReplicate___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_BitVec_reduceOr___closed__1; static lean_object* l___regBuiltin_BitVec_reduceShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1959____closed__8; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__10; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__3; static lean_object* l___regBuiltin_BitVec_reduceBitVecToFin_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5866____closed__3; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__11; static lean_object* l_BitVec_reduceULT___closed__1; static lean_object* l___regBuiltin_BitVec_reduceOfInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3463____closed__3; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceUMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1741_(lean_object*); @@ -415,7 +417,6 @@ uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l_BitVec_reduceHShiftRight___closed__3; static lean_object* l___regBuiltin_BitVec_reduceSMTUDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1791____closed__7; static lean_object* l___regBuiltin_BitVec_reduceMul_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1587____closed__9; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__1; LEAN_EXPORT lean_object* l_BitVec_reduceUShiftRight___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_BitVec_reduceBin(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_BitVec_reduceUShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1981____closed__1; @@ -424,7 +425,6 @@ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftLeftZeroExtend_declare static lean_object* l___regBuiltin_BitVec_reduceMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1713____closed__3; static lean_object* l___regBuiltin_BitVec_reduceAppend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2555____closed__7; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceToNat_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3043_(lean_object*); -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__12; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2045____closed__5; static lean_object* l___regBuiltin_BitVec_reduceAdd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1545____closed__12; static lean_object* l___regBuiltin_BitVec_reduceSLT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3993____closed__1; @@ -435,16 +435,19 @@ static lean_object* l___regBuiltin_BitVec_reduceShiftLeftZeroExtend_declare__1__ lean_object* l_BitVec_not(lean_object*, lean_object*); lean_object* lean_nat_to_int(lean_object*); static lean_object* l_BitVec_reduceToInt___lambda__1___closed__9; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__15; static lean_object* l___regBuiltin_BitVec_reduceULE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3969____closed__8; LEAN_EXPORT lean_object* l_BitVec_reduceULT(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceULT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3947____closed__2; lean_object* lean_nat_div(lean_object*, lean_object*); static lean_object* l_BitVec_reduceXOr___closed__2; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__15; static lean_object* l_BitVec_reduceSMTSDiv___closed__1; static lean_object* l___regBuiltin_BitVec_reduceMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1713____closed__11; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceAppend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2557_(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceGetLsb_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1918_(lean_object*); static lean_object* l_BitVec_reduceDiv___closed__1; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__3; static lean_object* l___regBuiltin_BitVec_reduceBitVecToFin_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5866____closed__5; static lean_object* l_BitVec_reduceZeroExtend_x27___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftLeftZeroExtend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4607_(lean_object*); @@ -497,10 +500,10 @@ static lean_object* l_BitVec_reduceGT___closed__3; lean_object* l_Lean_Meta_getBitVecValue_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_BitVec_ofNat(lean_object*, lean_object*); static lean_object* l_BitVec_reduceUnary___lambda__1___closed__3; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__6; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2045____closed__9; static lean_object* l___regBuiltin_BitVec_reduceOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1461____closed__1; static lean_object* l___regBuiltin_BitVec_reduceSRem_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1843____closed__7; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__11; lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceHShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2116____closed__1; static lean_object* l_BitVec_reduceMul___closed__2; @@ -525,6 +528,7 @@ static lean_object* l___regBuiltin_BitVec_reduceRotateLeft_declare__1____x40_Lea LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceAllOnes_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5422_(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___regBuiltin_BitVec_reduceSub_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1629____closed__11; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__12; static lean_object* l___regBuiltin_BitVec_reduceNot_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1356____closed__3; LEAN_EXPORT lean_object* l_BitVec_reduceAdd___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_BitVec_reduceNeg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -555,12 +559,13 @@ static lean_object* l___regBuiltin_BitVec_reduceXOr_declare__1____x40_Lean_Meta_ static lean_object* l___regBuiltin_BitVec_reduceBitVecOfFin_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5669____closed__2; static lean_object* l___regBuiltin_BitVec_reduceZeroExtend_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4338____closed__6; static lean_object* l___regBuiltin_BitVec_reduceSRem_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1843____closed__8; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__6; +LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195_(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2076_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2074____closed__6; static lean_object* l___regBuiltin_BitVec_reduceGetLsb_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1916____closed__5; static lean_object* l___regBuiltin_BitVec_reduceAppend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2555____closed__4; LEAN_EXPORT lean_object* l_BitVec_reduceSMod___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___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__4; static lean_object* l___regBuiltin_BitVec_reduceZeroExtend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5240____closed__2; static lean_object* l___regBuiltin_BitVec_reduceGT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3882____closed__2; static lean_object* l___regBuiltin_BitVec_reduceOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1463____closed__1; @@ -583,11 +588,11 @@ static lean_object* l___regBuiltin_BitVec_reduceSMTUDiv_declare__1____x40_Lean_M LEAN_EXPORT lean_object* l_BitVec_reduceULT___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___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1319____closed__1; static lean_object* l_BitVec_reduceAppend___closed__1; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__8; static lean_object* l_BitVec_reduceUShiftRight___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1461_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceOfInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3463____closed__6; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceUDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1767_(lean_object*); -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__19; static lean_object* l___regBuiltin_BitVec_reduceSShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2003____closed__8; static lean_object* l_BitVec_reduceBitVecOfFin___closed__1; static lean_object* l___regBuiltin_BitVec_reduceDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1671____closed__13; @@ -608,10 +613,10 @@ static lean_object* l___regBuiltin_BitVec_reduceOr_declare__1____x40_Lean_Meta_T static lean_object* l___regBuiltin_BitVec_reduceSMTUDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1791____closed__6; lean_object* lean_nat_land(lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceZeroExtend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5240____closed__1; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__1; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceUMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1743_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceUMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1739____closed__1; static lean_object* l_BitVec_reduceAnd___closed__2; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__17; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1461____closed__2; static lean_object* l___regBuiltin_BitVec_reduceUDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1765____closed__5; @@ -639,8 +644,8 @@ static lean_object* l___regBuiltin_BitVec_reduceSShiftRight_declare__1____x40_Le static lean_object* l___regBuiltin_BitVec_reduceToInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3225____closed__4; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1713_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceSMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1817____closed__2; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__7; LEAN_EXPORT lean_object* l_BitVec_reduceDiv(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__5; static lean_object* l___regBuiltin_BitVec_reduceXOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1503____closed__2; static lean_object* l_BitVec_reduceSMTUDiv___closed__2; static lean_object* l___regBuiltin_BitVec_reduceBitVecOfFin_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5671____closed__1; @@ -650,7 +655,6 @@ static lean_object* l___regBuiltin_BitVec_reduceSub_declare__1____x40_Lean_Meta_ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceULT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3947_(lean_object*); LEAN_EXPORT lean_object* l_BitVec_reduceBoolPred(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_BitVec_reduceAppend___closed__3; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6150____closed__1; LEAN_EXPORT lean_object* l_BitVec_reduceGetBit___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_BitVec_reduceMul___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_BitVec_reduceCast___closed__2; @@ -672,8 +676,8 @@ LEAN_EXPORT lean_object* l_BitVec_reduceGetLsb___lambda__1(lean_object*, lean_ob static lean_object* l___regBuiltin_BitVec_reduceAllOnes_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5420____closed__2; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceSShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2007_(lean_object*); static lean_object* l_BitVec_reduceOfInt___closed__2; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__9; static lean_object* l___regBuiltin_BitVec_reduceAnd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1421____closed__1; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__19; static lean_object* l___regBuiltin_BitVec_reduceSShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2003____closed__6; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2074____closed__12; static lean_object* l___regBuiltin_BitVec_reduceCast_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2853____closed__2; @@ -695,7 +699,6 @@ static lean_object* l___regBuiltin_BitVec_reduceAbs_declare__1____x40_Lean_Meta_ static lean_object* l___regBuiltin_BitVec_reduceToNat_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3039____closed__7; LEAN_EXPORT lean_object* l_BitVec_reduceBitVecToFin___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceBitVecOfFin_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5669____closed__6; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__8; static lean_object* l___regBuiltin_BitVec_reduceBitVecToFin_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5866____closed__2; static lean_object* l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1319____closed__4; static lean_object* l_BitVec_reduceSLE___closed__2; @@ -718,7 +721,6 @@ static lean_object* l_BitVec_reduceAbs___closed__2; static lean_object* l___regBuiltin_BitVec_reduceUMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1739____closed__2; static lean_object* l___regBuiltin_BitVec_reduceOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1461____closed__4; static lean_object* l_BitVec_reduceOr___closed__3; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__2; lean_object* l_BitVec_append___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_reduceCast(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_BitVec_rotateRight(lean_object*, lean_object*, lean_object*); @@ -730,6 +732,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceAbs_declare__1____x40_Lean_ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1321_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceAbs_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1377____closed__8; static lean_object* l___regBuiltin_BitVec_reduceDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1673____closed__1; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__16; static lean_object* l___regBuiltin_BitVec_reduceExtracLsb_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4952____closed__3; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceUShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1983_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceRotateRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2189____closed__1; @@ -746,7 +749,6 @@ LEAN_EXPORT lean_object* l_BitVec_reduceShiftShift___lambda__1(lean_object*, lea LEAN_EXPORT lean_object* l_BitVec_reduceAppend___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_BitVec_reduceLE___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_BitVec_reduceGetBit___lambda__1___closed__6; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__14; static lean_object* l___regBuiltin_BitVec_reduceSub_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1629____closed__9; static lean_object* l_BitVec_reduceMod___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceHShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2116_(lean_object*); @@ -793,7 +795,6 @@ static lean_object* l___regBuiltin_BitVec_reduceAdd_declare__1____x40_Lean_Meta_ static lean_object* l_BitVec_reduceAdd___closed__3; LEAN_EXPORT lean_object* l_BitVec_reduceToNat___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___regBuiltin_BitVec_reduceLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3839____closed__6; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__3; static lean_object* l___regBuiltin_BitVec_reduceShiftLeftZeroExtend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4605____closed__1; static lean_object* l_BitVec_reduceUDiv___closed__1; static lean_object* l_BitVec_reduceToInt___lambda__1___closed__6; @@ -810,12 +811,11 @@ static lean_object* l___regBuiltin_BitVec_reduceSignExtend_declare__1____x40_Lea lean_object* l_Lean_Meta_Simp_registerBuiltinSimproc(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceExtracLsb_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4956_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceAdd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1545____closed__11; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__8; static lean_object* l_BitVec_reduceHShiftLeft___closed__2; static lean_object* l___regBuiltin_BitVec_reduceSLT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3991____closed__3; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__4; LEAN_EXPORT lean_object* l_BitVec_reduceExtend___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_BitVec_reduceZeroExtend_x27___closed__3; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__12; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2045____closed__3; static lean_object* l_BitVec_reduceOr___closed__2; @@ -833,6 +833,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceMul_declare__1____x40_Lean_ static lean_object* l___regBuiltin_BitVec_reduceGetLsb_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1916____closed__6; static lean_object* l___regBuiltin_BitVec_reduceOfNat_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3755____closed__1; static lean_object* l___regBuiltin_BitVec_reduceUShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1981____closed__8; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__13; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceAdd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1545_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceToInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3225____closed__7; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceXOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1507_(lean_object*); @@ -852,7 +853,6 @@ static lean_object* l_BitVec_reduceAdd___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3843_(lean_object*); static lean_object* l_BitVec_reduceSRem___closed__1; static lean_object* l___regBuiltin_BitVec_reduceRotateLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2167____closed__1; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__3; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceGE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3929_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceAbs_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1377____closed__4; lean_object* l_Lean_Meta_Simp_registerBuiltinDSimproc(lean_object*, lean_object*, lean_object*, lean_object*); @@ -872,7 +872,6 @@ static lean_object* l___regBuiltin_BitVec_reduceNot_declare__1____x40_Lean_Meta_ static lean_object* l___regBuiltin_BitVec_reduceULT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3949____closed__1; static lean_object* l___regBuiltin_BitVec_reduceSLT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3991____closed__7; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceSRem_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1847_(lean_object*); -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__8; static lean_object* l___regBuiltin_BitVec_reduceAppend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2555____closed__8; static lean_object* l_BitVec_reduceUDiv___closed__2; static lean_object* l___regBuiltin_BitVec_reduceRotateRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2189____closed__6; @@ -881,13 +880,10 @@ static lean_object* l___regBuiltin_BitVec_reduceZeroExtend_x27_declare__1____x40 static lean_object* l___regBuiltin_BitVec_reduceToNat_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3041____closed__1; static lean_object* l_BitVec_reduceAppend___closed__4; LEAN_EXPORT lean_object* l_BitVec_reduceZeroExtend___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___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__14; LEAN_EXPORT lean_object* l_BitVec_reduceShift(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_BitVec_reduceNeg___closed__1; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__15; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceGT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3884_(lean_object*); static lean_object* l_BitVec_reduceBinPred___lambda__1___closed__1; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__16; LEAN_EXPORT lean_object* l_BitVec_reduceSShiftRight___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___regBuiltin_BitVec_reduceShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1959____closed__7; static lean_object* l_BitVec_reduceToNat___closed__1; @@ -901,7 +897,6 @@ static lean_object* l___regBuiltin_BitVec_reduceSMod_declare__1____x40_Lean_Meta lean_object* l_Int_toNat(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceZeroExtend_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4338____closed__7; static lean_object* l_BitVec_reduceBitVecToFin___closed__3; -LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6150_(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceSMTUDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1795_(lean_object*); static lean_object* l_BitVec_reduceSShiftRight___closed__2; static lean_object* l___regBuiltin_BitVec_reduceMul_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1589____closed__1; @@ -909,6 +904,7 @@ static lean_object* l___regBuiltin_BitVec_reduceAdd_declare__1____x40_Lean_Meta_ static lean_object* l___regBuiltin_BitVec_reduceZeroExtend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5240____closed__5; LEAN_EXPORT lean_object* l_BitVec_reduceRotateLeft___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___regBuiltin_BitVec_reduceMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1713____closed__10; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__14; static lean_object* l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1319____closed__7; lean_object* lean_nat_shiftl(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_reduceMod(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -922,7 +918,6 @@ lean_object* lean_nat_sub(lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceSMTUDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1791____closed__8; static lean_object* l___regBuiltin_BitVec_reduceLT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3796____closed__7; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceNot_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1358_(lean_object*); -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__17; static lean_object* l___regBuiltin_BitVec_reduceSDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1871____closed__1; static lean_object* l___regBuiltin_BitVec_reduceSLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4013____closed__7; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceToNat_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3041_(lean_object*); @@ -941,11 +936,13 @@ static lean_object* l___regBuiltin_BitVec_reduceToNat_declare__1____x40_Lean_Met LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceAppend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2559_(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceUShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1985_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceULE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3969____closed__7; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__4; static lean_object* l___regBuiltin_BitVec_reduceAllOnes_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5420____closed__1; static lean_object* l___regBuiltin_BitVec_reduceRotateRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2189____closed__5; static lean_object* l_BitVec_reduceSub___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceAnd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1419_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceULT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3947____closed__4; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__9; static lean_object* l___regBuiltin_BitVec_reduceOfInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3463____closed__5; static lean_object* l___regBuiltin_BitVec_reduceLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3839____closed__7; LEAN_EXPORT lean_object* l_BitVec_reduceSub___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -970,6 +967,7 @@ static lean_object* l___regBuiltin_BitVec_reduceSMod_declare__1____x40_Lean_Meta static lean_object* l___regBuiltin_BitVec_reduceMul_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1587____closed__6; static lean_object* l___regBuiltin_BitVec_reduceSShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2005____closed__1; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceSLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4015_(lean_object*); +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__18; static lean_object* l___regBuiltin_BitVec_reduceAdd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1545____closed__9; static lean_object* l___regBuiltin_BitVec_reduceSMTSDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1895____closed__6; LEAN_EXPORT lean_object* l_BitVec_reduceOr(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -978,6 +976,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceGE_declare__1____x40_Lean_M LEAN_EXPORT lean_object* l_BitVec_reduceBinPred___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_BitVec_reduceUDiv___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceSLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4013____closed__3; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__10; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3839_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceAnd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1419____closed__5; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2045____closed__10; @@ -997,11 +996,12 @@ LEAN_EXPORT lean_object* l_BitVec_reduceNot___lambda__1___boxed(lean_object*, le static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2074____closed__3; LEAN_EXPORT lean_object* l_BitVec_reduceExtend___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___regBuiltin_BitVec_reduceSMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1821_(lean_object*); +LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6165_(lean_object*); static lean_object* l_BitVec_reduceUnary___lambda__1___closed__5; static lean_object* l_BitVec_reduceSMTSDiv___closed__2; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__2; lean_object* l_BitVec_mul(lean_object*, lean_object*, lean_object*); static lean_object* l_BitVec_reduceBitVecToFin___lambda__1___closed__3; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__5; static lean_object* l___regBuiltin_BitVec_reduceULT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3947____closed__5; static lean_object* l___regBuiltin_BitVec_reduceAllOnes_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5420____closed__4; static lean_object* l_BitVec_reduceGE___closed__1; @@ -1011,12 +1011,14 @@ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceDiv_declare__1____x40_Lean_ static lean_object* l_BitVec_reduceToInt___lambda__1___closed__3; LEAN_EXPORT lean_object* l_BitVec_reduceBitVecOfFin___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_BitVec_reduceShiftLeftZeroExtend___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___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6197____closed__1; static lean_object* l___regBuiltin_BitVec_reduceShiftLeftZeroExtend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4605____closed__4; static lean_object* l___regBuiltin_BitVec_reduceDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1671____closed__4; static lean_object* l___regBuiltin_BitVec_reduceMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1713____closed__12; static lean_object* l___regBuiltin_BitVec_reduceExtracLsb_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4952____closed__4; lean_object* l_Lean_instToExprInt_mkNat(lean_object*); static lean_object* l_BitVec_reduceRotateRight___closed__1; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__1; static lean_object* l___regBuiltin_BitVec_reduceNot_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1356____closed__9; static lean_object* l_BitVec_reduceZeroExtend___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceLT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3796_(lean_object*); @@ -1043,6 +1045,7 @@ static lean_object* l___regBuiltin_BitVec_reduceSignExtend_declare__1____x40_Lea static lean_object* l___regBuiltin_BitVec_reduceGT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3882____closed__3; static lean_object* l___regBuiltin_BitVec_reduceXOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1503____closed__3; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceUShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1981_(lean_object*); +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__20; static lean_object* l___regBuiltin_BitVec_reduceMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1713____closed__4; static lean_object* l___regBuiltin_BitVec_reduceULE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3969____closed__1; LEAN_EXPORT lean_object* l_BitVec_reduceShiftWithBitVecLit___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*); @@ -1059,14 +1062,13 @@ LEAN_EXPORT lean_object* l_BitVec_reduceDiv___lambda__1___boxed(lean_object*, le static lean_object* l___regBuiltin_BitVec_reduceZeroExtend_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4338____closed__9; static lean_object* l___regBuiltin_BitVec_reduceOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1461____closed__11; static lean_object* l___regBuiltin_BitVec_reduceExtracLsb_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4952____closed__2; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__17; static lean_object* l___regBuiltin_BitVec_reduceXOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1503____closed__12; static lean_object* l_BitVec_reduceSLT___closed__1; static lean_object* l___regBuiltin_BitVec_reduceSRem_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1845____closed__1; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2045____closed__1; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2074____closed__10; static lean_object* l___regBuiltin_BitVec_reduceXOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1503____closed__14; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__11; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__7; static lean_object* l_BitVec_reduceSMod___closed__1; static lean_object* l___regBuiltin_BitVec_reduceUDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1765____closed__2; static lean_object* l___regBuiltin_BitVec_reduceAnd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1419____closed__14; @@ -1074,7 +1076,6 @@ static lean_object* l___regBuiltin_BitVec_reduceLT_declare__1____x40_Lean_Meta_T LEAN_EXPORT lean_object* l_BitVec_reduceHShiftLeft(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2076____closed__1; static lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2045____closed__13; -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__18; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2074_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1321____closed__2; LEAN_EXPORT lean_object* l_BitVec_reduceRotateRight(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1098,6 +1099,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceSRem_declare__1____x40_Lean LEAN_EXPORT lean_object* l_BitVec_reduceShiftWithBitVecLit___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___regBuiltin_BitVec_reduceGetMsb_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1937____closed__2; LEAN_EXPORT lean_object* l_BitVec_reduceAbs___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___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6165____closed__1; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3841_(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceAllOnes_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5420_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceGE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3925____closed__1; @@ -1110,6 +1112,7 @@ static lean_object* l___regBuiltin_BitVec_reduceUDiv_declare__1____x40_Lean_Meta lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceOr_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1461____closed__10; static lean_object* l___regBuiltin_BitVec_reduceAllOnes_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5420____closed__5; +static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__7; static lean_object* l___regBuiltin_BitVec_reduceSDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1869____closed__5; static lean_object* l___regBuiltin_BitVec_reduceToInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3225____closed__2; static lean_object* l___regBuiltin_BitVec_reduceToInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3227____closed__1; @@ -1122,15 +1125,15 @@ static lean_object* l_BitVec_reduceShiftLeftShiftLeft___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceHShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2118_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceAnd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1419____closed__11; static lean_object* l___regBuiltin_BitVec_reduceGE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3925____closed__3; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__7; +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__17; static lean_object* l___regBuiltin_BitVec_reduceSub_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1629____closed__7; static lean_object* l___regBuiltin_BitVec_reduceUMod_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1739____closed__3; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__11; static lean_object* l___regBuiltin_BitVec_reduceAnd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1419____closed__3; static lean_object* l___regBuiltin_BitVec_reduceSDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1869____closed__8; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceSignExtend_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5261_(lean_object*); LEAN_EXPORT lean_object* l_BitVec_reduceGetMsb___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___regBuiltin_BitVec_reduceOfInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3463____closed__2; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__10; static lean_object* l___regBuiltin_BitVec_reduceZeroExtend_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4338____closed__8; static lean_object* l___regBuiltin_BitVec_reduceSMTUDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1791____closed__3; LEAN_EXPORT lean_object* l_BitVec_reduceSLE___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1142,7 +1145,6 @@ static lean_object* l___regBuiltin_BitVec_reduceSRem_declare__1____x40_Lean_Meta static lean_object* l___regBuiltin_BitVec_reduceAnd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1419____closed__15; static lean_object* l_BitVec_reduceGetLsb___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceHShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2045_(lean_object*); -static lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__5; static lean_object* l___regBuiltin_BitVec_reduceLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3839____closed__5; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceUDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1765_(lean_object*); static lean_object* l___regBuiltin_BitVec_reduceAnd_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1419____closed__8; @@ -1157,7 +1159,6 @@ LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceSLE_declare__1____x40_Lean_ static lean_object* l___regBuiltin_BitVec_reduceDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1671____closed__8; static lean_object* l___regBuiltin_BitVec_reduceBitVecToFin_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_5866____closed__1; LEAN_EXPORT lean_object* l_BitVec_reduceUDiv(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__1; lean_object* lean_nat_lor(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceOfInt_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3463_(lean_object*); LEAN_EXPORT lean_object* l_BitVec_reduceULE(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1172,6 +1173,7 @@ LEAN_EXPORT lean_object* l_BitVec_reduceGetBit___boxed(lean_object*, lean_object uint8_t l_BitVec_sle(lean_object*, lean_object*, lean_object*); static lean_object* l_BitVec_reduceBitVecToFin___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceLT_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3798_(lean_object*); +static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__10; static lean_object* l___regBuiltin_BitVec_reduceNot_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1356____closed__6; static lean_object* l___regBuiltin_BitVec_reduceDiv_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1671____closed__3; static lean_object* l___regBuiltin_BitVec_reduceMul_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1587____closed__3; @@ -1180,7 +1182,6 @@ static lean_object* l___regBuiltin_BitVec_reduceSDiv_declare__1____x40_Lean_Meta static lean_object* l___regBuiltin_BitVec_reduceULE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_3969____closed__2; LEAN_EXPORT lean_object* l_BitVec_reduceAppend___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_BitVec_reduceSLE_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4013____closed__4; -static lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__5; static lean_object* l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1319____closed__10; static lean_object* l___regBuiltin_BitVec_reduceHShiftRight_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2145____closed__8; static lean_object* l___regBuiltin_BitVec_reduceExtracLsb_x27_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_4952____closed__5; @@ -27046,76 +27047,118 @@ x_37 = l___regBuiltin_BitVec_reduceAbs_declare__1____x40_Lean_Meta_Tactic_Simp_B x_38 = lean_array_push(x_37, x_16); x_39 = lean_array_push(x_38, x_17); x_40 = lean_array_push(x_39, x_4); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); x_41 = l_Lean_Meta_mkAppM(x_5, x_40, x_10, x_11, x_12, x_13, x_36); if (lean_obj_tag(x_41) == 0) { -uint8_t x_42; -x_42 = !lean_is_exclusive(x_41); -if (x_42 == 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_Lean_Meta_mkEqSymm(x_42, x_10, x_11, x_12, x_13, x_43); +if (lean_obj_tag(x_44) == 0) +{ +uint8_t x_45; +x_45 = !lean_is_exclusive(x_44); +if (x_45 == 0) +{ +lean_object* x_46; uint8_t x_47; lean_object* x_48; lean_object* x_49; +x_46 = lean_ctor_get(x_44, 0); +lean_ctor_set(x_19, 0, x_46); +x_47 = 1; +x_48 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_48, 0, x_35); +lean_ctor_set(x_48, 1, x_19); +lean_ctor_set_uint8(x_48, sizeof(void*)*2, x_47); +x_49 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_49, 0, x_48); +lean_ctor_set(x_44, 0, x_49); +return x_44; +} +else { -lean_object* x_43; uint8_t x_44; lean_object* x_45; lean_object* x_46; -x_43 = lean_ctor_get(x_41, 0); -lean_ctor_set(x_19, 0, x_43); -x_44 = 1; -x_45 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_45, 0, x_35); -lean_ctor_set(x_45, 1, x_19); -lean_ctor_set_uint8(x_45, sizeof(void*)*2, x_44); -x_46 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_46, 0, x_45); -lean_ctor_set(x_41, 0, x_46); -return x_41; +lean_object* x_50; lean_object* x_51; uint8_t x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +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); +lean_ctor_set(x_19, 0, x_50); +x_52 = 1; +x_53 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_53, 0, x_35); +lean_ctor_set(x_53, 1, x_19); +lean_ctor_set_uint8(x_53, sizeof(void*)*2, x_52); +x_54 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_54, 0, 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); +return x_55; +} } else { -lean_object* x_47; lean_object* x_48; uint8_t x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_47 = lean_ctor_get(x_41, 0); -x_48 = lean_ctor_get(x_41, 1); -lean_inc(x_48); -lean_inc(x_47); -lean_dec(x_41); -lean_ctor_set(x_19, 0, x_47); -x_49 = 1; -x_50 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_50, 0, x_35); -lean_ctor_set(x_50, 1, x_19); -lean_ctor_set_uint8(x_50, sizeof(void*)*2, x_49); -x_51 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_51, 0, x_50); -x_52 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_52, 0, x_51); -lean_ctor_set(x_52, 1, x_48); -return x_52; +uint8_t x_56; +lean_dec(x_35); +lean_free_object(x_19); +x_56 = !lean_is_exclusive(x_44); +if (x_56 == 0) +{ +return x_44; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_57 = lean_ctor_get(x_44, 0); +x_58 = lean_ctor_get(x_44, 1); +lean_inc(x_58); +lean_inc(x_57); +lean_dec(x_44); +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_53; +uint8_t x_60; lean_dec(x_35); lean_free_object(x_19); -x_53 = !lean_is_exclusive(x_41); -if (x_53 == 0) +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +x_60 = !lean_is_exclusive(x_41); +if (x_60 == 0) { return x_41; } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_54 = lean_ctor_get(x_41, 0); -x_55 = lean_ctor_get(x_41, 1); -lean_inc(x_55); -lean_inc(x_54); +lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_61 = lean_ctor_get(x_41, 0); +x_62 = lean_ctor_get(x_41, 1); +lean_inc(x_62); +lean_inc(x_61); lean_dec(x_41); -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; +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_57; +uint8_t x_64; lean_free_object(x_19); lean_dec(x_17); lean_dec(x_16); @@ -27125,119 +27168,162 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_5); lean_dec(x_4); -x_57 = !lean_is_exclusive(x_34); -if (x_57 == 0) +x_64 = !lean_is_exclusive(x_34); +if (x_64 == 0) { return x_34; } else { -lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_58 = lean_ctor_get(x_34, 0); -x_59 = lean_ctor_get(x_34, 1); -lean_inc(x_59); -lean_inc(x_58); +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_34, 0); +x_66 = lean_ctor_get(x_34, 1); +lean_inc(x_66); +lean_inc(x_65); lean_dec(x_34); -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; +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_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_ctor_get(x_19, 0); -lean_inc(x_61); +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_68 = lean_ctor_get(x_19, 0); +lean_inc(x_68); lean_dec(x_19); -x_62 = lean_nat_add(x_2, x_61); -lean_dec(x_61); -x_63 = l_Lean_mkNatLit(x_62); -x_64 = l_BitVec_reduceShiftWithBitVecLit___lambda__1___closed__1; +x_69 = lean_nat_add(x_2, x_68); +lean_dec(x_68); +x_70 = l_Lean_mkNatLit(x_69); +x_71 = l_BitVec_reduceShiftWithBitVecLit___lambda__1___closed__1; lean_inc(x_16); -x_65 = lean_array_push(x_64, x_16); -x_66 = lean_array_push(x_65, x_63); +x_72 = lean_array_push(x_71, x_16); +x_73 = lean_array_push(x_72, x_70); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -x_67 = l_Lean_Meta_mkAppM(x_3, x_66, x_10, x_11, x_12, x_13, x_26); -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; -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___regBuiltin_BitVec_reduceAbs_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1377____closed__4; -x_71 = lean_array_push(x_70, x_16); -x_72 = lean_array_push(x_71, x_17); -x_73 = lean_array_push(x_72, x_4); -x_74 = l_Lean_Meta_mkAppM(x_5, x_73, x_10, x_11, x_12, x_13, x_69); +x_74 = l_Lean_Meta_mkAppM(x_3, x_73, x_10, x_11, x_12, x_13, x_26); if (lean_obj_tag(x_74) == 0) { -lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; uint8_t x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; +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_74, 0); lean_inc(x_75); x_76 = lean_ctor_get(x_74, 1); lean_inc(x_76); -if (lean_is_exclusive(x_74)) { - lean_ctor_release(x_74, 0); - lean_ctor_release(x_74, 1); - x_77 = x_74; +lean_dec(x_74); +x_77 = l___regBuiltin_BitVec_reduceAbs_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1377____closed__4; +x_78 = lean_array_push(x_77, x_16); +x_79 = lean_array_push(x_78, x_17); +x_80 = lean_array_push(x_79, x_4); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_81 = l_Lean_Meta_mkAppM(x_5, x_80, x_10, x_11, x_12, x_13, x_76); +if (lean_obj_tag(x_81) == 0) +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; +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_Lean_Meta_mkEqSymm(x_82, x_10, x_11, x_12, x_13, x_83); +if (lean_obj_tag(x_84) == 0) +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; uint8_t x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; +x_85 = lean_ctor_get(x_84, 0); +lean_inc(x_85); +x_86 = lean_ctor_get(x_84, 1); +lean_inc(x_86); +if (lean_is_exclusive(x_84)) { + lean_ctor_release(x_84, 0); + lean_ctor_release(x_84, 1); + x_87 = x_84; } else { - lean_dec_ref(x_74); - x_77 = lean_box(0); -} -x_78 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_78, 0, x_75); -x_79 = 1; -x_80 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_80, 0, x_68); -lean_ctor_set(x_80, 1, x_78); -lean_ctor_set_uint8(x_80, sizeof(void*)*2, x_79); -x_81 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_81, 0, x_80); -if (lean_is_scalar(x_77)) { - x_82 = lean_alloc_ctor(0, 2, 0); + lean_dec_ref(x_84); + x_87 = lean_box(0); +} +x_88 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_88, 0, x_85); +x_89 = 1; +x_90 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_90, 0, x_75); +lean_ctor_set(x_90, 1, x_88); +lean_ctor_set_uint8(x_90, sizeof(void*)*2, x_89); +x_91 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_91, 0, x_90); +if (lean_is_scalar(x_87)) { + x_92 = lean_alloc_ctor(0, 2, 0); } else { - x_82 = x_77; + x_92 = x_87; } -lean_ctor_set(x_82, 0, x_81); -lean_ctor_set(x_82, 1, x_76); -return x_82; +lean_ctor_set(x_92, 0, x_91); +lean_ctor_set(x_92, 1, x_86); +return x_92; } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; -lean_dec(x_68); -x_83 = lean_ctor_get(x_74, 0); -lean_inc(x_83); -x_84 = lean_ctor_get(x_74, 1); -lean_inc(x_84); -if (lean_is_exclusive(x_74)) { - lean_ctor_release(x_74, 0); - lean_ctor_release(x_74, 1); - x_85 = x_74; +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_dec(x_75); +x_93 = lean_ctor_get(x_84, 0); +lean_inc(x_93); +x_94 = lean_ctor_get(x_84, 1); +lean_inc(x_94); +if (lean_is_exclusive(x_84)) { + lean_ctor_release(x_84, 0); + lean_ctor_release(x_84, 1); + x_95 = x_84; } else { - lean_dec_ref(x_74); - x_85 = lean_box(0); + lean_dec_ref(x_84); + 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; +} } -if (lean_is_scalar(x_85)) { - x_86 = lean_alloc_ctor(1, 2, 0); +else +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; +lean_dec(x_75); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +x_97 = lean_ctor_get(x_81, 0); +lean_inc(x_97); +x_98 = lean_ctor_get(x_81, 1); +lean_inc(x_98); +if (lean_is_exclusive(x_81)) { + lean_ctor_release(x_81, 0); + lean_ctor_release(x_81, 1); + x_99 = x_81; } else { - x_86 = x_85; + lean_dec_ref(x_81); + x_99 = lean_box(0); } -lean_ctor_set(x_86, 0, x_83); -lean_ctor_set(x_86, 1, x_84); -return x_86; +if (lean_is_scalar(x_99)) { + x_100 = lean_alloc_ctor(1, 2, 0); +} else { + x_100 = x_99; +} +lean_ctor_set(x_100, 0, x_97); +lean_ctor_set(x_100, 1, x_98); +return x_100; } } else { -lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; +lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_dec(x_17); lean_dec(x_16); lean_dec(x_13); @@ -27246,33 +27332,33 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_5); lean_dec(x_4); -x_87 = lean_ctor_get(x_67, 0); -lean_inc(x_87); -x_88 = lean_ctor_get(x_67, 1); -lean_inc(x_88); -if (lean_is_exclusive(x_67)) { - lean_ctor_release(x_67, 0); - lean_ctor_release(x_67, 1); - x_89 = x_67; +x_101 = lean_ctor_get(x_74, 0); +lean_inc(x_101); +x_102 = lean_ctor_get(x_74, 1); +lean_inc(x_102); +if (lean_is_exclusive(x_74)) { + lean_ctor_release(x_74, 0); + lean_ctor_release(x_74, 1); + x_103 = x_74; } else { - lean_dec_ref(x_67); - x_89 = lean_box(0); + lean_dec_ref(x_74); + x_103 = lean_box(0); } -if (lean_is_scalar(x_89)) { - x_90 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_103)) { + x_104 = lean_alloc_ctor(1, 2, 0); } else { - x_90 = x_89; + x_104 = x_103; } -lean_ctor_set(x_90, 0, x_87); -lean_ctor_set(x_90, 1, x_88); -return x_90; +lean_ctor_set(x_104, 0, x_101); +lean_ctor_set(x_104, 1, x_102); +return x_104; } } } } else { -uint8_t x_91; +uint8_t x_105; lean_dec(x_17); lean_dec(x_16); lean_dec(x_13); @@ -27282,23 +27368,23 @@ lean_dec(x_10); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_91 = !lean_is_exclusive(x_18); -if (x_91 == 0) +x_105 = !lean_is_exclusive(x_18); +if (x_105 == 0) { return x_18; } else { -lean_object* x_92; lean_object* x_93; lean_object* x_94; -x_92 = lean_ctor_get(x_18, 0); -x_93 = lean_ctor_get(x_18, 1); -lean_inc(x_93); -lean_inc(x_92); +lean_object* x_106; lean_object* x_107; lean_object* x_108; +x_106 = lean_ctor_get(x_18, 0); +x_107 = lean_ctor_get(x_18, 1); +lean_inc(x_107); +lean_inc(x_106); lean_dec(x_18); -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; +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; } } } @@ -27541,7 +27627,7 @@ static lean_object* _init_l_BitVec_reduceShiftLeftShiftLeft___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("shiftLeft_shiftLeft", 19); +x_1 = lean_mk_string_from_bytes("shiftLeft_add", 13); return x_1; } } @@ -27589,7 +27675,7 @@ return x_17; } } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__1() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__1() { _start: { lean_object* x_1; @@ -27597,17 +27683,17 @@ x_1 = lean_mk_string_from_bytes("reduceShiftLeftShiftLeft", 24); return x_1; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__2() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_BitVec_reduceUnary___lambda__1___closed__2; -x_2 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__1; +x_2 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__3() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__3() { _start: { lean_object* x_1; lean_object* x_2; @@ -27616,167 +27702,167 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__4() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__3; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__3; x_2 = l___regBuiltin_BitVec_reduceHShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2045____closed__3; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__5() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__4; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__4; x_2 = l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1319____closed__5; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__6() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__5; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__5; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__7() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__6; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__6; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__8() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__7; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__7; x_2 = l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1319____closed__5; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__9() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__8; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__8; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__10() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__9; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__9; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__11() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__10; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__10; x_2 = l___regBuiltin_BitVec_reduceHShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2045____closed__3; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__12() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__11; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__11; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__13() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__12; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__12; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__14() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__13; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__13; x_2 = l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1319____closed__5; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__15() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__14; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__14; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__16() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__15; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__15; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__17() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__16; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__16; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__18() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__17; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__17; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__19() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__19() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__18; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__18; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__20() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__20() { _start: { lean_object* x_1; @@ -27784,35 +27870,35 @@ x_1 = lean_alloc_closure((void*)(l_BitVec_reduceShiftLeftShiftLeft), 9, 0); return x_1; } } -LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148_(lean_object* x_1) { +LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163_(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_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__2; -x_3 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__19; -x_4 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__20; +x_2 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__2; +x_3 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__19; +x_4 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__20; x_5 = l_Lean_Meta_Simp_registerBuiltinSimproc(x_2, x_3, x_4, x_1); return x_5; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6150____closed__1() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6165____closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__20; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__20; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6150_(lean_object* x_1) { +LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6165_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; lean_object* x_6; x_2 = l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1321____closed__2; -x_3 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__2; +x_3 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__2; x_4 = 1; -x_5 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6150____closed__1; +x_5 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6165____closed__1; x_6 = l_Lean_Meta_Simp_addSimprocBuiltinAttrCore(x_2, x_3, x_4, x_5, x_1); return x_6; } @@ -27821,7 +27907,7 @@ static lean_object* _init_l_BitVec_reduceShiftRightShiftRight___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("shiftRight_shiftRight", 21); +x_1 = lean_mk_string_from_bytes("shiftRight_add", 14); return x_1; } } @@ -27869,7 +27955,7 @@ return x_17; } } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__1() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__1() { _start: { lean_object* x_1; @@ -27877,177 +27963,177 @@ x_1 = lean_mk_string_from_bytes("reduceShiftRightShiftRight", 26); return x_1; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__2() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_BitVec_reduceUnary___lambda__1___closed__2; -x_2 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__1; +x_2 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__3() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__3; +x_1 = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__3; x_2 = l___regBuiltin_BitVec_reduceHShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2116____closed__3; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__4() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__3; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__3; x_2 = l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1319____closed__5; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__5() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__4; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__4; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__6() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__5; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__5; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__7() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__6; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__6; x_2 = l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1319____closed__5; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__8() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__7; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__7; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__9() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__8; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__8; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__10() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__9; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__9; x_2 = l___regBuiltin_BitVec_reduceHShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_2116____closed__3; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__11() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__10; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__10; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__12() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__11; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__11; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__13() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__12; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__12; x_2 = l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1319____closed__5; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__14() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__13; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__13; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__15() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__14; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__14; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__16() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__15; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__15; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__17() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__16; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__16; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__18() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__17; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__17; x_2 = lean_box(3); x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__19() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__19() { _start: { lean_object* x_1; @@ -28055,35 +28141,35 @@ x_1 = lean_alloc_closure((void*)(l_BitVec_reduceShiftRightShiftRight), 9, 0); return x_1; } } -LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180_(lean_object* x_1) { +LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195_(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_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__2; -x_3 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__18; -x_4 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__19; +x_2 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__2; +x_3 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__18; +x_4 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__19; x_5 = l_Lean_Meta_Simp_registerBuiltinSimproc(x_2, x_3, x_4, x_1); return x_5; } } -static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6182____closed__1() { +static lean_object* _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6197____closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__19; +x_1 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__19; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6182_(lean_object* x_1) { +LEAN_EXPORT lean_object* l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6197_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; lean_object* x_6; x_2 = l___regBuiltin_BitVec_reduceNeg_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_1321____closed__2; -x_3 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__2; +x_3 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__2; x_4 = 1; -x_5 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6182____closed__1; +x_5 = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6197____closed__1; x_6 = l_Lean_Meta_Simp_addSimprocBuiltinAttrCore(x_2, x_3, x_4, x_5, x_1); return x_6; } @@ -29985,102 +30071,102 @@ lean_dec_ref(res); lean_mark_persistent(l_BitVec_reduceShiftLeftShiftLeft___closed__1); l_BitVec_reduceShiftLeftShiftLeft___closed__2 = _init_l_BitVec_reduceShiftLeftShiftLeft___closed__2(); lean_mark_persistent(l_BitVec_reduceShiftLeftShiftLeft___closed__2); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__1 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__1(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__1); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__2 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__2(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__2); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__3 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__3(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__3); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__4 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__4(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__4); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__5 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__5(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__5); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__6 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__6(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__6); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__7 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__7(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__7); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__8 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__8(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__8); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__9 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__9(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__9); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__10 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__10(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__10); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__11 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__11(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__11); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__12 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__12(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__12); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__13 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__13(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__13); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__14 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__14(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__14); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__15 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__15(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__15); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__16 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__16(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__16); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__17 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__17(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__17); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__18 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__18(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__18); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__19 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__19(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__19); -l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__20 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__20(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148____closed__20); -if (builtin) {res = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6148_(lean_io_mk_world()); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__1 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__1(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__1); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__2 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__2(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__2); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__3 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__3(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__3); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__4 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__4(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__4); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__5 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__5(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__5); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__6 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__6(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__6); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__7 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__7(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__7); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__8 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__8(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__8); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__9 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__9(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__9); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__10 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__10(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__10); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__11 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__11(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__11); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__12 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__12(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__12); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__13 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__13(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__13); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__14 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__14(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__14); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__15 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__15(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__15); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__16 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__16(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__16); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__17 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__17(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__17); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__18 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__18(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__18); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__19 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__19(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__19); +l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__20 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__20(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163____closed__20); +if (builtin) {res = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6163_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6150____closed__1 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6150____closed__1(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6150____closed__1); -if (builtin) {res = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6150_(lean_io_mk_world()); +}l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6165____closed__1 = _init_l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6165____closed__1(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6165____closed__1); +if (builtin) {res = l___regBuiltin_BitVec_reduceShiftLeftShiftLeft_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6165_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }l_BitVec_reduceShiftRightShiftRight___closed__1 = _init_l_BitVec_reduceShiftRightShiftRight___closed__1(); lean_mark_persistent(l_BitVec_reduceShiftRightShiftRight___closed__1); l_BitVec_reduceShiftRightShiftRight___closed__2 = _init_l_BitVec_reduceShiftRightShiftRight___closed__2(); lean_mark_persistent(l_BitVec_reduceShiftRightShiftRight___closed__2); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__1 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__1(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__1); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__2 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__2(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__2); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__3 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__3(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__3); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__4 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__4(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__4); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__5 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__5(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__5); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__6 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__6(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__6); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__7 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__7(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__7); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__8 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__8(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__8); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__9 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__9(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__9); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__10 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__10(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__10); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__11 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__11(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__11); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__12 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__12(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__12); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__13 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__13(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__13); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__14 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__14(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__14); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__15 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__15(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__15); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__16 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__16(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__16); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__17 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__17(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__17); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__18 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__18(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__18); -l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__19 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__19(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180____closed__19); -if (builtin) {res = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6180_(lean_io_mk_world()); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__1 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__1(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__1); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__2 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__2(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__2); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__3 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__3(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__3); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__4 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__4(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__4); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__5 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__5(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__5); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__6 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__6(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__6); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__7 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__7(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__7); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__8 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__8(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__8); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__9 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__9(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__9); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__10 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__10(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__10); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__11 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__11(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__11); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__12 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__12(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__12); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__13 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__13(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__13); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__14 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__14(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__14); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__15 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__15(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__15); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__16 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__16(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__16); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__17 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__17(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__17); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__18 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__18(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__18); +l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__19 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__19(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195____closed__19); +if (builtin) {res = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6195_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6182____closed__1 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6182____closed__1(); -lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6182____closed__1); -if (builtin) {res = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6182_(lean_io_mk_world()); +}l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6197____closed__1 = _init_l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6197____closed__1(); +lean_mark_persistent(l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6197____closed__1); +if (builtin) {res = l___regBuiltin_BitVec_reduceShiftRightShiftRight_declare__1____x40_Lean_Meta_Tactic_Simp_BuiltinSimprocs_BitVec___hyg_6197_(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/Simp/Diagnostics.c b/stage0/stdlib/Lean/Meta/Tactic/Simp/Diagnostics.c index 3d35aaf66d46..3d3cbaf05d8b 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Simp/Diagnostics.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Simp/Diagnostics.c @@ -38,7 +38,6 @@ lean_object* lean_array_fget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at___private_Lean_Meta_Tactic_Simp_Diagnostics_0__Lean_Meta_Simp_mkTheoremsWithBadKeySummary___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_collectAboveThreshold___at_Lean_Meta_Simp_mkSimpDiagSummary___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Meta_DiagSummary_isEmpty(lean_object*); -lean_object* l_Lean_Meta_instDecidableLtOrigin___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Simp_reportDiag___closed__9; static lean_object* l_Lean_Meta_Simp_reportDiag___closed__7; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at___private_Lean_Meta_Tactic_Simp_Diagnostics_0__Lean_Meta_Simp_mkTheoremsWithBadKeySummary___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*); @@ -59,6 +58,7 @@ lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(le LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_Simp_mkSimpDiagSummary___spec__5___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Origin_key(lean_object*); lean_object* l_Lean_MessageData_ofFormat(lean_object*); +lean_object* l_Lean_Meta_Origin_lt___boxed(lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_mkSimpDiagSummary___spec__8___closed__4; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_foldlMAux___at_Lean_Meta_Simp_mkSimpDiagSummary___spec__4___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_Tactic_Simp_Diagnostics_0__Lean_Meta_Simp_mkTheoremsWithBadKeySummary___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1420,7 +1420,7 @@ static lean_object* _init_l_Lean_Meta_Simp_mkSimpDiagSummary___closed__3() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_instDecidableLtOrigin___boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Origin_lt___boxed), 2, 0); return x_1; } } diff --git a/stage0/stdlib/Lean/Meta/Tactic/Simp/Rewrite.c b/stage0/stdlib/Lean/Meta/Tactic/Simp/Rewrite.c index c9b284dd0924..38868f0e1e55 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Simp/Rewrite.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Simp/Rewrite.c @@ -122,7 +122,6 @@ lean_object* l_Lean_replaceRef(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Simp_synthesizeArgs___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_DischargeResult_toCtorIdx___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___lambda__1___boxed(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_Meta_SimpTheorems_isLemma___spec__1(lean_object*, lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Simp_seval___closed__1; static lean_object* l_Lean_Meta_Simp_synthesizeArgs_synthesizeInstance___closed__8; @@ -328,6 +327,7 @@ LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Meta_Simp_simpMatchDis LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_synthesizeArgs___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*, lean_object*); static lean_object* l_Lean_Meta_ppSimpTheorem___at___private_Lean_Meta_Tactic_Simp_Rewrite_0__Lean_Meta_Simp_tryTheoremCore_go___spec__1___closed__2; static lean_object* l_Lean_Meta_Simp_simpCtorEq___closed__5; +lean_object* l_Lean_MessageData_ofConst(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_Rewrite_0__Lean_Meta_Simp_tryTheoremCore_go___lambda__3___closed__5; uint8_t l_Lean_BinderInfo_isInstImplicit(uint8_t); LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Meta_Simp_simpGround___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -594,6 +594,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_mkDefaultMethods(lean_object*, lean_ob LEAN_EXPORT lean_object* l_Lean_Meta_Simp_seval(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Simp_mkSEvalMethods___rarg___closed__1; lean_object* l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_PersistentHashMap_contains___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Simp_discharge_x3f_x27___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_Meta_Simp_synthesizeArgs___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_forInUnsafe_loop___at_Lean_Meta_Simp_sevalGround___spec__1___closed__3; @@ -1149,17 +1150,18 @@ lean_dec(x_1); x_13 = l_Lean_mkConstWithLevelParams___at_Lean_Meta_Simp_discharge_x3f_x27___spec__2(x_10, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); if (lean_obj_tag(x_13) == 0) { -if (x_11 == 0) -{ -if (x_12 == 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; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_15; lean_object* x_16; x_15 = lean_ctor_get(x_13, 0); -x_16 = l_Lean_MessageData_ofExpr(x_15); +x_16 = l_Lean_MessageData_ofConst(x_15); +if (x_11 == 0) +{ +if (x_12 == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; x_17 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___closed__2; x_18 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_18, 0, x_17); @@ -1173,221 +1175,191 @@ return x_13; } 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; -x_21 = lean_ctor_get(x_13, 0); -x_22 = lean_ctor_get(x_13, 1); -lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_13); -x_23 = l_Lean_MessageData_ofExpr(x_21); -x_24 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___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_23); -x_26 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___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 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_27); -lean_ctor_set(x_28, 1, x_22); -return x_28; +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_21 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___closed__6; +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_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___closed__4; +x_24 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +lean_ctor_set(x_13, 0, x_24); +return x_13; } } else { -uint8_t x_29; -x_29 = !lean_is_exclusive(x_13); -if (x_29 == 0) +if (x_12 == 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; -x_30 = lean_ctor_get(x_13, 0); -x_31 = l_Lean_MessageData_ofExpr(x_30); -x_32 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___closed__6; -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_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___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); -lean_ctor_set(x_13, 0, x_35); +lean_ctor_set(x_13, 0, x_16); return x_13; } 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; -x_36 = lean_ctor_get(x_13, 0); -x_37 = lean_ctor_get(x_13, 1); -lean_inc(x_37); -lean_inc(x_36); -lean_dec(x_13); -x_38 = l_Lean_MessageData_ofExpr(x_36); -x_39 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___closed__6; -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_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___closed__4; -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(0, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_37); -return x_43; +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___closed__8; +x_26 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_16); +x_27 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___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); +lean_ctor_set(x_13, 0, x_28); +return x_13; } } } else { -if (x_12 == 0) +lean_object* x_29; lean_object* x_30; lean_object* x_31; +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_13); +x_31 = l_Lean_MessageData_ofConst(x_29); +if (x_11 == 0) { -uint8_t x_44; -x_44 = !lean_is_exclusive(x_13); -if (x_44 == 0) +if (x_12 == 0) { -lean_object* x_45; lean_object* x_46; -x_45 = lean_ctor_get(x_13, 0); -x_46 = l_Lean_MessageData_ofExpr(x_45); -lean_ctor_set(x_13, 0, x_46); -return x_13; +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_32 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___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); +x_34 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___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 = 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 { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_47 = lean_ctor_get(x_13, 0); -x_48 = lean_ctor_get(x_13, 1); -lean_inc(x_48); -lean_inc(x_47); -lean_dec(x_13); -x_49 = l_Lean_MessageData_ofExpr(x_47); -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; +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_37 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___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_31); +x_39 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___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 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_40); +lean_ctor_set(x_41, 1, x_30); +return x_41; } } else { -uint8_t x_51; -x_51 = !lean_is_exclusive(x_13); -if (x_51 == 0) +if (x_12 == 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; -x_52 = lean_ctor_get(x_13, 0); -x_53 = l_Lean_MessageData_ofExpr(x_52); -x_54 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___closed__8; -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_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___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); -lean_ctor_set(x_13, 0, x_57); -return x_13; +lean_object* x_42; +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_31); +lean_ctor_set(x_42, 1, x_30); +return x_42; } 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; lean_object* x_64; lean_object* x_65; -x_58 = lean_ctor_get(x_13, 0); -x_59 = lean_ctor_get(x_13, 1); -lean_inc(x_59); -lean_inc(x_58); -lean_dec(x_13); -x_60 = l_Lean_MessageData_ofExpr(x_58); -x_61 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___closed__8; -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_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__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 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_65, 0, x_64); -lean_ctor_set(x_65, 1, x_59); -return x_65; +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_43 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___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_31); +x_45 = l_Lean_Meta_ppOrigin___at_Lean_Meta_Simp_discharge_x3f_x27___spec__1___closed__4; +x_46 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, 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_30); +return x_47; } } } } else { -uint8_t x_66; -x_66 = !lean_is_exclusive(x_13); -if (x_66 == 0) +uint8_t x_48; +x_48 = !lean_is_exclusive(x_13); +if (x_48 == 0) { return x_13; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_67 = lean_ctor_get(x_13, 0); -x_68 = lean_ctor_get(x_13, 1); -lean_inc(x_68); -lean_inc(x_67); +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_13, 0); +x_50 = lean_ctor_get(x_13, 1); +lean_inc(x_50); +lean_inc(x_49); lean_dec(x_13); -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_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 1: { -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_70 = lean_ctor_get(x_1, 0); -lean_inc(x_70); +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_52 = lean_ctor_get(x_1, 0); +lean_inc(x_52); lean_dec(x_1); -x_71 = l_Lean_Expr_fvar___override(x_70); -x_72 = l_Lean_MessageData_ofExpr(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_9); -return x_73; +x_53 = l_Lean_Expr_fvar___override(x_52); +x_54 = l_Lean_MessageData_ofExpr(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_9); +return x_55; } case 2: { -uint8_t x_74; -x_74 = !lean_is_exclusive(x_1); -if (x_74 == 0) +uint8_t x_56; +x_56 = !lean_is_exclusive(x_1); +if (x_56 == 0) { -lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_75 = lean_ctor_get(x_1, 1); -x_76 = lean_ctor_get(x_1, 0); -lean_dec(x_76); -x_77 = l_Lean_MessageData_ofSyntax(x_75); +lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_57 = lean_ctor_get(x_1, 1); +x_58 = lean_ctor_get(x_1, 0); +lean_dec(x_58); +x_59 = l_Lean_MessageData_ofSyntax(x_57); lean_ctor_set_tag(x_1, 0); lean_ctor_set(x_1, 1, x_9); -lean_ctor_set(x_1, 0, x_77); +lean_ctor_set(x_1, 0, x_59); return x_1; } else { -lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_78 = lean_ctor_get(x_1, 1); -lean_inc(x_78); +lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_60 = lean_ctor_get(x_1, 1); +lean_inc(x_60); lean_dec(x_1); -x_79 = l_Lean_MessageData_ofSyntax(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_9); -return x_80; +x_61 = l_Lean_MessageData_ofSyntax(x_60); +x_62 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_62, 0, x_61); +lean_ctor_set(x_62, 1, x_9); +return x_62; } } default: { -lean_object* x_81; lean_object* x_82; lean_object* x_83; -x_81 = lean_ctor_get(x_1, 0); -lean_inc(x_81); +lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_63 = lean_ctor_get(x_1, 0); +lean_inc(x_63); lean_dec(x_1); -x_82 = l_Lean_MessageData_ofName(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_9); -return x_83; +x_64 = l_Lean_MessageData_ofName(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_9); +return x_65; } } } @@ -15081,7 +15053,7 @@ lean_object* x_3; uint8_t x_4; x_3 = lean_ctor_get(x_2, 4); lean_inc(x_3); lean_dec(x_2); -x_4 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_isLemma___spec__1(x_1, x_3); +x_4 = l_Lean_PersistentHashMap_contains___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__1(x_1, x_3); return x_4; } } diff --git a/stage0/stdlib/Lean/Meta/Tactic/Simp/SimpAll.c b/stage0/stdlib/Lean/Meta/Tactic/Simp/SimpAll.c index e0e57624ac18..e2230c212df0 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Simp/SimpAll.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Simp/SimpAll.c @@ -98,6 +98,7 @@ lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withMVarContextImp___rarg( lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_mkFreshId___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__2___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MessageData_ofConst(lean_object*); lean_object* l_Lean_Meta_getPropHyps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_name_eq(lean_object*, lean_object*); @@ -1899,17 +1900,18 @@ lean_dec(x_1); x_11 = l_Lean_mkConstWithLevelParams___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__4(x_8, x_2, x_3, x_4, x_5, x_6, x_7); if (lean_obj_tag(x_11) == 0) { -if (x_9 == 0) -{ -if (x_10 == 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; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_object* x_13; lean_object* x_14; x_13 = lean_ctor_get(x_11, 0); -x_14 = l_Lean_MessageData_ofExpr(x_13); +x_14 = l_Lean_MessageData_ofConst(x_13); +if (x_9 == 0) +{ +if (x_10 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; x_15 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___closed__2; x_16 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_16, 0, x_15); @@ -1923,221 +1925,191 @@ return x_11; } 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; lean_object* x_25; lean_object* x_26; -x_19 = lean_ctor_get(x_11, 0); -x_20 = lean_ctor_get(x_11, 1); -lean_inc(x_20); -lean_inc(x_19); -lean_dec(x_11); -x_21 = l_Lean_MessageData_ofExpr(x_19); -x_22 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___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_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___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_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_20); -return x_26; +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___closed__6; +x_20 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_14); +x_21 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___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); +lean_ctor_set(x_11, 0, x_22); +return x_11; } } else { -uint8_t x_27; -x_27 = !lean_is_exclusive(x_11); -if (x_27 == 0) +if (x_10 == 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_11, 0); -x_29 = l_Lean_MessageData_ofExpr(x_28); -x_30 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___closed__6; -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_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___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); -lean_ctor_set(x_11, 0, x_33); +lean_ctor_set(x_11, 0, x_14); return x_11; } 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; -x_34 = lean_ctor_get(x_11, 0); -x_35 = lean_ctor_get(x_11, 1); -lean_inc(x_35); -lean_inc(x_34); -lean_dec(x_11); -x_36 = l_Lean_MessageData_ofExpr(x_34); -x_37 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___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_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___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 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_41, 0, x_40); -lean_ctor_set(x_41, 1, x_35); -return x_41; +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___closed__8; +x_24 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_24, 0, x_23); +lean_ctor_set(x_24, 1, x_14); +x_25 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___closed__4; +x_26 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +lean_ctor_set(x_11, 0, x_26); +return x_11; } } } else { -if (x_10 == 0) +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 = l_Lean_MessageData_ofConst(x_27); +if (x_9 == 0) { -uint8_t x_42; -x_42 = !lean_is_exclusive(x_11); -if (x_42 == 0) +if (x_10 == 0) { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_11, 0); -x_44 = l_Lean_MessageData_ofExpr(x_43); -lean_ctor_set(x_11, 0, x_44); -return x_11; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_30 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__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); +x_32 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___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 = 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_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_45 = lean_ctor_get(x_11, 0); -x_46 = lean_ctor_get(x_11, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_11); -x_47 = l_Lean_MessageData_ofExpr(x_45); -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; +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___closed__6; +x_36 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_29); +x_37 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___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 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_38); +lean_ctor_set(x_39, 1, x_28); +return x_39; } } else { -uint8_t x_49; -x_49 = !lean_is_exclusive(x_11); -if (x_49 == 0) +if (x_10 == 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; -x_50 = lean_ctor_get(x_11, 0); -x_51 = l_Lean_MessageData_ofExpr(x_50); -x_52 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___closed__8; -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_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___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); -lean_ctor_set(x_11, 0, x_55); -return x_11; +lean_object* x_40; +x_40 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_40, 0, x_29); +lean_ctor_set(x_40, 1, x_28); +return x_40; } 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; lean_object* x_63; -x_56 = lean_ctor_get(x_11, 0); -x_57 = lean_ctor_get(x_11, 1); -lean_inc(x_57); -lean_inc(x_56); -lean_dec(x_11); -x_58 = l_Lean_MessageData_ofExpr(x_56); -x_59 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___closed__8; -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_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___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); -x_63 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_63, 0, x_62); -lean_ctor_set(x_63, 1, x_57); -return x_63; +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_41 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___closed__8; +x_42 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_29); +x_43 = l_Lean_Meta_ppOrigin___at___private_Lean_Meta_Tactic_Simp_SimpAll_0__Lean_Meta_SimpAll_loop___spec__3___closed__4; +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 = 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; } } } } else { -uint8_t x_64; -x_64 = !lean_is_exclusive(x_11); -if (x_64 == 0) +uint8_t x_46; +x_46 = !lean_is_exclusive(x_11); +if (x_46 == 0) { return x_11; } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_65 = lean_ctor_get(x_11, 0); -x_66 = lean_ctor_get(x_11, 1); -lean_inc(x_66); -lean_inc(x_65); +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_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_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; } } } case 1: { -lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; -x_68 = lean_ctor_get(x_1, 0); -lean_inc(x_68); +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_50 = lean_ctor_get(x_1, 0); +lean_inc(x_50); lean_dec(x_1); -x_69 = l_Lean_Expr_fvar___override(x_68); -x_70 = l_Lean_MessageData_ofExpr(x_69); -x_71 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_71, 0, x_70); -lean_ctor_set(x_71, 1, x_7); -return x_71; +x_51 = l_Lean_Expr_fvar___override(x_50); +x_52 = l_Lean_MessageData_ofExpr(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_7); +return x_53; } case 2: { -uint8_t x_72; -x_72 = !lean_is_exclusive(x_1); -if (x_72 == 0) +uint8_t x_54; +x_54 = !lean_is_exclusive(x_1); +if (x_54 == 0) { -lean_object* x_73; lean_object* x_74; lean_object* x_75; -x_73 = lean_ctor_get(x_1, 1); -x_74 = lean_ctor_get(x_1, 0); -lean_dec(x_74); -x_75 = l_Lean_MessageData_ofSyntax(x_73); +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = lean_ctor_get(x_1, 1); +x_56 = lean_ctor_get(x_1, 0); +lean_dec(x_56); +x_57 = l_Lean_MessageData_ofSyntax(x_55); lean_ctor_set_tag(x_1, 0); lean_ctor_set(x_1, 1, x_7); -lean_ctor_set(x_1, 0, x_75); +lean_ctor_set(x_1, 0, x_57); return x_1; } else { -lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_76 = lean_ctor_get(x_1, 1); -lean_inc(x_76); +lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_58 = lean_ctor_get(x_1, 1); +lean_inc(x_58); lean_dec(x_1); -x_77 = l_Lean_MessageData_ofSyntax(x_76); -x_78 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_78, 0, x_77); -lean_ctor_set(x_78, 1, x_7); -return x_78; +x_59 = l_Lean_MessageData_ofSyntax(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_7); +return x_60; } } default: { -lean_object* x_79; lean_object* x_80; lean_object* x_81; -x_79 = lean_ctor_get(x_1, 0); -lean_inc(x_79); +lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_61 = lean_ctor_get(x_1, 0); +lean_inc(x_61); lean_dec(x_1); -x_80 = l_Lean_MessageData_ofName(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_7); -return x_81; +x_62 = l_Lean_MessageData_ofName(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_7); +return x_63; } } } diff --git a/stage0/stdlib/Lean/Meta/Tactic/Simp/SimpTheorems.c b/stage0/stdlib/Lean/Meta/Tactic/Simp/SimpTheorems.c index fb51f7e63acb..f9312cbbb59c 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Simp/SimpTheorems.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Simp/SimpTheorems.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Meta.Tactic.Simp.SimpTheorems -// Imports: Lean.ScopedEnvExtension Lean.Util.Recognizers Lean.Meta.DiscrTree Lean.Meta.AppBuilder Lean.Meta.Eqns Lean.Meta.Tactic.AuxLemma Lean.DocString +// Imports: Lean.ScopedEnvExtension Lean.Util.Recognizers Lean.Meta.DiscrTree Lean.Meta.AppBuilder Lean.Meta.Eqns Lean.Meta.Tactic.AuxLemma Lean.DocString Lean.PrettyPrinter #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -22,10 +22,12 @@ 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*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_79____closed__13; LEAN_EXPORT lean_object* l_Lean_Meta_mkSimpExt(lean_object*, lean_object*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__5; static lean_object* l_Lean_Meta_isRflProofCore___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_isRflProofCore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorem_getValue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5372____spec__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_isDeclToUnfold___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -34,13 +36,13 @@ lean_object* l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spe LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocessProof___spec__1(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem(lean_object*); LEAN_EXPORT 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_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_SimpTheorems_eraseCore___spec__8___boxed(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_withLetDecl___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_isPerm___spec__1(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__1; size_t lean_usize_shift_right(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_erase___spec__1___boxed(lean_object*, lean_object*); -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__27; LEAN_EXPORT lean_object* l_Lean_AssocList_find_x3f___at_Lean_Meta_getSimpExtension_x3f___spec__2___boxed(lean_object*, lean_object*); lean_object* l_Lean_Meta_mkEqTrue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_simpDtConfig___closed__1; @@ -51,7 +53,6 @@ LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_SimpTh LEAN_EXPORT uint8_t l_Lean_Meta_SimpTheoremsArray_isErased(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___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___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__2; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__5; static lean_object* l_panic___at_Lean_Meta_addSimpTheoremEntry___spec__13___closed__1; static lean_object* l_panic___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___spec__2___closed__1; lean_object* lean_whnf(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -65,7 +66,8 @@ lean_object* l_Lean_ConstantInfo_levelParams(lean_object*); static lean_object* l_Lean_Meta_mkSimpExt___closed__3; static lean_object* l_Lean_Meta_isRflProofCore___closed__1; lean_object* l_Lean_Meta_mkEqSymm(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__24; +lean_object* l_Lean_PersistentHashMap_erase___at_Lean_KeyedDeclsAttribute_ExtensionState_insert___spec__1(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*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___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_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_79____closed__2; @@ -77,11 +79,11 @@ static lean_object* l_Lean_Meta_SimpTheorem_getValue___closed__3; uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_toString(lean_object*, uint8_t); +static lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5___closed__1; LEAN_EXPORT lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__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_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_79____closed__4; static lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_isPerm(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_addSimpTheoremEntry_updateLemmaNames___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_isRflProof(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_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_79____closed__8; @@ -95,10 +97,15 @@ LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_addConst___boxed(lean_object*, lean_object* l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_DiscrTree_instInhabited(lean_object*); static lean_object* l_Lean_Meta_instInhabitedSimpTheorem___closed__2; +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Meta_SimpTheorems_eraseCore___spec__4(lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5372_(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___lambda__2___closed__1; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__20; +extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; lean_object* l___private_Init_GetElem_0__outOfBounds___rarg(lean_object*); -LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_isLemma___spec__1(lean_object*, lean_object*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__22; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__9; LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorem_levelParams___default; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__7(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_Expr_proj___override(lean_object*, lean_object*, lean_object*); @@ -107,7 +114,7 @@ lean_object* lean_array_fget(lean_object*, lean_object*); extern lean_object* l_Lean_Expr_instBEq; lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__4; -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_addSimpTheoremEntry___spec__3___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_instInhabitedOrigin___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_addSimpTheoremEntry_updateLemmaNames(lean_object*, lean_object*); @@ -115,7 +122,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_ LEAN_EXPORT lean_object* l___private_Init_Data_Array_BinSearch_0__Array_binInsertAux___at_Lean_Meta_addSimpTheoremEntry___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instBEqSimpTheorem___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__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___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__17; LEAN_EXPORT lean_object* l_Lean_Meta_instDecidableLtOrigin___boxed(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*); LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin___rarg___lambda__1(uint8_t, uint8_t, lean_object*, lean_object*); @@ -123,9 +129,9 @@ static lean_object* l_Lean_Meta_instInhabitedSimpTheorem___closed__1; LEAN_EXPORT lean_object* l_List_mapM_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_instDecidableLtOrigin(lean_object*, lean_object*); LEAN_EXPORT uint64_t l_Lean_Meta_instHashableOrigin(lean_object*); -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__6; lean_object* l_Lean_stringToMessageData(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_SimpTheoremsArray_eraseTheorem___spec__1(lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5372____spec__1(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Meta_hasSmartUnfoldingDecl(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpExtension_getTheorems___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -136,19 +142,24 @@ LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_toUnfoldThms___default; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_shouldPreprocess___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_SimpTheorems_isLemma(lean_object*, lean_object*); static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__1___closed__8; +LEAN_EXPORT lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314_; 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 uint8_t l_Lean_Meta_instBEqOrigin(lean_object*, lean_object*); lean_object* l_instBEqProd___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_appArg_x21(lean_object*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__10; +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1; lean_object* l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Meta_isRflProofCore___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem___rarg___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_addDeclToUnfold___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_logWarning___rarg(lean_object*, lean_object*, lean_object*, 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_79____closed__15; static lean_object* l_Lean_Meta_mkSimpExt___closed__1; lean_object* l_Lean_Meta_mkAuxLemma(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erased___default; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__13; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__3; lean_object* l_List_appendTR___rarg(lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); @@ -156,6 +167,7 @@ lean_object* l_Lean_PersistentHashMap_isUnaryNode___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_add(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, 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_79____closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__18; LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorem_getValue___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_addSimpTheoremEntry(lean_object*, lean_object*); static lean_object* l_Lean_Meta_isRflProofCore___closed__8; @@ -170,11 +182,11 @@ LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem___rarg___boxed(lean_object*, uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l_Lean_Meta_ppSimpTheorem___rarg___lambda__1___closed__2; static lean_object* l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__1; -static lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__3; uint8_t lean_expr_eqv(lean_object*, lean_object*); static lean_object* l_Lean_Meta_instToFormatSimpTheorem___closed__4; lean_object* l_Lean_registerSimpleScopedEnvExtension___rarg(lean_object*, lean_object*); 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*); lean_object* l_Array_feraseIdx___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Meta_SimpTheorems_erase___rarg___closed__1; lean_object* lean_nat_to_int(lean_object*); @@ -183,19 +195,19 @@ 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*); LEAN_EXPORT lean_object* l_Lean_Meta_addSimpTheorem___boxed(lean_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___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__8; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__1___closed__1; 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*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_79____closed__10; +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(lean_object*, size_t, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_mkSimpTheorems___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_Origin_key___boxed(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3(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_SimpTheorems_isLetDeclToUnfold(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheoremsArray_isErased___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_SimpTheorems_isLemma___spec__2___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___spec__1(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 size_t l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__1; +LEAN_EXPORT lean_object* l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___spec__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*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__7; LEAN_EXPORT lean_object* l___private_Init_Data_Array_BinSearch_0__Array_binInsertAux___at_Lean_Meta_addSimpTheoremEntry___spec__12(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_SimpTheorems_eraseCore___spec__5___boxed(lean_object*, lean_object*, lean_object*, 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_79____closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_simpDtConfig; LEAN_EXPORT lean_object* l_Lean_Meta_Origin_key(lean_object*); @@ -203,11 +215,11 @@ LEAN_EXPORT uint8_t l_Lean_Meta_SimpTheoremsArray_isDeclToUnfold(lean_object*, l 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_Lean_Meta_instToFormatSimpTheorem___closed__1; lean_object* l_Lean_MessageData_ofFormat(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Origin_lt___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Meta_SimpTheorem_getValue___closed__4; static lean_object* l_Lean_Meta_SimpTheorems_pre___default___closed__1; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_addSimpTheorem___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_Meta_SimpTheorems_isLetDeclToUnfold___boxed(lean_object*, lean_object*); -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__11; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_79____closed__9; lean_object* l_Lean_Meta_mkPropExt(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_erase___spec__1(lean_object*, lean_object*); @@ -215,7 +227,6 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_ lean_object* l_Lean_Meta_DiscrTree_empty(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___lambda__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* l_Lean_Meta_getEqnsFor_x3f(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocessProof___boxed(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_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_isPerm___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -229,6 +240,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem___rarg___lambda__2(lean_objec LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_addDeclToUnfoldCore(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_checkTypeIsProp___closed__1; lean_object* l_Lean_Meta_mkEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__19; static lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__5; LEAN_EXPORT uint8_t l_Lean_Meta_SimpTheorem_post___default; LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -239,8 +251,11 @@ static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkConstWithLevelParams___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_constName_x21(lean_object*); +static size_t l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__2; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__28; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___closed__10; LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_post___default; +lean_object* l_Lean_MessageData_ofConst(lean_object*); LEAN_EXPORT lean_object* l_Array_indexOfAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__3___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_instReprOrigin___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__1; @@ -249,7 +264,9 @@ lean_object* l_panic___at_Lean_Expr_appFn_x21___spec__1(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__2; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_79____closed__3; static lean_object* l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__3; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__23; static lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___closed__1; +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__7(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_getSimpExtension_x3f___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__5; lean_object* l_instHashableProd___rarg___boxed(lean_object*, lean_object*, lean_object*); @@ -263,26 +280,27 @@ LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_toUnfold___default; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__5; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_binInsertM___at_Lean_Meta_addSimpTheoremEntry___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_isRflTheorem(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_mkSimpTheorems___spec__1(lean_object*, lean_object*, uint8_t, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SimpTheorems_erase___rarg___closed__3; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__3; lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_getEqnsFor_x3f___spec__1(lean_object*, lean_object*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__26; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocessProof(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_SimpTheorems_addDeclToUnfold___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_appFn_x21(lean_object*); -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_erase___at_Lean_Meta_SimpTheorems_eraseCore___spec__1___boxed(lean_object*, lean_object*); -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__23; LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_addSimpTheoremEntry___spec__13(lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_SimpTheoremsArray_isErased___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_checkBadRewrite(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__1___closed__3; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__15; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__2; static lean_object* l_Lean_Meta_SimpTheorems_addDeclToUnfold___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___closed__3; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__4; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___closed__4; static lean_object* l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__1; lean_object* l_Lean_Meta_DiscrTree_mkPath(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__27; lean_object* lean_usize_to_nat(size_t); size_t lean_hashmap_mk_idx(lean_object*, uint64_t); lean_object* l_Lean_Meta_instInhabitedMetaM___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -290,40 +308,36 @@ LEAN_EXPORT lean_object* l_Lean_Meta_instBEqOrigin___boxed(lean_object*, lean_ob static lean_object* l_Lean_Meta_instInhabitedSimpTheorems___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_79____boxed(lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofExpr(lean_object*); -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__12; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__6(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_PersistentHashMap_containsAux___at_Lean_Meta_SimpTheorems_erase___spec__2___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5017_(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_checkBadRewrite___closed__1; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__25; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__16; static lean_object* l_Lean_Meta_SimpTheorem_getValue___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_SimpExtension_getTheorems(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_addSimpTheorem(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_isRflProofCore___closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_instLTOrigin; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__17; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__6; +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_addSimpTheoremEntry___spec__3(lean_object*, size_t, lean_object*); -LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_SimpTheorems_isLemma___spec__2(lean_object*, size_t, lean_object*); static lean_object* l_Lean_Meta_ppSimpTheorem___rarg___lambda__1___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__10; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_shouldPreprocess(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5017____spec__1(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__2___closed__1; -LEAN_EXPORT lean_object* l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___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_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___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___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__8; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorem_priority___default; lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2056_(lean_object*, lean_object*); static lean_object* l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__4; lean_object* l_Lean_Meta_isRecursiveDefinition(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___closed__5; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__21; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_addSimpTheoremEntry___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___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_mkSimpExt___closed__2; -lean_object* l_Lean_throwError___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_checkTypeIsProp___closed__2; extern lean_object* l_Lean_Meta_DiscrTree_instInhabitedKey; LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin___rarg(lean_object*, lean_object*, lean_object*, lean_object*); @@ -333,13 +347,13 @@ static lean_object* l_Lean_Meta_isRflProofCore___closed__7; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__7; static lean_object* l_Lean_Meta_SimpTheorems_erase___rarg___closed__4; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__9; -static size_t l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__2; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists(lean_object*, lean_object*); static lean_object* l_Lean_Meta_isRflProofCore___closed__4; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__7; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__12; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__24; LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_addLetDeclToUnfold(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_79____closed__1; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_79____closed__11; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__10; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheoremsArray_isLetDeclToUnfold___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -354,11 +368,12 @@ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_M lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instInhabitedSimpTheorems; lean_object* l_Lean_indentExpr(lean_object*); +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_SimpTheorems_eraseCore___spec__6(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_mkEmptyEntries(lean_object*, lean_object*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__15; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_SimpTheoremsArray_isLetDeclToUnfold___spec__1(lean_object*, lean_object*, size_t, size_t); static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__1___closed__6; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_SimpTheoremsArray_isErased___spec__1(lean_object*, lean_object*, size_t, size_t); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_SimpTheorems_eraseCore___spec__4(lean_object*, size_t, size_t, lean_object*); lean_object* l_List_mapM_loop___at___private_Lean_Meta_AppBuilder_0__Lean_Meta_mkFun___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_getSimpExtension_x3f(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -369,13 +384,13 @@ uint64_t l_Lean_Name_hash___override(lean_object*); LEAN_EXPORT lean_object* l_Array_indexOfAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); +static size_t l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_79____closed__17; 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 uint8_t l_Lean_Meta_SimpTheorems_isDeclToUnfold(lean_object*, lean_object*); uint8_t l_ptrEqList___rarg(lean_object*, lean_object*); static lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__3; lean_object* l_Repr_addAppParen(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959_; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_79____closed__14; static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__1___closed__3; lean_object* lean_panic_fn(lean_object*, lean_object*); @@ -383,8 +398,8 @@ static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_ extern lean_object* l_Lean_Expr_instHashable; LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_isPerm___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_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__1___closed__7; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__2; lean_object* lean_nat_sub(lean_object*, lean_object*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__6; lean_object* l_Lean_ScopedEnvExtension_getState___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_insertAt_x21___rarg(lean_object*, lean_object*, lean_object*); @@ -394,8 +409,7 @@ LEAN_EXPORT lean_object* l_Array_binInsertM___at_Lean_Meta_addSimpTheoremEntry__ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___boxed(lean_object*, 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_addCore___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__2___closed__3; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__18; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__9; +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_SimpTheorems_eraseCore___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin(lean_object*); static lean_object* l_Lean_Meta_instToFormatSimpTheorem___closed__2; lean_object* l_Lean_PersistentHashMap_mkCollisionNode___rarg(lean_object*, lean_object*, lean_object*, lean_object*); @@ -408,6 +422,7 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_SimpTheoremsArray LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___boxed(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*); LEAN_EXPORT lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__25; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__8(lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_sub(size_t, size_t); @@ -420,32 +435,27 @@ static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem_ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_addSimpTheoremEntry___spec__2(lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorem_keys___default; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__14; +LEAN_EXPORT uint8_t l_Lean_Meta_Origin_lt(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instHashableOrigin___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instInhabitedOrigin; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___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* l_Lean_Meta_mkEqFalse(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_mapM_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___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_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__14; LEAN_EXPORT lean_object* l_Lean_Meta_simpExtensionMapRef; LEAN_EXPORT uint8_t l_Lean_Meta_SimpTheoremsArray_isLetDeclToUnfold(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2(lean_object*, size_t, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); lean_object* l_Lean_Expr_fvar___override(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__13; -LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_SimpTheorems_isLemma___spec__3(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_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); lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__20; static lean_object* l_Lean_Meta_instToFormatSimpTheorem___closed__5; -LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5017____spec__1___boxed(lean_object*); lean_object* l_List_redLength___rarg(lean_object*); -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_isLemma___spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_mkSimpTheorems(lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_addSimpTheoremEntry___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__1___closed__1; static lean_object* l_Lean_Meta_instToFormatSimpTheorem___closed__6; @@ -455,20 +465,20 @@ lean_object* lean_string_append(lean_object*, lean_object*); uint8_t l_Lean_PersistentHashMap_contains___at_Lean_NameSSet_contains___spec__3(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_shouldPreprocess___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_79____closed__18; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__19; +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__1(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__1___closed__2; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__4; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__11; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore(lean_object*, 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_InfoCacheKey_instHashable___boxed(lean_object*); lean_object* lean_array_get_size(lean_object*); static lean_object* l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__5; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___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_foldlMUnsafe_fold___at_Lean_Meta_SimpTheorems_eraseCore___spec__8(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instToFormatSimpTheorem(lean_object*); lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SimpTheorems_toUnfoldThms___default___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go(uint8_t, uint8_t, lean_object*, 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___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__26; uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_addSimpTheoremEntry___spec__8(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(lean_object*, size_t, size_t, lean_object*, lean_object*); @@ -479,27 +489,23 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_ lean_object* l_Lean_Meta_mkLambdaFVars(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___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__2; -lean_object* l_Lean_PersistentHashMap_erase___at_Lean_Meta_addInstanceEntry___spec__18(lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(lean_object*); -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__1; -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_SimpTheorems_isLemma___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__21; uint8_t l_Lean_Expr_isConst(lean_object*); -extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_Instances_erased___default___spec__1; uint8_t l_Lean_Expr_isFVar(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__8; uint8_t l_Lean_Expr_isForall(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_eraseCore(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheoremsArray_addTheorem(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__22; LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_addDeclToUnfold___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__7; -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__3(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__4; static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___closed__6; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); lean_object* l_Lean_MessageData_ofName(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__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_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseFwdIfBwd(lean_object*, lean_object*); lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); lean_object* lean_expr_instantiate1(lean_object*, lean_object*); lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); @@ -510,16 +516,15 @@ LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheoremsArray_eraseTheorem(lean_object* uint64_t l_Lean_Meta_DiscrTree_Key_hash(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_shouldPreprocess___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__2; +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__2(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry___spec__7(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___closed__1; LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_SimpTheorems_erase___spec__2(lean_object*, size_t, lean_object*); static lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__4; -static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__28; +static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__16; size_t lean_usize_land(size_t, size_t); -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_whnfR(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___closed__8; -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_SimpTheorems_eraseCore___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_toArrayAux___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_erase___at_Lean_Meta_SimpTheorems_eraseCore___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_lemmaNames___default; @@ -1175,2443 +1180,2281 @@ return x_2; LEAN_EXPORT uint8_t l_Lean_Meta_instBEqOrigin(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; uint8_t x_5; -x_3 = l_Lean_Meta_Origin_key(x_1); -x_4 = l_Lean_Meta_Origin_key(x_2); -x_5 = lean_name_eq(x_3, x_4); -lean_dec(x_4); -lean_dec(x_3); -return x_5; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_instBEqOrigin___boxed(lean_object* x_1, lean_object* x_2) { -_start: +if (lean_obj_tag(x_1) == 0) { -uint8_t x_3; lean_object* x_4; -x_3 = l_Lean_Meta_instBEqOrigin(x_1, x_2); -lean_dec(x_2); -lean_dec(x_1); -x_4 = lean_box(x_3); -return x_4; -} -} -LEAN_EXPORT uint64_t l_Lean_Meta_instHashableOrigin(lean_object* x_1) { -_start: +uint8_t x_3; +x_3 = lean_ctor_get_uint8(x_1, sizeof(void*)*1); +if (x_3 == 0) { -lean_object* x_2; uint64_t x_3; -x_2 = l_Lean_Meta_Origin_key(x_1); -x_3 = l_Lean_Name_hash___override(x_2); -lean_dec(x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_instHashableOrigin___boxed(lean_object* x_1) { -_start: +if (lean_obj_tag(x_2) == 0) { -uint64_t x_2; lean_object* x_3; -x_2 = l_Lean_Meta_instHashableOrigin(x_1); +uint8_t x_4; +x_4 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_4 == 0) +{ +lean_object* x_5; uint8_t x_6; lean_object* x_7; uint8_t x_8; uint8_t x_9; +x_5 = lean_ctor_get(x_1, 0); +lean_inc(x_5); +x_6 = lean_ctor_get_uint8(x_1, sizeof(void*)*1 + 1); lean_dec(x_1); -x_3 = lean_box_uint64(x_2); -return x_3; +x_7 = lean_ctor_get(x_2, 0); +lean_inc(x_7); +x_8 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +lean_dec(x_2); +x_9 = lean_name_eq(x_5, x_7); +lean_dec(x_7); +lean_dec(x_5); +if (x_9 == 0) +{ +uint8_t x_10; +x_10 = 0; +return x_10; } +else +{ +if (x_6 == 0) +{ +if (x_8 == 0) +{ +uint8_t x_11; +x_11 = 1; +return x_11; } -static lean_object* _init_l_Lean_Meta_instLTOrigin() { -_start: +else { -lean_object* x_1; -x_1 = lean_box(0); -return x_1; +uint8_t x_12; +x_12 = 0; +return x_12; } } -LEAN_EXPORT uint8_t l_Lean_Meta_instDecidableLtOrigin(lean_object* x_1, lean_object* x_2) { -_start: +else { -lean_object* x_3; lean_object* x_4; uint8_t x_5; -x_3 = l_Lean_Meta_Origin_key(x_1); -x_4 = l_Lean_Meta_Origin_key(x_2); -x_5 = l_Lean_Name_lt(x_3, x_4); -lean_dec(x_4); -lean_dec(x_3); -return x_5; +return x_8; } } -LEAN_EXPORT lean_object* l_Lean_Meta_instDecidableLtOrigin___boxed(lean_object* x_1, lean_object* x_2) { -_start: +} +else { -uint8_t x_3; lean_object* x_4; -x_3 = l_Lean_Meta_instDecidableLtOrigin(x_1, x_2); -lean_dec(x_2); +uint8_t x_13; +x_13 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_13 == 0) +{ +lean_object* x_14; uint8_t x_15; lean_object* x_16; uint8_t x_17; +x_14 = lean_ctor_get(x_1, 0); +lean_inc(x_14); +x_15 = lean_ctor_get_uint8(x_1, sizeof(void*)*1 + 1); lean_dec(x_1); -x_4 = lean_box(x_3); -return x_4; +x_16 = lean_ctor_get(x_2, 0); +lean_inc(x_16); +lean_dec(x_2); +x_17 = lean_name_eq(x_14, x_16); +lean_dec(x_16); +lean_dec(x_14); +if (x_17 == 0) +{ +uint8_t x_18; +x_18 = 0; +return x_18; } +else +{ +if (x_15 == 0) +{ +uint8_t x_19; +x_19 = 1; +return x_19; } -static lean_object* _init_l_Lean_Meta_SimpTheorem_keys___default___closed__1() { -_start: +else { -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; +uint8_t x_20; +x_20 = 0; +return x_20; } } -static lean_object* _init_l_Lean_Meta_SimpTheorem_keys___default() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -return x_1; } +else +{ +lean_object* x_21; uint8_t x_22; lean_object* x_23; uint8_t x_24; +x_21 = lean_ctor_get(x_1, 0); +lean_inc(x_21); +x_22 = lean_ctor_get_uint8(x_1, sizeof(void*)*1 + 1); +lean_dec(x_1); +x_23 = lean_ctor_get(x_2, 0); +lean_inc(x_23); +lean_dec(x_2); +x_24 = lean_name_eq(x_21, x_23); +lean_dec(x_23); +lean_dec(x_21); +if (x_24 == 0) +{ +uint8_t x_25; +x_25 = 0; +return x_25; } -static lean_object* _init_l_Lean_Meta_SimpTheorem_levelParams___default() { -_start: +else { -lean_object* x_1; -x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -return x_1; +return x_22; } } -static lean_object* _init_l_Lean_Meta_SimpTheorem_priority___default() { -_start: -{ -lean_object* x_1; -x_1 = lean_unsigned_to_nat(1000u); -return x_1; } } -static uint8_t _init_l_Lean_Meta_SimpTheorem_post___default() { -_start: +else { -uint8_t x_1; -x_1 = 1; -return x_1; +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = l_Lean_Meta_Origin_key(x_1); +lean_dec(x_1); +x_27 = l_Lean_Meta_Origin_key(x_2); +lean_dec(x_2); +x_28 = lean_name_eq(x_26, x_27); +lean_dec(x_27); +lean_dec(x_26); +return x_28; } } -static uint8_t _init_l_Lean_Meta_SimpTheorem_perm___default() { -_start: +else { -uint8_t x_1; -x_1 = 0; -return x_1; +uint8_t x_29; +x_29 = lean_ctor_get_uint8(x_1, sizeof(void*)*1 + 1); +if (x_29 == 0) +{ +if (lean_obj_tag(x_2) == 0) +{ +uint8_t x_30; +x_30 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; uint8_t x_33; uint8_t x_34; +x_31 = lean_ctor_get(x_1, 0); +lean_inc(x_31); +lean_dec(x_1); +x_32 = lean_ctor_get(x_2, 0); +lean_inc(x_32); +x_33 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +lean_dec(x_2); +x_34 = lean_name_eq(x_31, x_32); +lean_dec(x_32); +lean_dec(x_31); +if (x_34 == 0) +{ +uint8_t x_35; +x_35 = 0; +return x_35; } +else +{ +if (x_33 == 0) +{ +uint8_t x_36; +x_36 = 1; +return x_36; } -static lean_object* _init_l_Lean_Meta_instInhabitedSimpTheorem___closed__1() { -_start: +else { -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; +uint8_t x_37; +x_37 = 0; +return x_37; } } -static lean_object* _init_l_Lean_Meta_instInhabitedSimpTheorem___closed__2() { -_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; -x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -x_2 = l_Lean_Meta_instInhabitedSimpTheorem___closed__1; -x_3 = lean_unsigned_to_nat(0u); -x_4 = 0; -x_5 = l_Lean_Meta_instInhabitedOrigin___closed__1; -x_6 = lean_alloc_ctor(0, 5, 3); -lean_ctor_set(x_6, 0, x_1); -lean_ctor_set(x_6, 1, x_1); -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_uint8(x_6, sizeof(void*)*5, x_4); -lean_ctor_set_uint8(x_6, sizeof(void*)*5 + 1, x_4); -lean_ctor_set_uint8(x_6, sizeof(void*)*5 + 2, x_4); -return x_6; } +else +{ +uint8_t x_38; +x_38 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_1, 0); +lean_inc(x_39); +lean_dec(x_1); +x_40 = lean_ctor_get(x_2, 0); +lean_inc(x_40); +lean_dec(x_2); +x_41 = lean_name_eq(x_39, x_40); +lean_dec(x_40); +lean_dec(x_39); +return x_41; } -static lean_object* _init_l_Lean_Meta_instInhabitedSimpTheorem() { -_start: +else { -lean_object* x_1; -x_1 = l_Lean_Meta_instInhabitedSimpTheorem___closed__2; -return x_1; +uint8_t x_42; +lean_dec(x_2); +lean_dec(x_1); +x_42 = 0; +return x_42; } } -static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__1() { -_start: +} +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Eq", 2); -return x_1; +uint8_t x_43; +lean_dec(x_2); +lean_dec(x_1); +x_43 = 0; +return x_43; } } -static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__2() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Meta_isRflProofCore___closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__3() { -_start: +if (lean_obj_tag(x_2) == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("refl", 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__4() { -_start: +uint8_t x_44; +x_44 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_44 == 0) { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_isRflProofCore___closed__1; -x_2 = l_Lean_Meta_isRflProofCore___closed__3; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__5() { -_start: +lean_object* x_45; lean_object* x_46; uint8_t x_47; uint8_t x_48; +x_45 = lean_ctor_get(x_1, 0); +lean_inc(x_45); +lean_dec(x_1); +x_46 = lean_ctor_get(x_2, 0); +lean_inc(x_46); +x_47 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +lean_dec(x_2); +x_48 = lean_name_eq(x_45, x_46); +lean_dec(x_46); +lean_dec(x_45); +if (x_48 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("rfl", 3); -return x_1; -} +uint8_t x_49; +x_49 = 0; +return x_49; } -static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__6() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Meta_isRflProofCore___closed__5; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; +return x_47; } } -static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__7() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("symm", 4); -return x_1; -} +uint8_t x_50; +x_50 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_50 == 0) +{ +uint8_t x_51; +lean_dec(x_2); +lean_dec(x_1); +x_51 = 0; +return x_51; } -static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__8() { -_start: +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_isRflProofCore___closed__1; -x_2 = l_Lean_Meta_isRflProofCore___closed__7; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; +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_53 = lean_ctor_get(x_2, 0); +lean_inc(x_53); +lean_dec(x_2); +x_54 = lean_name_eq(x_52, x_53); +lean_dec(x_53); +lean_dec(x_52); +return x_54; } } -LEAN_EXPORT lean_object* l_Lean_Meta_isRflProofCore(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) == 7) +} +else { -if (lean_obj_tag(x_2) == 6) +uint8_t x_55; +x_55 = !lean_is_exclusive(x_1); +if (x_55 == 0) { -lean_object* x_6; lean_object* x_7; -x_6 = lean_ctor_get(x_1, 2); -lean_inc(x_6); +lean_object* x_56; lean_object* x_57; uint8_t x_58; +lean_ctor_set_uint8(x_1, sizeof(void*)*1, x_29); +x_56 = l_Lean_Meta_Origin_key(x_1); lean_dec(x_1); -x_7 = lean_ctor_get(x_2, 2); -lean_inc(x_7); +x_57 = l_Lean_Meta_Origin_key(x_2); lean_dec(x_2); -x_1 = x_6; -x_2 = x_7; -goto _start; +x_58 = lean_name_eq(x_56, x_57); +lean_dec(x_57); +lean_dec(x_56); +return x_58; } else { -uint8_t x_9; lean_object* x_10; lean_object* x_11; -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_59 = lean_ctor_get(x_1, 0); +lean_inc(x_59); lean_dec(x_1); -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_5); -return x_11; +x_60 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_60, 0, x_59); +lean_ctor_set_uint8(x_60, sizeof(void*)*1, x_29); +lean_ctor_set_uint8(x_60, sizeof(void*)*1 + 1, x_29); +x_61 = l_Lean_Meta_Origin_key(x_60); +lean_dec(x_60); +x_62 = l_Lean_Meta_Origin_key(x_2); +lean_dec(x_2); +x_63 = lean_name_eq(x_61, x_62); +lean_dec(x_62); +lean_dec(x_61); +return x_63; +} +} +} } } else { -lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_12 = l_Lean_Meta_isRflProofCore___closed__2; -x_13 = lean_unsigned_to_nat(3u); -x_14 = l_Lean_Expr_isAppOfArity(x_1, x_12, x_13); -if (x_14 == 0) +if (lean_obj_tag(x_2) == 0) { -uint8_t x_15; lean_object* x_16; lean_object* x_17; -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); +uint8_t x_64; +x_64 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; uint8_t x_67; +x_65 = l_Lean_Meta_Origin_key(x_1); 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_5); -return x_17; +x_66 = l_Lean_Meta_Origin_key(x_2); +lean_dec(x_2); +x_67 = lean_name_eq(x_65, x_66); +lean_dec(x_66); +lean_dec(x_65); +return x_67; } else { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = l_Lean_Meta_isRflProofCore___closed__4; -x_19 = lean_unsigned_to_nat(2u); -x_20 = l_Lean_Expr_isAppOfArity(x_2, x_18, x_19); -if (x_20 == 0) +uint8_t x_68; +x_68 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_68 == 0) { -lean_object* x_21; uint8_t x_22; -x_21 = l_Lean_Meta_isRflProofCore___closed__6; -x_22 = l_Lean_Expr_isAppOfArity(x_2, x_21, x_19); -if (x_22 == 0) +uint8_t x_69; +lean_dec(x_2); +lean_dec(x_1); +x_69 = 0; +return x_69; +} +else { -lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_23 = l_Lean_Meta_isRflProofCore___closed__8; -x_24 = lean_unsigned_to_nat(4u); -x_25 = l_Lean_Expr_isAppOfArity(x_2, x_23, x_24); -if (x_25 == 0) +uint8_t x_70; +x_70 = !lean_is_exclusive(x_2); +if (x_70 == 0) { -lean_object* x_26; uint8_t x_27; +lean_object* x_71; lean_object* x_72; uint8_t x_73; +lean_ctor_set_uint8(x_2, sizeof(void*)*1, x_68); +x_71 = l_Lean_Meta_Origin_key(x_1); lean_dec(x_1); -x_26 = l_Lean_Expr_getAppFn(x_2); +x_72 = l_Lean_Meta_Origin_key(x_2); lean_dec(x_2); -x_27 = l_Lean_Expr_isConst(x_26); -if (x_27 == 0) -{ -uint8_t x_28; lean_object* x_29; lean_object* x_30; -lean_dec(x_26); -lean_dec(x_4); -lean_dec(x_3); -x_28 = 0; -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_5); -return x_30; +x_73 = lean_name_eq(x_71, x_72); +lean_dec(x_72); +lean_dec(x_71); +return x_73; } else { -lean_object* x_31; lean_object* x_32; -x_31 = l_Lean_Expr_constName_x21(x_26); -lean_dec(x_26); -x_32 = l_Lean_Meta_isRflTheorem(x_31, x_3, x_4, x_5); -return x_32; +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; uint8_t x_78; +x_74 = lean_ctor_get(x_2, 0); +lean_inc(x_74); +lean_dec(x_2); +x_75 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_75, 0, x_74); +lean_ctor_set_uint8(x_75, sizeof(void*)*1, x_68); +lean_ctor_set_uint8(x_75, sizeof(void*)*1 + 1, x_68); +x_76 = l_Lean_Meta_Origin_key(x_1); +lean_dec(x_1); +x_77 = l_Lean_Meta_Origin_key(x_75); +lean_dec(x_75); +x_78 = lean_name_eq(x_76, x_77); +lean_dec(x_77); +lean_dec(x_76); +return x_78; +} +} } } else { -lean_object* x_33; -x_33 = l_Lean_Expr_appArg_x21(x_2); +lean_object* x_79; lean_object* x_80; uint8_t x_81; +x_79 = l_Lean_Meta_Origin_key(x_1); +lean_dec(x_1); +x_80 = l_Lean_Meta_Origin_key(x_2); lean_dec(x_2); -x_2 = x_33; -goto _start; +x_81 = lean_name_eq(x_79, x_80); +lean_dec(x_80); +lean_dec(x_79); +return x_81; } } -else +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_instBEqOrigin___boxed(lean_object* x_1, lean_object* x_2) { +_start: { -uint8_t x_35; lean_object* x_36; lean_object* x_37; -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_35 = 1; -x_36 = lean_box(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_5); -return x_37; +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Meta_instBEqOrigin(x_1, x_2); +x_4 = lean_box(x_3); +return x_4; +} } +LEAN_EXPORT uint64_t l_Lean_Meta_instHashableOrigin(lean_object* x_1) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +uint8_t x_2; +x_2 = lean_ctor_get_uint8(x_1, sizeof(void*)*1 + 1); +if (x_2 == 0) +{ +lean_object* x_3; uint64_t x_4; uint64_t x_5; uint64_t x_6; +x_3 = lean_ctor_get(x_1, 0); +x_4 = l_Lean_Name_hash___override(x_3); +x_5 = 13; +x_6 = lean_uint64_mix_hash(x_4, x_5); +return x_6; } else { -uint8_t x_38; lean_object* x_39; lean_object* x_40; -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_38 = 1; -x_39 = lean_box(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_5); -return x_40; +lean_object* x_7; uint64_t x_8; uint64_t x_9; uint64_t x_10; +x_7 = lean_ctor_get(x_1, 0); +x_8 = l_Lean_Name_hash___override(x_7); +x_9 = 11; +x_10 = lean_uint64_mix_hash(x_8, x_9); +return x_10; } } +else +{ +lean_object* x_11; uint64_t x_12; +x_11 = l_Lean_Meta_Origin_key(x_1); +x_12 = l_Lean_Name_hash___override(x_11); +lean_dec(x_11); +return x_12; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_isRflTheorem(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Meta_instHashableOrigin___boxed(lean_object* x_1) { _start: { -lean_object* x_5; -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); +uint64_t x_2; lean_object* x_3; +x_2 = l_Lean_Meta_instHashableOrigin(x_1); +lean_dec(x_1); +x_3 = lean_box_uint64(x_2); +return x_3; +} +} +LEAN_EXPORT uint8_t l_Lean_Meta_Origin_lt(lean_object* x_1, lean_object* x_2) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +uint8_t x_3; +x_3 = lean_ctor_get_uint8(x_1, sizeof(void*)*1); +if (x_3 == 0) +{ +if (lean_obj_tag(x_2) == 0) +{ +lean_object* x_4; uint8_t x_5; lean_object* x_6; uint8_t x_7; uint8_t x_8; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_ctor_get_uint8(x_1, sizeof(void*)*1 + 1); +lean_dec(x_1); +x_6 = lean_ctor_get(x_2, 0); lean_inc(x_6); -if (lean_obj_tag(x_6) == 2) +x_7 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +lean_dec(x_2); +x_8 = l_Lean_Name_lt(x_4, x_6); +if (x_8 == 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 = 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); +uint8_t x_9; +x_9 = lean_name_eq(x_4, x_6); lean_dec(x_6); -x_9 = lean_ctor_get(x_8, 0); -lean_inc(x_9); -x_10 = lean_ctor_get(x_9, 2); -lean_inc(x_10); -lean_dec(x_9); -x_11 = lean_ctor_get(x_8, 1); -lean_inc(x_11); -lean_dec(x_8); -x_12 = l_Lean_Meta_isRflProofCore(x_10, x_11, x_2, x_3, x_7); -return x_12; +lean_dec(x_4); +if (x_9 == 0) +{ +uint8_t x_10; +x_10 = 0; +return x_10; } else { -uint8_t x_13; -lean_dec(x_6); -lean_dec(x_3); -lean_dec(x_2); -x_13 = !lean_is_exclusive(x_5); -if (x_13 == 0) +if (x_5 == 0) { -lean_object* x_14; uint8_t x_15; lean_object* x_16; -x_14 = lean_ctor_get(x_5, 0); -lean_dec(x_14); -x_15 = 0; -x_16 = lean_box(x_15); -lean_ctor_set(x_5, 0, x_16); -return x_5; +return x_7; } else { -lean_object* x_17; uint8_t x_18; lean_object* x_19; lean_object* x_20; -x_17 = lean_ctor_get(x_5, 1); -lean_inc(x_17); -lean_dec(x_5); -x_18 = 0; -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_17); -return x_20; +uint8_t x_11; +x_11 = 0; +return x_11; } } } else { -uint8_t x_21; -lean_dec(x_3); +uint8_t x_12; +lean_dec(x_6); +lean_dec(x_4); +x_12 = 1; +return x_12; +} +} +else +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = l_Lean_Meta_Origin_key(x_1); +lean_dec(x_1); +x_14 = l_Lean_Meta_Origin_key(x_2); lean_dec(x_2); -x_21 = !lean_is_exclusive(x_5); +x_15 = l_Lean_Name_lt(x_13, x_14); +lean_dec(x_14); +lean_dec(x_13); +return x_15; +} +} +else +{ +uint8_t x_16; +x_16 = lean_ctor_get_uint8(x_1, sizeof(void*)*1 + 1); +if (x_16 == 0) +{ +if (lean_obj_tag(x_2) == 0) +{ +lean_object* x_17; lean_object* x_18; uint8_t x_19; uint8_t x_20; +x_17 = lean_ctor_get(x_1, 0); +lean_inc(x_17); +lean_dec(x_1); +x_18 = lean_ctor_get(x_2, 0); +lean_inc(x_18); +x_19 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +lean_dec(x_2); +x_20 = l_Lean_Name_lt(x_17, x_18); +if (x_20 == 0) +{ +uint8_t x_21; +x_21 = lean_name_eq(x_17, x_18); +lean_dec(x_18); +lean_dec(x_17); if (x_21 == 0) { -return x_5; +uint8_t x_22; +x_22 = 0; +return x_22; } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_5, 0); -x_23 = lean_ctor_get(x_5, 1); -lean_inc(x_23); -lean_inc(x_22); -lean_dec(x_5); -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; +return x_19; } } +else +{ +uint8_t x_23; +lean_dec(x_18); +lean_dec(x_17); +x_23 = 1; +return x_23; } } -LEAN_EXPORT lean_object* l_Lean_Meta_isRflProof(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_1) == 4) +else { -lean_object* x_7; lean_object* x_8; -lean_dec(x_3); +uint8_t x_24; lean_dec(x_2); -x_7 = lean_ctor_get(x_1, 0); -lean_inc(x_7); lean_dec(x_1); -x_8 = l_Lean_Meta_isRflTheorem(x_7, x_4, x_5, x_6); -return x_8; +x_24 = 0; +return x_24; +} } else { -lean_object* x_9; -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_1); -x_9 = lean_infer_type(x_1, x_2, x_3, x_4, x_5, x_6); -if (lean_obj_tag(x_9) == 0) +if (lean_obj_tag(x_2) == 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 = l_Lean_Meta_isRflProofCore(x_10, x_1, x_4, x_5, x_11); -return x_12; +lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_25 = lean_ctor_get(x_1, 0); +lean_inc(x_25); +lean_dec(x_1); +x_26 = lean_ctor_get(x_2, 0); +lean_inc(x_26); +lean_dec(x_2); +x_27 = l_Lean_Name_lt(x_25, x_26); +lean_dec(x_26); +lean_dec(x_25); +return x_27; } else { -uint8_t x_13; -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_1); -x_13 = !lean_is_exclusive(x_9); -if (x_13 == 0) +uint8_t x_28; +x_28 = !lean_is_exclusive(x_1); +if (x_28 == 0) { -return x_9; +lean_object* x_29; lean_object* x_30; uint8_t x_31; +lean_ctor_set_uint8(x_1, sizeof(void*)*1, x_16); +x_29 = l_Lean_Meta_Origin_key(x_1); +lean_dec(x_1); +x_30 = l_Lean_Meta_Origin_key(x_2); +lean_dec(x_2); +x_31 = l_Lean_Name_lt(x_29, x_30); +lean_dec(x_30); +lean_dec(x_29); +return x_31; } 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_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; uint8_t x_36; +x_32 = lean_ctor_get(x_1, 0); +lean_inc(x_32); +lean_dec(x_1); +x_33 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set_uint8(x_33, sizeof(void*)*1, x_16); +lean_ctor_set_uint8(x_33, sizeof(void*)*1 + 1, x_16); +x_34 = l_Lean_Meta_Origin_key(x_33); +lean_dec(x_33); +x_35 = l_Lean_Meta_Origin_key(x_2); +lean_dec(x_2); +x_36 = l_Lean_Name_lt(x_34, x_35); +lean_dec(x_35); +lean_dec(x_34); +return x_36; } } } } } -static lean_object* _init_l_Lean_Meta_instToFormatSimpTheorem___closed__1() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes(":", 1); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_instToFormatSimpTheorem___closed__2() { -_start: +if (lean_obj_tag(x_2) == 0) { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_instToFormatSimpTheorem___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_Meta_instToFormatSimpTheorem___closed__3() { -_start: +uint8_t x_37; +x_37 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_37 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("", 0); -return x_1; -} +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = l_Lean_Meta_Origin_key(x_1); +lean_dec(x_1); +x_39 = l_Lean_Meta_Origin_key(x_2); +lean_dec(x_2); +x_40 = l_Lean_Name_lt(x_38, x_39); +lean_dec(x_39); +lean_dec(x_38); +return x_40; } -static lean_object* _init_l_Lean_Meta_instToFormatSimpTheorem___closed__4() { -_start: +else { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_instToFormatSimpTheorem___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_Lean_Meta_instToFormatSimpTheorem___closed__5() { -_start: +uint8_t x_41; +x_41 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_41 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes(":perm", 5); -return x_1; -} +uint8_t x_42; +lean_dec(x_2); +lean_dec(x_1); +x_42 = 1; +return x_42; } -static lean_object* _init_l_Lean_Meta_instToFormatSimpTheorem___closed__6() { -_start: +else { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_instToFormatSimpTheorem___closed__5; -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_Meta_instToFormatSimpTheorem(lean_object* x_1) { -_start: +uint8_t x_43; +x_43 = !lean_is_exclusive(x_2); +if (x_43 == 0) { -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; -x_2 = lean_ctor_get_uint8(x_1, sizeof(void*)*5 + 1); -x_3 = lean_ctor_get(x_1, 4); -lean_inc(x_3); -x_4 = l_Lean_Meta_Origin_key(x_3); -lean_dec(x_3); -x_5 = 1; -x_6 = l_Lean_Name_toString(x_4, x_5); -x_7 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_7, 0, x_6); -x_8 = lean_ctor_get(x_1, 3); -lean_inc(x_8); +lean_object* x_44; lean_object* x_45; uint8_t x_46; +lean_ctor_set_uint8(x_2, sizeof(void*)*1, x_41); +x_44 = l_Lean_Meta_Origin_key(x_1); lean_dec(x_1); -x_9 = l___private_Init_Data_Repr_0__Nat_reprFast(x_8); -x_10 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_10, 0, x_9); -x_11 = l_Lean_Meta_instToFormatSimpTheorem___closed__2; -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_Lean_Meta_instToFormatSimpTheorem___closed__4; -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 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_15, 0, x_7); -lean_ctor_set(x_15, 1, x_14); -if (x_2 == 0) +x_45 = l_Lean_Meta_Origin_key(x_2); +lean_dec(x_2); +x_46 = l_Lean_Name_lt(x_44, x_45); +lean_dec(x_45); +lean_dec(x_44); +return x_46; +} +else { -lean_object* x_16; -x_16 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_16, 0, x_15); -lean_ctor_set(x_16, 1, x_13); -return x_16; +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_47 = lean_ctor_get(x_2, 0); +lean_inc(x_47); +lean_dec(x_2); +x_48 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set_uint8(x_48, sizeof(void*)*1, x_41); +lean_ctor_set_uint8(x_48, sizeof(void*)*1 + 1, x_41); +x_49 = l_Lean_Meta_Origin_key(x_1); +lean_dec(x_1); +x_50 = l_Lean_Meta_Origin_key(x_48); +lean_dec(x_48); +x_51 = l_Lean_Name_lt(x_49, x_50); +lean_dec(x_50); +lean_dec(x_49); +return x_51; +} +} +} } else { -lean_object* x_17; lean_object* x_18; -x_17 = l_Lean_Meta_instToFormatSimpTheorem___closed__6; -x_18 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_18, 0, x_15); -lean_ctor_set(x_18, 1, x_17); -return x_18; +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = l_Lean_Meta_Origin_key(x_1); +lean_dec(x_1); +x_53 = l_Lean_Meta_Origin_key(x_2); +lean_dec(x_2); +x_54 = l_Lean_Name_lt(x_52, x_53); +lean_dec(x_53); +lean_dec(x_52); +return x_54; } } } -static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__1() { +} +LEAN_EXPORT lean_object* l_Lean_Meta_Origin_lt___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Meta_Origin_lt(x_1, x_2); +x_4 = lean_box(x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Meta_instLTOrigin() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("↓ ", 4); +x_1 = lean_box(0); return x_1; } } -static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__2() { +LEAN_EXPORT uint8_t l_Lean_Meta_instDecidableLtOrigin(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; +uint8_t x_3; +x_3 = l_Lean_Meta_Origin_lt(x_1, x_2); +return x_3; } } -static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__3() { +LEAN_EXPORT lean_object* l_Lean_Meta_instDecidableLtOrigin___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Meta_instDecidableLtOrigin(x_1, x_2); +x_4 = lean_box(x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Meta_SimpTheorem_keys___default___closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_instToFormatSimpTheorem___closed__3; -x_2 = l_Lean_stringToMessageData(x_1); +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_Meta_ppOrigin___rarg___lambda__1___closed__4() { +static lean_object* _init_l_Lean_Meta_SimpTheorem_keys___default() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("↓ ← ", 8); +x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; return x_1; } } -static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__5() { +static lean_object* _init_l_Lean_Meta_SimpTheorem_levelParams___default() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__4; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; +lean_object* x_1; +x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; +return x_1; } } -static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__6() { +static lean_object* _init_l_Lean_Meta_SimpTheorem_priority___default() { _start: { lean_object* x_1; -x_1 = lean_mk_string_from_bytes("← ", 4); +x_1 = lean_unsigned_to_nat(1000u); return x_1; } } -static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__7() { +static uint8_t _init_l_Lean_Meta_SimpTheorem_post___default() { +_start: +{ +uint8_t x_1; +x_1 = 1; +return x_1; +} +} +static uint8_t _init_l_Lean_Meta_SimpTheorem_perm___default() { +_start: +{ +uint8_t x_1; +x_1 = 0; +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_instInhabitedSimpTheorem___closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__6; -x_2 = l_Lean_stringToMessageData(x_1); +x_1 = lean_unsigned_to_nat(0u); +x_2 = l_Lean_Expr_bvar___override(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin___rarg___lambda__1(uint8_t x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4) { +static lean_object* _init_l_Lean_Meta_instInhabitedSimpTheorem___closed__2() { _start: { -if (x_1 == 0) -{ -if (x_2 == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; +x_2 = l_Lean_Meta_instInhabitedSimpTheorem___closed__1; +x_3 = lean_unsigned_to_nat(0u); +x_4 = 0; +x_5 = l_Lean_Meta_instInhabitedOrigin___closed__1; +x_6 = lean_alloc_ctor(0, 5, 3); +lean_ctor_set(x_6, 0, x_1); +lean_ctor_set(x_6, 1, x_1); +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_uint8(x_6, sizeof(void*)*5, x_4); +lean_ctor_set_uint8(x_6, sizeof(void*)*5 + 1, x_4); +lean_ctor_set_uint8(x_6, sizeof(void*)*5 + 2, x_4); +return x_6; +} +} +static lean_object* _init_l_Lean_Meta_instInhabitedSimpTheorem() { +_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; -x_5 = lean_ctor_get(x_3, 0); -lean_inc(x_5); -lean_dec(x_3); -x_6 = lean_ctor_get(x_5, 1); -lean_inc(x_6); -lean_dec(x_5); -x_7 = l_Lean_MessageData_ofExpr(x_4); -x_8 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__2; -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_Lean_Meta_ppOrigin___rarg___lambda__1___closed__3; -x_11 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_11, 0, x_9); -lean_ctor_set(x_11, 1, x_10); -x_12 = lean_apply_2(x_6, lean_box(0), x_11); -return x_12; +lean_object* x_1; +x_1 = l_Lean_Meta_instInhabitedSimpTheorem___closed__2; +return x_1; } -else +} +static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__1() { +_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_3, 0); -lean_inc(x_13); -lean_dec(x_3); -x_14 = lean_ctor_get(x_13, 1); -lean_inc(x_14); -lean_dec(x_13); -x_15 = l_Lean_MessageData_ofExpr(x_4); -x_16 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__5; -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_Meta_ppOrigin___rarg___lambda__1___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 = lean_apply_2(x_14, lean_box(0), x_19); -return x_20; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Eq", 2); +return x_1; } } -else +static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__2() { +_start: { -if (x_2 == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Meta_isRflProofCore___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__3() { +_start: { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_21 = lean_ctor_get(x_3, 0); -lean_inc(x_21); -lean_dec(x_3); -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -lean_dec(x_21); -x_23 = l_Lean_MessageData_ofExpr(x_4); -x_24 = lean_apply_2(x_22, lean_box(0), x_23); -return x_24; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("refl", 4); +return x_1; } -else +} +static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__4() { +_start: { -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_25 = lean_ctor_get(x_3, 0); -lean_inc(x_25); -lean_dec(x_3); -x_26 = lean_ctor_get(x_25, 1); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_MessageData_ofExpr(x_4); -x_28 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__7; -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_Meta_ppOrigin___rarg___lambda__1___closed__3; -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 = lean_apply_2(x_26, lean_box(0), x_31); -return x_32; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_isRflProofCore___closed__1; +x_2 = l_Lean_Meta_isRflProofCore___closed__3; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; } } +static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("rfl", 3); +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__6() { _start: { -switch (lean_obj_tag(x_4)) { -case 0: +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Meta_isRflProofCore___closed__5; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__7() { +_start: { -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; -x_5 = lean_ctor_get(x_4, 0); -lean_inc(x_5); -x_6 = lean_ctor_get_uint8(x_4, sizeof(void*)*1); -x_7 = lean_ctor_get_uint8(x_4, sizeof(void*)*1 + 1); -lean_dec(x_4); -x_8 = lean_ctor_get(x_1, 1); -lean_inc(x_8); -lean_inc(x_1); -x_9 = l_Lean_mkConstWithLevelParams___rarg(x_1, x_2, x_3, x_5); -x_10 = lean_box(x_6); -x_11 = lean_box(x_7); -x_12 = lean_alloc_closure((void*)(l_Lean_Meta_ppOrigin___rarg___lambda__1___boxed), 4, 3); -lean_closure_set(x_12, 0, x_10); -lean_closure_set(x_12, 1, x_11); -lean_closure_set(x_12, 2, x_1); -x_13 = lean_apply_4(x_8, lean_box(0), lean_box(0), x_9, x_12); -return x_13; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("symm", 4); +return x_1; } -case 1: +} +static lean_object* _init_l_Lean_Meta_isRflProofCore___closed__8() { +_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_dec(x_3); +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_isRflProofCore___closed__1; +x_2 = l_Lean_Meta_isRflProofCore___closed__7; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_isRflProofCore(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) == 7) +{ +if (lean_obj_tag(x_2) == 6) +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 2); +lean_inc(x_6); +lean_dec(x_1); +x_7 = lean_ctor_get(x_2, 2); +lean_inc(x_7); lean_dec(x_2); -x_14 = lean_ctor_get(x_4, 0); -lean_inc(x_14); +x_1 = x_6; +x_2 = x_7; +goto _start; +} +else +{ +uint8_t x_9; lean_object* x_10; lean_object* x_11; lean_dec(x_4); -x_15 = lean_ctor_get(x_1, 0); -lean_inc(x_15); +lean_dec(x_3); +lean_dec(x_2); lean_dec(x_1); -x_16 = lean_ctor_get(x_15, 1); -lean_inc(x_16); -lean_dec(x_15); -x_17 = l_Lean_Expr_fvar___override(x_14); -x_18 = l_Lean_MessageData_ofExpr(x_17); -x_19 = lean_apply_2(x_16, lean_box(0), x_18); -return x_19; +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_5); +return x_11; } -case 2: +} +else { -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_12 = l_Lean_Meta_isRflProofCore___closed__2; +x_13 = lean_unsigned_to_nat(3u); +x_14 = l_Lean_Expr_isAppOfArity(x_1, x_12, x_13); +if (x_14 == 0) +{ +uint8_t x_15; lean_object* x_16; lean_object* x_17; +lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_20 = lean_ctor_get(x_4, 1); -lean_inc(x_20); -lean_dec(x_4); -x_21 = lean_ctor_get(x_1, 0); -lean_inc(x_21); lean_dec(x_1); -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -lean_dec(x_21); -x_23 = l_Lean_MessageData_ofSyntax(x_20); -x_24 = lean_apply_2(x_22, lean_box(0), x_23); -return x_24; +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_5); +return x_17; } -default: +else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_3); +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = l_Lean_Meta_isRflProofCore___closed__4; +x_19 = lean_unsigned_to_nat(2u); +x_20 = l_Lean_Expr_isAppOfArity(x_2, x_18, x_19); +if (x_20 == 0) +{ +lean_object* x_21; uint8_t x_22; +x_21 = l_Lean_Meta_isRflProofCore___closed__6; +x_22 = l_Lean_Expr_isAppOfArity(x_2, x_21, x_19); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = l_Lean_Meta_isRflProofCore___closed__8; +x_24 = lean_unsigned_to_nat(4u); +x_25 = l_Lean_Expr_isAppOfArity(x_2, x_23, x_24); +if (x_25 == 0) +{ +lean_object* x_26; uint8_t x_27; +lean_dec(x_1); +x_26 = l_Lean_Expr_getAppFn(x_2); lean_dec(x_2); -x_25 = lean_ctor_get(x_4, 0); -lean_inc(x_25); +x_27 = l_Lean_Expr_isConst(x_26); +if (x_27 == 0) +{ +uint8_t x_28; lean_object* x_29; lean_object* x_30; +lean_dec(x_26); lean_dec(x_4); -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_3); +x_28 = 0; +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_5); +return x_30; +} +else +{ +lean_object* x_31; lean_object* x_32; +x_31 = l_Lean_Expr_constName_x21(x_26); lean_dec(x_26); -x_28 = l_Lean_MessageData_ofName(x_25); -x_29 = lean_apply_2(x_27, lean_box(0), x_28); -return x_29; +x_32 = l_Lean_Meta_isRflTheorem(x_31, x_3, x_4, x_5); +return x_32; } } +else +{ +lean_object* x_33; +x_33 = l_Lean_Expr_appArg_x21(x_2); +lean_dec(x_2); +x_2 = x_33; +goto _start; } } -LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin(lean_object* x_1) { -_start: +else { -lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Lean_Meta_ppOrigin___rarg), 4, 0); -return x_2; +uint8_t x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_35 = 1; +x_36 = lean_box(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_5); +return x_37; } } -LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin___rarg___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: +else { -uint8_t x_5; uint8_t x_6; lean_object* x_7; -x_5 = lean_unbox(x_1); -lean_dec(x_1); -x_6 = lean_unbox(x_2); +uint8_t x_38; lean_object* x_39; lean_object* x_40; +lean_dec(x_4); +lean_dec(x_3); lean_dec(x_2); -x_7 = l_Lean_Meta_ppOrigin___rarg___lambda__1(x_5, x_6, x_3, x_4); -return x_7; +lean_dec(x_1); +x_38 = 1; +x_39 = lean_box(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_5); +return x_40; } } -static lean_object* _init_l_Lean_Meta_ppSimpTheorem___rarg___lambda__1___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_instToFormatSimpTheorem___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; } } -static lean_object* _init_l_Lean_Meta_ppSimpTheorem___rarg___lambda__1___closed__2() { +} +LEAN_EXPORT lean_object* l_Lean_Meta_isRflTheorem(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_instToFormatSimpTheorem___closed__4; -x_2 = l_Lean_MessageData_ofFormat(x_1); -return x_2; -} +lean_object* x_5; +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); +if (lean_obj_tag(x_6) == 2) +{ +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_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 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_9, 2); +lean_inc(x_10); +lean_dec(x_9); +x_11 = lean_ctor_get(x_8, 1); +lean_inc(x_11); +lean_dec(x_8); +x_12 = l_Lean_Meta_isRflProofCore(x_10, x_11, x_2, x_3, x_7); +return x_12; } -LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: +else { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; 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_4 = lean_ctor_get(x_1, 3); -lean_inc(x_4); -lean_dec(x_1); -x_5 = l___private_Init_Data_Repr_0__Nat_reprFast(x_4); -x_6 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_6, 0, x_5); -x_7 = l_Lean_MessageData_ofFormat(x_6); -x_8 = l_Lean_Meta_ppSimpTheorem___rarg___lambda__1___closed__1; -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_Lean_Meta_ppOrigin___rarg___lambda__1___closed__3; -x_11 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_11, 0, x_9); -lean_ctor_set(x_11, 1, x_10); -x_12 = lean_ctor_get(x_2, 0); -lean_inc(x_12); +uint8_t x_13; +lean_dec(x_6); +lean_dec(x_3); lean_dec(x_2); -x_13 = lean_ctor_get(x_12, 1); -lean_inc(x_13); -lean_dec(x_12); -x_14 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_14, 0, x_3); -lean_ctor_set(x_14, 1, x_11); -x_15 = l_Lean_Meta_ppSimpTheorem___rarg___lambda__1___closed__2; -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 = lean_apply_2(x_13, lean_box(0), x_16); -return x_17; -} -} -static lean_object* _init_l_Lean_Meta_ppSimpTheorem___rarg___lambda__2___closed__1() { -_start: +x_13 = !lean_is_exclusive(x_5); +if (x_13 == 0) { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_instToFormatSimpTheorem___closed__6; -x_2 = l_Lean_MessageData_ofFormat(x_1); -return x_2; -} +lean_object* x_14; uint8_t x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_5, 0); +lean_dec(x_14); +x_15 = 0; +x_16 = lean_box(x_15); +lean_ctor_set(x_5, 0, x_16); +return x_5; } -LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem___rarg___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: +else { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; 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_4 = lean_ctor_get(x_1, 3); -lean_inc(x_4); -lean_dec(x_1); -x_5 = l___private_Init_Data_Repr_0__Nat_reprFast(x_4); -x_6 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_6, 0, x_5); -x_7 = l_Lean_MessageData_ofFormat(x_6); -x_8 = l_Lean_Meta_ppSimpTheorem___rarg___lambda__1___closed__1; -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_Lean_Meta_ppOrigin___rarg___lambda__1___closed__3; -x_11 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_11, 0, x_9); -lean_ctor_set(x_11, 1, x_10); -x_12 = lean_ctor_get(x_2, 0); -lean_inc(x_12); -lean_dec(x_2); -x_13 = lean_ctor_get(x_12, 1); -lean_inc(x_13); -lean_dec(x_12); -x_14 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_14, 0, x_3); -lean_ctor_set(x_14, 1, x_11); -x_15 = l_Lean_Meta_ppSimpTheorem___rarg___lambda__2___closed__1; -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 = lean_apply_2(x_13, lean_box(0), x_16); -return x_17; +lean_object* x_17; uint8_t x_18; lean_object* x_19; lean_object* x_20; +x_17 = lean_ctor_get(x_5, 1); +lean_inc(x_17); +lean_dec(x_5); +x_18 = 0; +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_17); +return x_20; } } -LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: +} +else { -uint8_t x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; -x_6 = lean_ctor_get_uint8(x_5, sizeof(void*)*5 + 1); -x_7 = lean_ctor_get(x_1, 1); -lean_inc(x_7); -x_8 = lean_ctor_get(x_5, 4); -lean_inc(x_8); -lean_inc(x_1); -x_9 = l_Lean_Meta_ppOrigin___rarg(x_1, x_3, x_4, x_8); -if (x_6 == 0) +uint8_t x_21; +lean_dec(x_3); +lean_dec(x_2); +x_21 = !lean_is_exclusive(x_5); +if (x_21 == 0) { -lean_object* x_10; lean_object* x_11; -x_10 = lean_alloc_closure((void*)(l_Lean_Meta_ppSimpTheorem___rarg___lambda__1), 3, 2); -lean_closure_set(x_10, 0, x_5); -lean_closure_set(x_10, 1, x_1); -x_11 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_9, x_10); -return x_11; +return x_5; } else { -lean_object* x_12; lean_object* x_13; -x_12 = lean_alloc_closure((void*)(l_Lean_Meta_ppSimpTheorem___rarg___lambda__2), 3, 2); -lean_closure_set(x_12, 0, x_5); -lean_closure_set(x_12, 1, x_1); -x_13 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_9, x_12); -return x_13; -} +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_5, 0); +x_23 = lean_ctor_get(x_5, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_5); +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_Meta_ppSimpTheorem(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Lean_Meta_ppSimpTheorem___rarg___boxed), 5, 0); -return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem___rarg___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_Meta_isRflProof(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_6; -x_6 = l_Lean_Meta_ppSimpTheorem___rarg(x_1, x_2, x_3, x_4, x_5); +if (lean_obj_tag(x_1) == 4) +{ +lean_object* x_7; lean_object* x_8; +lean_dec(x_3); lean_dec(x_2); -return x_6; -} +x_7 = lean_ctor_get(x_1, 0); +lean_inc(x_7); +lean_dec(x_1); +x_8 = l_Lean_Meta_isRflTheorem(x_7, x_4, x_5, x_6); +return x_8; } -LEAN_EXPORT uint8_t l_Lean_Meta_instBEqSimpTheorem(lean_object* x_1, lean_object* x_2) { -_start: +else { -lean_object* x_3; lean_object* x_4; uint8_t x_5; -x_3 = lean_ctor_get(x_1, 2); -x_4 = lean_ctor_get(x_2, 2); -x_5 = lean_expr_eqv(x_3, x_4); -return x_5; -} +lean_object* x_9; +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_1); +x_9 = lean_infer_type(x_1, 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; +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_Meta_isRflProofCore(x_10, x_1, x_4, x_5, x_11); +return x_12; } -LEAN_EXPORT lean_object* l_Lean_Meta_instBEqSimpTheorem___boxed(lean_object* x_1, lean_object* x_2) { -_start: +else { -uint8_t x_3; lean_object* x_4; -x_3 = l_Lean_Meta_instBEqSimpTheorem(x_1, x_2); -lean_dec(x_2); +uint8_t x_13; +lean_dec(x_5); +lean_dec(x_4); lean_dec(x_1); -x_4 = lean_box(x_3); -return x_4; -} +x_13 = !lean_is_exclusive(x_9); +if (x_13 == 0) +{ +return x_9; } -static lean_object* _init_l_Lean_Meta_SimpTheorems_pre___default___closed__1() { -_start: +else { -lean_object* x_1; -x_1 = l_Lean_Meta_DiscrTree_empty(lean_box(0)); -return x_1; +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; } } -static lean_object* _init_l_Lean_Meta_SimpTheorems_pre___default() { +} +} +} +static lean_object* _init_l_Lean_Meta_instToFormatSimpTheorem___closed__1() { _start: { lean_object* x_1; -x_1 = l_Lean_Meta_SimpTheorems_pre___default___closed__1; +x_1 = lean_mk_string_from_bytes(":", 1); return x_1; } } -static lean_object* _init_l_Lean_Meta_SimpTheorems_post___default() { +static lean_object* _init_l_Lean_Meta_instToFormatSimpTheorem___closed__2() { _start: { -lean_object* x_1; -x_1 = l_Lean_Meta_SimpTheorems_pre___default___closed__1; -return x_1; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_instToFormatSimpTheorem___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_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__1() { +static lean_object* _init_l_Lean_Meta_instToFormatSimpTheorem___closed__3() { _start: { lean_object* x_1; -x_1 = l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_box(0), lean_box(0)); +x_1 = lean_mk_string_from_bytes("", 0); return x_1; } } -static lean_object* _init_l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__2() { +static lean_object* _init_l_Lean_Meta_instToFormatSimpTheorem___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__1; -x_2 = lean_alloc_ctor(0, 1, 0); +x_1 = l_Lean_Meta_instToFormatSimpTheorem___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_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__3() { +static lean_object* _init_l_Lean_Meta_instToFormatSimpTheorem___closed__5() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_instBEqOrigin___boxed), 2, 0); +x_1 = lean_mk_string_from_bytes(":perm", 5); return x_1; } } -static lean_object* _init_l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__4() { +static lean_object* _init_l_Lean_Meta_instToFormatSimpTheorem___closed__6() { _start: { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_instHashableOrigin___boxed), 1, 0); -return x_1; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_instToFormatSimpTheorem___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_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__5() { +LEAN_EXPORT lean_object* l_Lean_Meta_instToFormatSimpTheorem(lean_object* x_1) { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__2; -x_2 = lean_unsigned_to_nat(0u); -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; +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; +x_2 = lean_ctor_get_uint8(x_1, sizeof(void*)*5 + 1); +x_3 = lean_ctor_get(x_1, 4); +lean_inc(x_3); +x_4 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_5 = 1; +x_6 = l_Lean_Name_toString(x_4, x_5); +x_7 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_7, 0, x_6); +x_8 = lean_ctor_get(x_1, 3); +lean_inc(x_8); +lean_dec(x_1); +x_9 = l___private_Init_Data_Repr_0__Nat_reprFast(x_8); +x_10 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_10, 0, x_9); +x_11 = l_Lean_Meta_instToFormatSimpTheorem___closed__2; +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_Lean_Meta_instToFormatSimpTheorem___closed__4; +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 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_15, 0, x_7); +lean_ctor_set(x_15, 1, x_14); +if (x_2 == 0) +{ +lean_object* x_16; +x_16 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_13); +return x_16; } +else +{ +lean_object* x_17; lean_object* x_18; +x_17 = l_Lean_Meta_instToFormatSimpTheorem___closed__6; +x_18 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_18, 0, x_15); +lean_ctor_set(x_18, 1, x_17); +return x_18; } -static lean_object* _init_l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1() { +} +} +static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__1() { _start: { lean_object* x_1; -x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__5; +x_1 = lean_mk_string_from_bytes("↓ ", 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_SimpTheorems_lemmaNames___default() { +static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__2() { _start: { -lean_object* x_1; -x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1; -return x_1; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; } } -static lean_object* _init_l_Lean_Meta_SimpTheorems_toUnfold___default() { +static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__3() { _start: { -lean_object* x_1; -x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Instances_erased___default___spec__1; -return x_1; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_instToFormatSimpTheorem___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; } } -static lean_object* _init_l_Lean_Meta_SimpTheorems_erased___default() { +static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__4() { _start: { lean_object* x_1; -x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1; +x_1 = lean_mk_string_from_bytes("↓ ← ", 8); return x_1; } } -static lean_object* _init_l_Lean_Meta_SimpTheorems_toUnfoldThms___default___closed__1() { +static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__5() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__2; -x_2 = lean_unsigned_to_nat(0u); -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_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__4; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; } } -static lean_object* _init_l_Lean_Meta_SimpTheorems_toUnfoldThms___default() { +static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__6() { _start: { lean_object* x_1; -x_1 = l_Lean_Meta_SimpTheorems_toUnfoldThms___default___closed__1; +x_1 = lean_mk_string_from_bytes("← ", 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_instInhabitedSimpTheorems___closed__1() { +static lean_object* _init_l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__7() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__2; -x_2 = lean_unsigned_to_nat(0u); -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_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__6; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; } } -static lean_object* _init_l_Lean_Meta_instInhabitedSimpTheorems___closed__2() { +LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin___rarg___lambda__1(uint8_t x_1, uint8_t x_2, lean_object* x_3, lean_object* x_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_Meta_instInhabitedSimpTheorems___closed__1; -x_2 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1; -x_3 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Instances_erased___default___spec__1; -x_4 = l_Lean_Meta_SimpTheorems_toUnfoldThms___default___closed__1; -x_5 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_5, 0, x_1); -lean_ctor_set(x_5, 1, x_1); -lean_ctor_set(x_5, 2, x_2); -lean_ctor_set(x_5, 3, x_3); -lean_ctor_set(x_5, 4, x_2); -lean_ctor_set(x_5, 5, x_4); -return x_5; -} -} -static lean_object* _init_l_Lean_Meta_instInhabitedSimpTheorems() { -_start: +lean_object* x_5; +x_5 = l_Lean_MessageData_ofConst(x_4); +if (x_1 == 0) { -lean_object* x_1; -x_1 = l_Lean_Meta_instInhabitedSimpTheorems___closed__2; -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_simpDtConfig___closed__1() { -_start: +if (x_2 == 0) { -uint8_t x_1; uint8_t x_2; uint8_t x_3; lean_object* x_4; -x_1 = 0; -x_2 = 1; -x_3 = 0; -x_4 = lean_alloc_ctor(0, 0, 5); -lean_ctor_set_uint8(x_4, 0, x_1); -lean_ctor_set_uint8(x_4, 1, x_2); -lean_ctor_set_uint8(x_4, 2, x_3); -lean_ctor_set_uint8(x_4, 3, x_2); -lean_ctor_set_uint8(x_4, 4, x_1); -return x_4; -} +lean_object* x_6; 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_3, 0); +lean_inc(x_6); +lean_dec(x_3); +x_7 = lean_ctor_get(x_6, 1); +lean_inc(x_7); +lean_dec(x_6); +x_8 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__2; +x_9 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_9, 0, x_8); +lean_ctor_set(x_9, 1, x_5); +x_10 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__3; +x_11 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_11, 0, x_9); +lean_ctor_set(x_11, 1, x_10); +x_12 = lean_apply_2(x_7, lean_box(0), x_11); +return x_12; } -static lean_object* _init_l_Lean_Meta_simpDtConfig() { -_start: +else { -lean_object* x_1; -x_1 = l_Lean_Meta_simpDtConfig___closed__1; -return x_1; +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_3, 0); +lean_inc(x_13); +lean_dec(x_3); +x_14 = lean_ctor_get(x_13, 1); +lean_inc(x_14); +lean_dec(x_13); +x_15 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__5; +x_16 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_5); +x_17 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__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 = lean_apply_2(x_14, lean_box(0), x_18); +return x_19; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___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: +else { -lean_object* x_7; uint8_t x_8; -x_7 = lean_array_get_size(x_2); -x_8 = lean_nat_dec_lt(x_5, x_7); -lean_dec(x_7); -if (x_8 == 0) +if (x_2 == 0) { -lean_dec(x_5); -return x_6; +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_3, 0); +lean_inc(x_20); +lean_dec(x_3); +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_apply_2(x_21, lean_box(0), x_5); +return x_22; } else { -lean_object* x_9; lean_object* x_10; lean_object* x_11; uint64_t x_12; size_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; lean_object* x_21; -x_9 = lean_array_fget(x_2, x_5); -x_10 = lean_array_fget(x_3, x_5); -x_11 = l_Lean_Meta_Origin_key(x_9); -x_12 = l_Lean_Name_hash___override(x_11); -lean_dec(x_11); -x_13 = lean_uint64_to_usize(x_12); -x_14 = 1; -x_15 = lean_usize_sub(x_1, x_14); -x_16 = 5; -x_17 = lean_usize_mul(x_16, x_15); -x_18 = lean_usize_shift_right(x_13, x_17); -x_19 = lean_unsigned_to_nat(1u); -x_20 = lean_nat_add(x_5, x_19); -lean_dec(x_5); -x_21 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2(x_6, x_18, x_1, x_9, x_10); -x_4 = lean_box(0); -x_5 = x_20; -x_6 = x_21; -goto _start; +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_23 = lean_ctor_get(x_3, 0); +lean_inc(x_23); +lean_dec(x_3); +x_24 = lean_ctor_get(x_23, 1); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__7; +x_26 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_5); +x_27 = l_Lean_Meta_ppOrigin___rarg___lambda__1___closed__3; +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 = lean_apply_2(x_24, lean_box(0), x_28); +return x_29; } } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +} +LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin___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; uint8_t x_8; -x_5 = lean_ctor_get(x_1, 0); +switch (lean_obj_tag(x_4)) { +case 0: +{ +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; +x_5 = lean_ctor_get(x_4, 0); lean_inc(x_5); -x_6 = lean_ctor_get(x_1, 1); -lean_inc(x_6); -x_7 = lean_array_get_size(x_5); -x_8 = lean_nat_dec_lt(x_2, x_7); -lean_dec(x_7); -if (x_8 == 0) +x_6 = lean_ctor_get_uint8(x_4, sizeof(void*)*1); +x_7 = lean_ctor_get_uint8(x_4, sizeof(void*)*1 + 1); +lean_dec(x_4); +x_8 = lean_ctor_get(x_1, 1); +lean_inc(x_8); +lean_inc(x_1); +x_9 = l_Lean_mkConstWithLevelParams___rarg(x_1, x_2, x_3, x_5); +x_10 = lean_box(x_6); +x_11 = lean_box(x_7); +x_12 = lean_alloc_closure((void*)(l_Lean_Meta_ppOrigin___rarg___lambda__1___boxed), 4, 3); +lean_closure_set(x_12, 0, x_10); +lean_closure_set(x_12, 1, x_11); +lean_closure_set(x_12, 2, x_1); +x_13 = lean_apply_4(x_8, lean_box(0), lean_box(0), x_9, x_12); +return x_13; +} +case 1: { -uint8_t x_9; +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_dec(x_3); lean_dec(x_2); -x_9 = !lean_is_exclusive(x_1); -if (x_9 == 0) +x_14 = lean_ctor_get(x_4, 0); +lean_inc(x_14); +lean_dec(x_4); +x_15 = lean_ctor_get(x_1, 0); +lean_inc(x_15); +lean_dec(x_1); +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Expr_fvar___override(x_14); +x_18 = l_Lean_MessageData_ofExpr(x_17); +x_19 = lean_apply_2(x_16, lean_box(0), x_18); +return x_19; +} +case 2: { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = lean_ctor_get(x_1, 1); -lean_dec(x_10); -x_11 = lean_ctor_get(x_1, 0); -lean_dec(x_11); -x_12 = lean_array_push(x_5, x_3); -x_13 = lean_array_push(x_6, x_4); -lean_ctor_set(x_1, 1, x_13); -lean_ctor_set(x_1, 0, x_12); -return x_1; +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_3); +lean_dec(x_2); +x_20 = lean_ctor_get(x_4, 1); +lean_inc(x_20); +lean_dec(x_4); +x_21 = lean_ctor_get(x_1, 0); +lean_inc(x_21); +lean_dec(x_1); +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +lean_dec(x_21); +x_23 = l_Lean_MessageData_ofSyntax(x_20); +x_24 = lean_apply_2(x_22, lean_box(0), x_23); +return x_24; } -else +default: { -lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_3); +lean_dec(x_2); +x_25 = lean_ctor_get(x_4, 0); +lean_inc(x_25); +lean_dec(x_4); +x_26 = lean_ctor_get(x_1, 0); +lean_inc(x_26); lean_dec(x_1); -x_14 = lean_array_push(x_5, x_3); -x_15 = lean_array_push(x_6, x_4); -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; +x_27 = lean_ctor_get(x_26, 1); +lean_inc(x_27); +lean_dec(x_26); +x_28 = l_Lean_MessageData_ofName(x_25); +x_29 = lean_apply_2(x_27, lean_box(0), x_28); +return x_29; } } -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_17 = lean_array_fget(x_5, x_2); -x_18 = l_Lean_Meta_Origin_key(x_3); -x_19 = l_Lean_Meta_Origin_key(x_17); -lean_dec(x_17); -x_20 = lean_name_eq(x_18, x_19); -lean_dec(x_19); -lean_dec(x_18); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; -lean_dec(x_6); -lean_dec(x_5); -x_21 = lean_unsigned_to_nat(1u); -x_22 = lean_nat_add(x_2, x_21); -lean_dec(x_2); -x_2 = x_22; -goto _start; } -else -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_1); -if (x_24 == 0) +} +LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin(lean_object* x_1) { +_start: { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_25 = lean_ctor_get(x_1, 1); -lean_dec(x_25); -x_26 = lean_ctor_get(x_1, 0); -lean_dec(x_26); -x_27 = lean_array_fset(x_5, x_2, x_3); -x_28 = lean_array_fset(x_6, x_2, x_4); -lean_dec(x_2); -lean_ctor_set(x_1, 1, x_28); -lean_ctor_set(x_1, 0, x_27); -return x_1; +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Meta_ppOrigin___rarg), 4, 0); +return x_2; } -else +} +LEAN_EXPORT lean_object* l_Lean_Meta_ppOrigin___rarg___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: { -lean_object* x_29; lean_object* x_30; lean_object* x_31; +uint8_t x_5; uint8_t x_6; lean_object* x_7; +x_5 = lean_unbox(x_1); lean_dec(x_1); -x_29 = lean_array_fset(x_5, x_2, x_3); -x_30 = lean_array_fset(x_6, x_2, x_4); +x_6 = lean_unbox(x_2); lean_dec(x_2); -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; -} +x_7 = l_Lean_Meta_ppOrigin___rarg___lambda__1(x_5, x_6, x_3, x_4); +return x_7; } } +static lean_object* _init_l_Lean_Meta_ppSimpTheorem___rarg___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_instToFormatSimpTheorem___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; } } -static size_t _init_l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__1() { +static lean_object* _init_l_Lean_Meta_ppSimpTheorem___rarg___lambda__1___closed__2() { _start: { -size_t x_1; size_t x_2; size_t x_3; -x_1 = 1; -x_2 = 5; -x_3 = lean_usize_shift_left(x_1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_instToFormatSimpTheorem___closed__4; +x_2 = l_Lean_MessageData_ofFormat(x_1); +return x_2; } } -static size_t _init_l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__2() { +LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -size_t x_1; size_t x_2; size_t x_3; -x_1 = 1; -x_2 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__1; -x_3 = lean_usize_sub(x_2, x_1); -return x_3; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; 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_4 = lean_ctor_get(x_1, 3); +lean_inc(x_4); +lean_dec(x_1); +x_5 = l___private_Init_Data_Repr_0__Nat_reprFast(x_4); +x_6 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_6, 0, x_5); +x_7 = l_Lean_MessageData_ofFormat(x_6); +x_8 = l_Lean_Meta_ppSimpTheorem___rarg___lambda__1___closed__1; +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_Lean_Meta_ppOrigin___rarg___lambda__1___closed__3; +x_11 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_11, 0, x_9); +lean_ctor_set(x_11, 1, x_10); +x_12 = lean_ctor_get(x_2, 0); +lean_inc(x_12); +lean_dec(x_2); +x_13 = lean_ctor_get(x_12, 1); +lean_inc(x_13); +lean_dec(x_12); +x_14 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_14, 0, x_3); +lean_ctor_set(x_14, 1, x_11); +x_15 = l_Lean_Meta_ppSimpTheorem___rarg___lambda__1___closed__2; +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 = lean_apply_2(x_13, lean_box(0), x_16); +return x_17; } } -static lean_object* _init_l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__3() { +static lean_object* _init_l_Lean_Meta_ppSimpTheorem___rarg___lambda__2___closed__1() { _start: { -lean_object* x_1; -x_1 = l_Lean_PersistentHashMap_mkEmptyEntries(lean_box(0), lean_box(0)); -return x_1; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_instToFormatSimpTheorem___closed__6; +x_2 = l_Lean_MessageData_ofFormat(x_1); +return x_2; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem___rarg___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -if (lean_obj_tag(x_1) == 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; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_4 = lean_ctor_get(x_1, 3); +lean_inc(x_4); +lean_dec(x_1); +x_5 = l___private_Init_Data_Repr_0__Nat_reprFast(x_4); +x_6 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_6, 0, x_5); +x_7 = l_Lean_MessageData_ofFormat(x_6); +x_8 = l_Lean_Meta_ppSimpTheorem___rarg___lambda__1___closed__1; +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_Lean_Meta_ppOrigin___rarg___lambda__1___closed__3; +x_11 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_11, 0, x_9); +lean_ctor_set(x_11, 1, x_10); +x_12 = lean_ctor_get(x_2, 0); +lean_inc(x_12); +lean_dec(x_2); +x_13 = lean_ctor_get(x_12, 1); +lean_inc(x_13); +lean_dec(x_12); +x_14 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_14, 0, x_3); +lean_ctor_set(x_14, 1, x_11); +x_15 = l_Lean_Meta_ppSimpTheorem___rarg___lambda__2___closed__1; +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 = lean_apply_2(x_13, lean_box(0), x_16); +return x_17; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem___rarg(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; -x_6 = !lean_is_exclusive(x_1); +uint8_t x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_6 = lean_ctor_get_uint8(x_5, sizeof(void*)*5 + 1); +x_7 = lean_ctor_get(x_1, 1); +lean_inc(x_7); +x_8 = lean_ctor_get(x_5, 4); +lean_inc(x_8); +lean_inc(x_1); +x_9 = l_Lean_Meta_ppOrigin___rarg(x_1, x_3, x_4, x_8); if (x_6 == 0) { -lean_object* x_7; size_t x_8; size_t x_9; size_t x_10; size_t x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_7 = lean_ctor_get(x_1, 0); -x_8 = 1; -x_9 = 5; -x_10 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__2; -x_11 = lean_usize_land(x_2, x_10); -x_12 = lean_usize_to_nat(x_11); -x_13 = lean_array_get_size(x_7); -x_14 = lean_nat_dec_lt(x_12, x_13); -lean_dec(x_13); -if (x_14 == 0) -{ -lean_dec(x_12); -lean_dec(x_5); -lean_dec(x_4); -return x_1; +lean_object* x_10; lean_object* x_11; +x_10 = lean_alloc_closure((void*)(l_Lean_Meta_ppSimpTheorem___rarg___lambda__1), 3, 2); +lean_closure_set(x_10, 0, x_5); +lean_closure_set(x_10, 1, x_1); +x_11 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_9, x_10); +return x_11; } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_array_fget(x_7, x_12); -x_16 = lean_box(0); -x_17 = lean_array_fset(x_7, x_12, x_16); -switch (lean_obj_tag(x_15)) { -case 0: +lean_object* x_12; lean_object* x_13; +x_12 = lean_alloc_closure((void*)(l_Lean_Meta_ppSimpTheorem___rarg___lambda__2), 3, 2); +lean_closure_set(x_12, 0, x_5); +lean_closure_set(x_12, 1, x_1); +x_13 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_9, x_12); +return x_13; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem(lean_object* x_1) { +_start: { -uint8_t x_18; -x_18 = !lean_is_exclusive(x_15); -if (x_18 == 0) +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Meta_ppSimpTheorem___rarg___boxed), 5, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_ppSimpTheorem___rarg___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_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_19 = lean_ctor_get(x_15, 0); -x_20 = lean_ctor_get(x_15, 1); -x_21 = l_Lean_Meta_Origin_key(x_4); -x_22 = l_Lean_Meta_Origin_key(x_19); -x_23 = lean_name_eq(x_21, x_22); -lean_dec(x_22); -lean_dec(x_21); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; -lean_free_object(x_15); -x_24 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_19, x_20, x_4, x_5); -x_25 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_25, 0, x_24); -x_26 = lean_array_fset(x_17, x_12, x_25); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_26); -return x_1; +lean_object* x_6; +x_6 = l_Lean_Meta_ppSimpTheorem___rarg(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_2); +return x_6; } -else +} +LEAN_EXPORT uint8_t l_Lean_Meta_instBEqSimpTheorem(lean_object* x_1, lean_object* x_2) { +_start: { -lean_object* x_27; -lean_dec(x_20); -lean_dec(x_19); -lean_ctor_set(x_15, 1, x_5); -lean_ctor_set(x_15, 0, x_4); -x_27 = lean_array_fset(x_17, x_12, x_15); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_27); -return x_1; +lean_object* x_3; lean_object* x_4; uint8_t x_5; +x_3 = lean_ctor_get(x_1, 2); +x_4 = lean_ctor_get(x_2, 2); +x_5 = lean_expr_eqv(x_3, x_4); +return x_5; } } -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_15, 0); -x_29 = lean_ctor_get(x_15, 1); -lean_inc(x_29); -lean_inc(x_28); -lean_dec(x_15); -x_30 = l_Lean_Meta_Origin_key(x_4); -x_31 = l_Lean_Meta_Origin_key(x_28); -x_32 = lean_name_eq(x_30, x_31); -lean_dec(x_31); -lean_dec(x_30); -if (x_32 == 0) +LEAN_EXPORT lean_object* l_Lean_Meta_instBEqSimpTheorem___boxed(lean_object* x_1, lean_object* x_2) { +_start: { -lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_33 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_28, x_29, x_4, x_5); -x_34 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_34, 0, x_33); -x_35 = lean_array_fset(x_17, x_12, x_34); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_35); -return x_1; +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Meta_instBEqSimpTheorem(x_1, x_2); +lean_dec(x_2); +lean_dec(x_1); +x_4 = lean_box(x_3); +return x_4; } -else +} +static lean_object* _init_l_Lean_Meta_SimpTheorems_pre___default___closed__1() { +_start: { -lean_object* x_36; lean_object* x_37; -lean_dec(x_29); -lean_dec(x_28); -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 = lean_array_fset(x_17, x_12, x_36); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_37); +lean_object* x_1; +x_1 = l_Lean_Meta_DiscrTree_empty(lean_box(0)); return x_1; } } -} -case 1: -{ -uint8_t x_38; -x_38 = !lean_is_exclusive(x_15); -if (x_38 == 0) +static lean_object* _init_l_Lean_Meta_SimpTheorems_pre___default() { +_start: { -lean_object* x_39; size_t x_40; size_t x_41; lean_object* x_42; lean_object* x_43; -x_39 = lean_ctor_get(x_15, 0); -x_40 = lean_usize_shift_right(x_2, x_9); -x_41 = lean_usize_add(x_3, x_8); -x_42 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2(x_39, x_40, x_41, x_4, x_5); -lean_ctor_set(x_15, 0, x_42); -x_43 = lean_array_fset(x_17, x_12, x_15); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_43); +lean_object* x_1; +x_1 = l_Lean_Meta_SimpTheorems_pre___default___closed__1; return x_1; } -else +} +static lean_object* _init_l_Lean_Meta_SimpTheorems_post___default() { +_start: { -lean_object* x_44; size_t x_45; size_t x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_44 = lean_ctor_get(x_15, 0); -lean_inc(x_44); -lean_dec(x_15); -x_45 = lean_usize_shift_right(x_2, x_9); -x_46 = lean_usize_add(x_3, x_8); -x_47 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2(x_44, x_45, x_46, x_4, x_5); -x_48 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_48, 0, x_47); -x_49 = lean_array_fset(x_17, x_12, x_48); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_49); +lean_object* x_1; +x_1 = l_Lean_Meta_SimpTheorems_pre___default___closed__1; return x_1; } } -default: +static lean_object* _init_l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__1() { +_start: { -lean_object* x_50; lean_object* x_51; -x_50 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_50, 0, x_4); -lean_ctor_set(x_50, 1, x_5); -x_51 = lean_array_fset(x_17, x_12, x_50); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_51); +lean_object* x_1; +x_1 = l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_box(0), lean_box(0)); return x_1; } } -} -} -else -{ -lean_object* x_52; size_t x_53; size_t x_54; size_t x_55; size_t x_56; lean_object* x_57; lean_object* x_58; uint8_t x_59; -x_52 = lean_ctor_get(x_1, 0); -lean_inc(x_52); -lean_dec(x_1); -x_53 = 1; -x_54 = 5; -x_55 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__2; -x_56 = lean_usize_land(x_2, x_55); -x_57 = lean_usize_to_nat(x_56); -x_58 = lean_array_get_size(x_52); -x_59 = lean_nat_dec_lt(x_57, x_58); -lean_dec(x_58); -if (x_59 == 0) -{ -lean_object* x_60; -lean_dec(x_57); -lean_dec(x_5); -lean_dec(x_4); -x_60 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_60, 0, x_52); -return x_60; -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_61 = lean_array_fget(x_52, x_57); -x_62 = lean_box(0); -x_63 = lean_array_fset(x_52, x_57, x_62); -switch (lean_obj_tag(x_61)) { -case 0: +static lean_object* _init_l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__2() { +_start: { -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; uint8_t x_69; -x_64 = lean_ctor_get(x_61, 0); -lean_inc(x_64); -x_65 = lean_ctor_get(x_61, 1); -lean_inc(x_65); -if (lean_is_exclusive(x_61)) { - lean_ctor_release(x_61, 0); - lean_ctor_release(x_61, 1); - x_66 = x_61; -} else { - lean_dec_ref(x_61); - x_66 = lean_box(0); +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__1; +x_2 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; } -x_67 = l_Lean_Meta_Origin_key(x_4); -x_68 = l_Lean_Meta_Origin_key(x_64); -x_69 = lean_name_eq(x_67, x_68); -lean_dec(x_68); -lean_dec(x_67); -if (x_69 == 0) -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; -lean_dec(x_66); -x_70 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_64, x_65, x_4, x_5); -x_71 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_71, 0, x_70); -x_72 = lean_array_fset(x_63, x_57, x_71); -lean_dec(x_57); -x_73 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_73, 0, x_72); -return x_73; } -else +static lean_object* _init_l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__3() { +_start: { -lean_object* x_74; lean_object* x_75; lean_object* x_76; -lean_dec(x_65); -lean_dec(x_64); -if (lean_is_scalar(x_66)) { - x_74 = lean_alloc_ctor(0, 2, 0); -} else { - x_74 = x_66; -} -lean_ctor_set(x_74, 0, x_4); -lean_ctor_set(x_74, 1, x_5); -x_75 = lean_array_fset(x_63, x_57, x_74); -lean_dec(x_57); -x_76 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_76, 0, x_75); -return x_76; +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_instBEqOrigin___boxed), 2, 0); +return x_1; } } -case 1: +static lean_object* _init_l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__4() { +_start: { -lean_object* x_77; lean_object* x_78; size_t x_79; size_t x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; -x_77 = lean_ctor_get(x_61, 0); -lean_inc(x_77); -if (lean_is_exclusive(x_61)) { - lean_ctor_release(x_61, 0); - x_78 = x_61; -} else { - lean_dec_ref(x_61); - x_78 = lean_box(0); -} -x_79 = lean_usize_shift_right(x_2, x_54); -x_80 = lean_usize_add(x_3, x_53); -x_81 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2(x_77, x_79, x_80, x_4, x_5); -if (lean_is_scalar(x_78)) { - x_82 = lean_alloc_ctor(1, 1, 0); -} else { - x_82 = x_78; +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_instHashableOrigin___boxed), 1, 0); +return x_1; } -lean_ctor_set(x_82, 0, x_81); -x_83 = lean_array_fset(x_63, x_57, x_82); -lean_dec(x_57); -x_84 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_84, 0, x_83); -return x_84; } -default: +static lean_object* _init_l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__5() { +_start: { -lean_object* x_85; lean_object* x_86; lean_object* x_87; -x_85 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_85, 0, x_4); -lean_ctor_set(x_85, 1, x_5); -x_86 = lean_array_fset(x_63, x_57, x_85); -lean_dec(x_57); -x_87 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_87, 0, x_86); -return x_87; -} -} -} +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__2; +x_2 = lean_unsigned_to_nat(0u); +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; } } -else -{ -uint8_t x_88; -x_88 = !lean_is_exclusive(x_1); -if (x_88 == 0) -{ -lean_object* x_89; lean_object* x_90; size_t x_91; uint8_t x_92; -x_89 = lean_unsigned_to_nat(0u); -x_90 = l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__4(x_1, x_89, x_4, x_5); -x_91 = 7; -x_92 = lean_usize_dec_le(x_91, x_3); -if (x_92 == 0) -{ -lean_object* x_93; lean_object* x_94; uint8_t x_95; -x_93 = l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(x_90); -x_94 = lean_unsigned_to_nat(4u); -x_95 = lean_nat_dec_lt(x_93, x_94); -lean_dec(x_93); -if (x_95 == 0) +static lean_object* _init_l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1() { +_start: { -lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; -x_96 = lean_ctor_get(x_90, 0); -lean_inc(x_96); -x_97 = lean_ctor_get(x_90, 1); -lean_inc(x_97); -lean_dec(x_90); -x_98 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__3; -x_99 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__3(x_3, x_96, x_97, lean_box(0), x_89, x_98); -lean_dec(x_97); -lean_dec(x_96); -return x_99; +lean_object* x_1; +x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__5; +return x_1; } -else +} +static lean_object* _init_l_Lean_Meta_SimpTheorems_lemmaNames___default() { +_start: { -return x_90; +lean_object* x_1; +x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1; +return x_1; } } -else +static lean_object* _init_l_Lean_Meta_SimpTheorems_toUnfold___default() { +_start: { -return x_90; +lean_object* x_1; +x_1 = l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; +return x_1; } } -else -{ -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; size_t x_105; uint8_t x_106; -x_100 = lean_ctor_get(x_1, 0); -x_101 = lean_ctor_get(x_1, 1); -lean_inc(x_101); -lean_inc(x_100); -lean_dec(x_1); -x_102 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_102, 0, x_100); -lean_ctor_set(x_102, 1, x_101); -x_103 = lean_unsigned_to_nat(0u); -x_104 = l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__4(x_102, x_103, x_4, x_5); -x_105 = 7; -x_106 = lean_usize_dec_le(x_105, x_3); -if (x_106 == 0) -{ -lean_object* x_107; lean_object* x_108; uint8_t x_109; -x_107 = l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(x_104); -x_108 = lean_unsigned_to_nat(4u); -x_109 = lean_nat_dec_lt(x_107, x_108); -lean_dec(x_107); -if (x_109 == 0) +static lean_object* _init_l_Lean_Meta_SimpTheorems_erased___default() { +_start: { -lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; -x_110 = lean_ctor_get(x_104, 0); -lean_inc(x_110); -x_111 = lean_ctor_get(x_104, 1); -lean_inc(x_111); -lean_dec(x_104); -x_112 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__3; -x_113 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__3(x_3, x_110, x_111, lean_box(0), x_103, x_112); -lean_dec(x_111); -lean_dec(x_110); -return x_113; +lean_object* x_1; +x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1; +return x_1; } -else +} +static lean_object* _init_l_Lean_Meta_SimpTheorems_toUnfoldThms___default___closed__1() { +_start: { -return x_104; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__2; +x_2 = lean_unsigned_to_nat(0u); +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; } } -else +static lean_object* _init_l_Lean_Meta_SimpTheorems_toUnfoldThms___default() { +_start: { -return x_104; -} +lean_object* x_1; +x_1 = l_Lean_Meta_SimpTheorems_toUnfoldThms___default___closed__1; +return x_1; } } +static lean_object* _init_l_Lean_Meta_instInhabitedSimpTheorems___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1___closed__2; +x_2 = lean_unsigned_to_nat(0u); +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_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +static lean_object* _init_l_Lean_Meta_instInhabitedSimpTheorems___closed__2() { _start: { -uint8_t x_4; -x_4 = !lean_is_exclusive(x_1); -if (x_4 == 0) -{ -lean_object* x_5; lean_object* x_6; lean_object* x_7; uint64_t x_8; size_t x_9; size_t x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_5 = lean_ctor_get(x_1, 0); -x_6 = lean_ctor_get(x_1, 1); -x_7 = l_Lean_Meta_Origin_key(x_2); -x_8 = l_Lean_Name_hash___override(x_7); -lean_dec(x_7); -x_9 = lean_uint64_to_usize(x_8); -x_10 = 1; -x_11 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2(x_5, x_9, x_10, x_2, x_3); -x_12 = lean_unsigned_to_nat(1u); -x_13 = lean_nat_add(x_6, x_12); -lean_dec(x_6); -lean_ctor_set(x_1, 1, x_13); -lean_ctor_set(x_1, 0, x_11); -return x_1; -} -else -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; uint64_t x_17; size_t x_18; size_t x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_14 = lean_ctor_get(x_1, 0); -x_15 = lean_ctor_get(x_1, 1); -lean_inc(x_15); -lean_inc(x_14); -lean_dec(x_1); -x_16 = l_Lean_Meta_Origin_key(x_2); -x_17 = l_Lean_Name_hash___override(x_16); -lean_dec(x_16); -x_18 = lean_uint64_to_usize(x_17); -x_19 = 1; -x_20 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2(x_14, x_18, x_19, x_2, x_3); -x_21 = lean_unsigned_to_nat(1u); -x_22 = lean_nat_add(x_15, x_21); -lean_dec(x_15); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_20); -lean_ctor_set(x_23, 1, x_22); -return x_23; -} +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_instInhabitedSimpTheorems___closed__1; +x_2 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1; +x_3 = l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; +x_4 = l_Lean_Meta_SimpTheorems_toUnfoldThms___default___closed__1; +x_5 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_5, 0, x_1); +lean_ctor_set(x_5, 1, x_1); +lean_ctor_set(x_5, 2, x_2); +lean_ctor_set(x_5, 3, x_3); +lean_ctor_set(x_5, 4, x_2); +lean_ctor_set(x_5, 5, x_4); +return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Meta_addSimpTheoremEntry_updateLemmaNames(lean_object* x_1, lean_object* x_2) { +static lean_object* _init_l_Lean_Meta_instInhabitedSimpTheorems() { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_3 = lean_ctor_get(x_1, 4); -lean_inc(x_3); -lean_dec(x_1); -x_4 = lean_box(0); -x_5 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__1(x_2, x_3, x_4); -return x_5; +lean_object* x_1; +x_1 = l_Lean_Meta_instInhabitedSimpTheorems___closed__2; +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___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) { +static lean_object* _init_l_Lean_Meta_simpDtConfig___closed__1() { _start: { -size_t x_7; lean_object* x_8; -x_7 = lean_unbox_usize(x_1); -lean_dec(x_1); -x_8 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__3(x_7, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_3); -lean_dec(x_2); -return x_8; +uint8_t x_1; uint8_t x_2; uint8_t x_3; lean_object* x_4; +x_1 = 0; +x_2 = 1; +x_3 = 0; +x_4 = lean_alloc_ctor(0, 0, 5); +lean_ctor_set_uint8(x_4, 0, x_1); +lean_ctor_set_uint8(x_4, 1, x_2); +lean_ctor_set_uint8(x_4, 2, x_3); +lean_ctor_set_uint8(x_4, 3, x_2); +lean_ctor_set_uint8(x_4, 4, x_1); +return x_4; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +static lean_object* _init_l_Lean_Meta_simpDtConfig() { _start: { -size_t x_6; size_t x_7; lean_object* x_8; -x_6 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_7 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_8 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2(x_1, x_6, x_7, x_4, x_5); -return x_8; +lean_object* x_1; +x_1 = l_Lean_Meta_simpDtConfig___closed__1; +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_addSimpTheoremEntry___spec__4(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_indexOfAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _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) -{ -lean_object* x_8; +lean_object* x_4; uint8_t x_5; +x_4 = lean_array_get_size(x_1); +x_5 = lean_nat_dec_lt(x_3, x_4); lean_dec(x_4); -x_8 = lean_box(0); -return x_8; +if (x_5 == 0) +{ +lean_object* x_6; +lean_dec(x_3); +x_6 = lean_box(0); +return x_6; } else { -lean_object* x_9; uint8_t x_10; -x_9 = lean_array_fget(x_1, x_4); -x_10 = l___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_5, x_9); -lean_dec(x_9); -if (x_10 == 0) +uint8_t x_7; lean_object* x_13; +x_13 = lean_array_fget(x_1, x_3); +if (lean_obj_tag(x_13) == 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; +x_14 = lean_ctor_get_uint8(x_13, sizeof(void*)*1); +if (x_14 == 0) { -lean_object* x_14; lean_object* x_15; -x_14 = lean_array_fget(x_2, x_4); -lean_dec(x_4); -x_15 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_15, 0, x_14); -return x_15; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_addSimpTheoremEntry___spec__3(lean_object* x_1, size_t x_2, lean_object* x_3) { -_start: +if (lean_obj_tag(x_2) == 0) { -if (lean_obj_tag(x_1) == 0) +uint8_t x_15; +x_15 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_15 == 0) { -uint8_t x_4; -x_4 = !lean_is_exclusive(x_1); -if (x_4 == 0) +lean_object* x_16; uint8_t x_17; lean_object* x_18; uint8_t x_19; uint8_t x_20; +x_16 = lean_ctor_get(x_13, 0); +lean_inc(x_16); +x_17 = lean_ctor_get_uint8(x_13, sizeof(void*)*1 + 1); +lean_dec(x_13); +x_18 = lean_ctor_get(x_2, 0); +x_19 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +x_20 = lean_name_eq(x_16, x_18); +lean_dec(x_16); +if (x_20 == 0) { -lean_object* x_5; size_t x_6; size_t x_7; size_t x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_5 = lean_ctor_get(x_1, 0); -x_6 = 5; -x_7 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__2; -x_8 = lean_usize_land(x_2, x_7); -x_9 = lean_usize_to_nat(x_8); -x_10 = lean_box(2); -x_11 = lean_array_get(x_10, x_5, x_9); -lean_dec(x_9); -lean_dec(x_5); -switch (lean_obj_tag(x_11)) { -case 0: +uint8_t x_21; +x_21 = 0; +x_7 = x_21; +goto block_12; +} +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___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_3, x_12); -lean_dec(x_12); -if (x_14 == 0) +if (x_17 == 0) { -lean_object* x_15; -lean_dec(x_13); -lean_free_object(x_1); -x_15 = lean_box(0); -return x_15; +if (x_19 == 0) +{ +uint8_t x_22; +x_22 = 1; +x_7 = x_22; +goto block_12; } else { -lean_ctor_set_tag(x_1, 1); -lean_ctor_set(x_1, 0, x_13); -return x_1; +uint8_t x_23; +x_23 = 0; +x_7 = x_23; +goto block_12; } } -case 1: +else { -lean_object* x_16; size_t x_17; -lean_free_object(x_1); -x_16 = lean_ctor_get(x_11, 0); -lean_inc(x_16); -lean_dec(x_11); -x_17 = lean_usize_shift_right(x_2, x_6); -x_1 = x_16; -x_2 = x_17; -goto _start; +if (x_19 == 0) +{ +uint8_t x_24; +x_24 = 0; +x_7 = x_24; +goto block_12; } -default: +else { -lean_object* x_19; -lean_free_object(x_1); -x_19 = lean_box(0); -return x_19; +uint8_t x_25; +x_25 = 1; +x_7 = x_25; +goto block_12; +} } } } else { -lean_object* x_20; size_t x_21; size_t x_22; size_t x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_20 = lean_ctor_get(x_1, 0); -lean_inc(x_20); -lean_dec(x_1); -x_21 = 5; -x_22 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__2; -x_23 = lean_usize_land(x_2, x_22); -x_24 = lean_usize_to_nat(x_23); -x_25 = lean_box(2); -x_26 = lean_array_get(x_25, x_20, x_24); -lean_dec(x_24); -lean_dec(x_20); -switch (lean_obj_tag(x_26)) { -case 0: +uint8_t x_26; +x_26 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_26 == 0) { -lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_27 = lean_ctor_get(x_26, 0); +lean_object* x_27; uint8_t x_28; lean_object* x_29; uint8_t x_30; +x_27 = lean_ctor_get(x_13, 0); lean_inc(x_27); -x_28 = lean_ctor_get(x_26, 1); -lean_inc(x_28); -lean_dec(x_26); -x_29 = l___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_3, x_27); +x_28 = lean_ctor_get_uint8(x_13, sizeof(void*)*1 + 1); +lean_dec(x_13); +x_29 = lean_ctor_get(x_2, 0); +x_30 = lean_name_eq(x_27, x_29); lean_dec(x_27); -if (x_29 == 0) +if (x_30 == 0) { -lean_object* x_30; -lean_dec(x_28); -x_30 = lean_box(0); -return x_30; +uint8_t x_31; +x_31 = 0; +x_7 = x_31; +goto block_12; } else { -lean_object* x_31; -x_31 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_31, 0, x_28); -return x_31; -} -} -case 1: +if (x_28 == 0) { -lean_object* x_32; size_t x_33; -x_32 = lean_ctor_get(x_26, 0); -lean_inc(x_32); -lean_dec(x_26); -x_33 = lean_usize_shift_right(x_2, x_21); -x_1 = x_32; -x_2 = x_33; -goto _start; +uint8_t x_32; +x_32 = 1; +x_7 = x_32; +goto block_12; } -default: +else { -lean_object* x_35; -x_35 = lean_box(0); -return x_35; +uint8_t x_33; +x_33 = 0; +x_7 = x_33; +goto block_12; } } } +else +{ +lean_object* x_34; uint8_t x_35; lean_object* x_36; uint8_t x_37; +x_34 = lean_ctor_get(x_13, 0); +lean_inc(x_34); +x_35 = lean_ctor_get_uint8(x_13, sizeof(void*)*1 + 1); +lean_dec(x_13); +x_36 = lean_ctor_get(x_2, 0); +x_37 = lean_name_eq(x_34, x_36); +lean_dec(x_34); +if (x_37 == 0) +{ +uint8_t x_38; +x_38 = 0; +x_7 = x_38; +goto block_12; } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_36 = lean_ctor_get(x_1, 0); -lean_inc(x_36); -x_37 = lean_ctor_get(x_1, 1); -lean_inc(x_37); -lean_dec(x_1); -x_38 = lean_unsigned_to_nat(0u); -x_39 = l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_addSimpTheoremEntry___spec__4(x_36, x_37, lean_box(0), x_38, x_3); -lean_dec(x_37); -lean_dec(x_36); -return x_39; +if (x_35 == 0) +{ +uint8_t x_39; +x_39 = 0; +x_7 = x_39; +goto block_12; } +else +{ +uint8_t x_40; +x_40 = 1; +x_7 = x_40; +goto block_12; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_addSimpTheoremEntry___spec__2(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; uint64_t x_4; size_t x_5; lean_object* x_6; -x_3 = lean_ctor_get(x_1, 0); -lean_inc(x_3); -lean_dec(x_1); -x_4 = l_Lean_Meta_DiscrTree_Key_hash(x_2); -x_5 = lean_uint64_to_usize(x_4); -x_6 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_addSimpTheoremEntry___spec__3(x_3, x_5, x_2); -lean_dec(x_2); -return x_6; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry___spec__7(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: -{ -lean_object* x_7; uint8_t x_8; -x_7 = lean_array_get_size(x_2); -x_8 = lean_nat_dec_lt(x_5, x_7); -lean_dec(x_7); -if (x_8 == 0) -{ -lean_dec(x_5); -return x_6; } else { -lean_object* x_9; lean_object* 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; size_t x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_9 = lean_array_fget(x_2, x_5); -x_10 = lean_array_fget(x_3, x_5); -x_11 = l_Lean_Meta_DiscrTree_Key_hash(x_9); -x_12 = lean_uint64_to_usize(x_11); -x_13 = 1; -x_14 = lean_usize_sub(x_1, x_13); -x_15 = 5; -x_16 = lean_usize_mul(x_15, x_14); -x_17 = lean_usize_shift_right(x_12, x_16); -x_18 = lean_unsigned_to_nat(1u); -x_19 = lean_nat_add(x_5, x_18); -lean_dec(x_5); -x_20 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_6, x_17, x_1, x_9, x_10); -x_4 = lean_box(0); -x_5 = x_19; -x_6 = x_20; -goto _start; -} +lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_41 = l_Lean_Meta_Origin_key(x_13); +lean_dec(x_13); +x_42 = l_Lean_Meta_Origin_key(x_2); +x_43 = lean_name_eq(x_41, x_42); +lean_dec(x_42); +lean_dec(x_41); +x_7 = x_43; +goto block_12; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_addSimpTheoremEntry___spec__8(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: +else { -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); -x_7 = lean_array_get_size(x_5); -x_8 = lean_nat_dec_lt(x_2, x_7); -lean_dec(x_7); -if (x_8 == 0) +uint8_t x_44; +x_44 = lean_ctor_get_uint8(x_13, sizeof(void*)*1 + 1); +if (x_44 == 0) { -uint8_t x_9; -lean_dec(x_2); -x_9 = !lean_is_exclusive(x_1); -if (x_9 == 0) +if (lean_obj_tag(x_2) == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = lean_ctor_get(x_1, 1); -lean_dec(x_10); -x_11 = lean_ctor_get(x_1, 0); -lean_dec(x_11); -x_12 = lean_array_push(x_5, x_3); -x_13 = lean_array_push(x_6, x_4); -lean_ctor_set(x_1, 1, x_13); -lean_ctor_set(x_1, 0, x_12); -return x_1; +uint8_t x_45; +x_45 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; uint8_t x_48; uint8_t x_49; +x_46 = lean_ctor_get(x_13, 0); +lean_inc(x_46); +lean_dec(x_13); +x_47 = lean_ctor_get(x_2, 0); +x_48 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +x_49 = lean_name_eq(x_46, x_47); +lean_dec(x_46); +if (x_49 == 0) +{ +uint8_t x_50; +x_50 = 0; +x_7 = x_50; +goto block_12; } else { -lean_object* x_14; lean_object* x_15; lean_object* x_16; -lean_dec(x_1); -x_14 = lean_array_push(x_5, x_3); -x_15 = lean_array_push(x_6, x_4); -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; +if (x_48 == 0) +{ +uint8_t x_51; +x_51 = 1; +x_7 = x_51; +goto block_12; +} +else +{ +uint8_t x_52; +x_52 = 0; +x_7 = x_52; +goto block_12; +} } } else { -lean_object* x_17; uint8_t x_18; -x_17 = lean_array_fget(x_5, x_2); -x_18 = l___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_3, x_17); -lean_dec(x_17); -if (x_18 == 0) +uint8_t x_53; +x_53 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_53 == 0) { -lean_object* x_19; lean_object* x_20; -lean_dec(x_6); -lean_dec(x_5); -x_19 = lean_unsigned_to_nat(1u); -x_20 = lean_nat_add(x_2, x_19); -lean_dec(x_2); -x_2 = x_20; -goto _start; +lean_object* x_54; lean_object* x_55; uint8_t x_56; +x_54 = lean_ctor_get(x_13, 0); +lean_inc(x_54); +lean_dec(x_13); +x_55 = lean_ctor_get(x_2, 0); +x_56 = lean_name_eq(x_54, x_55); +lean_dec(x_54); +if (x_56 == 0) +{ +uint8_t x_57; +x_57 = 0; +x_7 = x_57; +goto block_12; } else { -uint8_t x_22; -x_22 = !lean_is_exclusive(x_1); -if (x_22 == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_23 = lean_ctor_get(x_1, 1); -lean_dec(x_23); -x_24 = lean_ctor_get(x_1, 0); -lean_dec(x_24); -x_25 = lean_array_fset(x_5, x_2, x_3); -x_26 = lean_array_fset(x_6, x_2, x_4); -lean_dec(x_2); -lean_ctor_set(x_1, 1, x_26); -lean_ctor_set(x_1, 0, x_25); -return x_1; +uint8_t x_58; +x_58 = 1; +x_7 = x_58; +goto block_12; +} } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_1); -x_27 = lean_array_fset(x_5, x_2, x_3); -x_28 = lean_array_fset(x_6, x_2, x_4); -lean_dec(x_2); -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_59; +lean_dec(x_13); +x_59 = 0; +x_7 = x_59; +goto block_12; } } } +else +{ +uint8_t x_60; +lean_dec(x_13); +x_60 = 0; +x_7 = x_60; +goto block_12; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5) { -_start: +else { -if (lean_obj_tag(x_1) == 0) +if (lean_obj_tag(x_2) == 0) { -uint8_t x_6; -x_6 = !lean_is_exclusive(x_1); -if (x_6 == 0) +uint8_t x_61; +x_61 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_61 == 0) { -lean_object* x_7; size_t x_8; size_t x_9; size_t x_10; size_t x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_7 = lean_ctor_get(x_1, 0); -x_8 = 1; -x_9 = 5; -x_10 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__2; -x_11 = lean_usize_land(x_2, x_10); -x_12 = lean_usize_to_nat(x_11); -x_13 = lean_array_get_size(x_7); -x_14 = lean_nat_dec_lt(x_12, x_13); +lean_object* x_62; lean_object* x_63; uint8_t x_64; uint8_t x_65; +x_62 = lean_ctor_get(x_13, 0); +lean_inc(x_62); lean_dec(x_13); -if (x_14 == 0) +x_63 = lean_ctor_get(x_2, 0); +x_64 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +x_65 = lean_name_eq(x_62, x_63); +lean_dec(x_62); +if (x_65 == 0) { -lean_dec(x_12); -lean_dec(x_5); -lean_dec(x_4); -return x_1; +uint8_t x_66; +x_66 = 0; +x_7 = x_66; +goto block_12; } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_array_fget(x_7, x_12); -x_16 = lean_box(0); -x_17 = lean_array_fset(x_7, x_12, x_16); -switch (lean_obj_tag(x_15)) { -case 0: -{ -uint8_t x_18; -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, 0); -x_20 = lean_ctor_get(x_15, 1); -x_21 = l___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_4, x_19); -if (x_21 == 0) +if (x_64 == 0) { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -lean_free_object(x_15); -x_22 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_19, x_20, x_4, x_5); -x_23 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_23, 0, x_22); -x_24 = lean_array_fset(x_17, x_12, x_23); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_24); -return x_1; +uint8_t x_67; +x_67 = 0; +x_7 = x_67; +goto block_12; } else { -lean_object* x_25; -lean_dec(x_20); -lean_dec(x_19); -lean_ctor_set(x_15, 1, x_5); -lean_ctor_set(x_15, 0, x_4); -x_25 = lean_array_fset(x_17, x_12, x_15); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_25); -return x_1; +uint8_t x_68; +x_68 = 1; +x_7 = x_68; +goto block_12; +} } } else { -lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_26 = lean_ctor_get(x_15, 0); -x_27 = lean_ctor_get(x_15, 1); -lean_inc(x_27); -lean_inc(x_26); -lean_dec(x_15); -x_28 = l___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_4, x_26); -if (x_28 == 0) +uint8_t x_69; +x_69 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_69 == 0) { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_26, x_27, x_4, x_5); -x_30 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_30, 0, x_29); -x_31 = lean_array_fset(x_17, x_12, x_30); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_31); -return x_1; +uint8_t x_70; +lean_dec(x_13); +x_70 = 0; +x_7 = x_70; +goto block_12; } else { -lean_object* x_32; lean_object* x_33; -lean_dec(x_27); -lean_dec(x_26); -x_32 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_32, 0, x_4); -lean_ctor_set(x_32, 1, x_5); -x_33 = lean_array_fset(x_17, x_12, x_32); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_33); -return x_1; -} -} -} -case 1: -{ -uint8_t x_34; -x_34 = !lean_is_exclusive(x_15); -if (x_34 == 0) +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_13, 0); +lean_inc(x_71); +lean_dec(x_13); +x_72 = lean_ctor_get(x_2, 0); +x_73 = lean_name_eq(x_71, x_72); +lean_dec(x_71); +if (x_73 == 0) { -lean_object* x_35; size_t x_36; size_t x_37; lean_object* x_38; lean_object* x_39; -x_35 = lean_ctor_get(x_15, 0); -x_36 = lean_usize_shift_right(x_2, x_9); -x_37 = lean_usize_add(x_3, x_8); -x_38 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_35, x_36, x_37, x_4, x_5); -lean_ctor_set(x_15, 0, x_38); -x_39 = lean_array_fset(x_17, x_12, x_15); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_39); -return x_1; +uint8_t x_74; +x_74 = 0; +x_7 = x_74; +goto block_12; } else { -lean_object* x_40; size_t x_41; size_t x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_40 = lean_ctor_get(x_15, 0); -lean_inc(x_40); -lean_dec(x_15); -x_41 = lean_usize_shift_right(x_2, x_9); -x_42 = lean_usize_add(x_3, x_8); -x_43 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_40, x_41, x_42, x_4, x_5); -x_44 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_44, 0, x_43); -x_45 = lean_array_fset(x_17, x_12, x_44); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_45); -return x_1; -} -} -default: -{ -lean_object* x_46; lean_object* x_47; -x_46 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_46, 0, x_4); -lean_ctor_set(x_46, 1, x_5); -x_47 = lean_array_fset(x_17, x_12, x_46); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_47); -return x_1; -} +uint8_t x_75; +x_75 = 1; +x_7 = x_75; +goto block_12; } } } -else -{ -lean_object* x_48; size_t x_49; size_t x_50; size_t x_51; size_t x_52; lean_object* x_53; lean_object* x_54; uint8_t x_55; -x_48 = lean_ctor_get(x_1, 0); -lean_inc(x_48); -lean_dec(x_1); -x_49 = 1; -x_50 = 5; -x_51 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__2; -x_52 = lean_usize_land(x_2, x_51); -x_53 = lean_usize_to_nat(x_52); -x_54 = lean_array_get_size(x_48); -x_55 = lean_nat_dec_lt(x_53, x_54); -lean_dec(x_54); -if (x_55 == 0) -{ -lean_object* x_56; -lean_dec(x_53); -lean_dec(x_5); -lean_dec(x_4); -x_56 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_56, 0, x_48); -return x_56; } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_57 = lean_array_fget(x_48, x_53); -x_58 = lean_box(0); -x_59 = lean_array_fset(x_48, x_53, x_58); -switch (lean_obj_tag(x_57)) { -case 0: -{ -lean_object* x_60; lean_object* x_61; lean_object* x_62; uint8_t x_63; -x_60 = lean_ctor_get(x_57, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_57, 1); -lean_inc(x_61); -if (lean_is_exclusive(x_57)) { - lean_ctor_release(x_57, 0); - lean_ctor_release(x_57, 1); - x_62 = x_57; -} else { - lean_dec_ref(x_57); - x_62 = lean_box(0); -} -x_63 = l___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_4, x_60); -if (x_63 == 0) +uint8_t x_76; +x_76 = !lean_is_exclusive(x_13); +if (x_76 == 0) { -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; -lean_dec(x_62); -x_64 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_60, x_61, x_4, x_5); -x_65 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_65, 0, x_64); -x_66 = lean_array_fset(x_59, x_53, x_65); -lean_dec(x_53); -x_67 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_67, 0, x_66); -return x_67; +lean_object* x_77; lean_object* x_78; uint8_t x_79; +lean_ctor_set_uint8(x_13, sizeof(void*)*1, x_44); +x_77 = l_Lean_Meta_Origin_key(x_13); +lean_dec(x_13); +x_78 = l_Lean_Meta_Origin_key(x_2); +x_79 = lean_name_eq(x_77, x_78); +lean_dec(x_78); +lean_dec(x_77); +x_7 = x_79; +goto block_12; } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; -lean_dec(x_61); -lean_dec(x_60); -if (lean_is_scalar(x_62)) { - x_68 = lean_alloc_ctor(0, 2, 0); -} else { - x_68 = x_62; -} -lean_ctor_set(x_68, 0, x_4); -lean_ctor_set(x_68, 1, x_5); -x_69 = lean_array_fset(x_59, x_53, x_68); -lean_dec(x_53); -x_70 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_70, 0, x_69); -return x_70; -} -} -case 1: -{ -lean_object* x_71; lean_object* x_72; size_t x_73; size_t x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_71 = lean_ctor_get(x_57, 0); -lean_inc(x_71); -if (lean_is_exclusive(x_57)) { - lean_ctor_release(x_57, 0); - x_72 = x_57; -} else { - lean_dec_ref(x_57); - x_72 = lean_box(0); -} -x_73 = lean_usize_shift_right(x_2, x_50); -x_74 = lean_usize_add(x_3, x_49); -x_75 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_71, x_73, x_74, x_4, x_5); -if (lean_is_scalar(x_72)) { - x_76 = lean_alloc_ctor(1, 1, 0); -} else { - x_76 = x_72; -} -lean_ctor_set(x_76, 0, x_75); -x_77 = lean_array_fset(x_59, x_53, x_76); -lean_dec(x_53); -x_78 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_78, 0, x_77); -return x_78; -} -default: -{ -lean_object* x_79; lean_object* x_80; lean_object* x_81; -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 = lean_array_fset(x_59, x_53, x_79); -lean_dec(x_53); -x_81 = lean_alloc_ctor(0, 1, 0); +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; uint8_t x_84; +x_80 = lean_ctor_get(x_13, 0); +lean_inc(x_80); +lean_dec(x_13); +x_81 = lean_alloc_ctor(0, 1, 2); lean_ctor_set(x_81, 0, x_80); -return x_81; +lean_ctor_set_uint8(x_81, sizeof(void*)*1, x_44); +lean_ctor_set_uint8(x_81, sizeof(void*)*1 + 1, x_44); +x_82 = l_Lean_Meta_Origin_key(x_81); +lean_dec(x_81); +x_83 = l_Lean_Meta_Origin_key(x_2); +x_84 = lean_name_eq(x_82, x_83); +lean_dec(x_83); +lean_dec(x_82); +x_7 = x_84; +goto block_12; } } } @@ -3619,1264 +3462,4871 @@ return x_81; } else { -uint8_t x_82; -x_82 = !lean_is_exclusive(x_1); -if (x_82 == 0) +if (lean_obj_tag(x_2) == 0) { -lean_object* x_83; lean_object* x_84; size_t x_85; uint8_t x_86; -x_83 = lean_unsigned_to_nat(0u); -x_84 = l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_addSimpTheoremEntry___spec__8(x_1, x_83, x_4, x_5); -x_85 = 7; -x_86 = lean_usize_dec_le(x_85, x_3); -if (x_86 == 0) +uint8_t x_85; +x_85 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_85 == 0) { -lean_object* x_87; lean_object* x_88; uint8_t x_89; -x_87 = l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(x_84); -x_88 = lean_unsigned_to_nat(4u); -x_89 = lean_nat_dec_lt(x_87, x_88); +lean_object* x_86; lean_object* x_87; uint8_t x_88; +x_86 = l_Lean_Meta_Origin_key(x_13); +lean_dec(x_13); +x_87 = l_Lean_Meta_Origin_key(x_2); +x_88 = lean_name_eq(x_86, x_87); lean_dec(x_87); +lean_dec(x_86); +x_7 = x_88; +goto block_12; +} +else +{ +uint8_t x_89; +x_89 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); if (x_89 == 0) { -lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; -x_90 = lean_ctor_get(x_84, 0); -lean_inc(x_90); -x_91 = lean_ctor_get(x_84, 1); -lean_inc(x_91); -lean_dec(x_84); -x_92 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__3; -x_93 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry___spec__7(x_3, x_90, x_91, lean_box(0), x_83, x_92); -lean_dec(x_91); -lean_dec(x_90); -return x_93; +uint8_t x_90; +lean_dec(x_13); +x_90 = 0; +x_7 = x_90; +goto block_12; } else { -return x_84; +lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; uint8_t x_95; +x_91 = lean_ctor_get(x_2, 0); +lean_inc(x_91); +x_92 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_92, 0, x_91); +lean_ctor_set_uint8(x_92, sizeof(void*)*1, x_89); +lean_ctor_set_uint8(x_92, sizeof(void*)*1 + 1, x_89); +x_93 = l_Lean_Meta_Origin_key(x_13); +lean_dec(x_13); +x_94 = l_Lean_Meta_Origin_key(x_92); +lean_dec(x_92); +x_95 = lean_name_eq(x_93, x_94); +lean_dec(x_94); +lean_dec(x_93); +x_7 = x_95; +goto block_12; +} } } else { -return x_84; +lean_object* x_96; lean_object* x_97; uint8_t x_98; +x_96 = l_Lean_Meta_Origin_key(x_13); +lean_dec(x_13); +x_97 = l_Lean_Meta_Origin_key(x_2); +x_98 = lean_name_eq(x_96, x_97); +lean_dec(x_97); +lean_dec(x_96); +x_7 = x_98; +goto block_12; } } -else -{ -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; size_t x_99; uint8_t x_100; -x_94 = lean_ctor_get(x_1, 0); -x_95 = lean_ctor_get(x_1, 1); -lean_inc(x_95); -lean_inc(x_94); -lean_dec(x_1); -x_96 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_96, 0, x_94); -lean_ctor_set(x_96, 1, x_95); -x_97 = lean_unsigned_to_nat(0u); -x_98 = l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_addSimpTheoremEntry___spec__8(x_96, x_97, x_4, x_5); -x_99 = 7; -x_100 = lean_usize_dec_le(x_99, x_3); -if (x_100 == 0) -{ -lean_object* x_101; lean_object* x_102; uint8_t x_103; -x_101 = l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(x_98); -x_102 = lean_unsigned_to_nat(4u); -x_103 = lean_nat_dec_lt(x_101, x_102); -lean_dec(x_101); -if (x_103 == 0) +block_12: { -lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; -x_104 = lean_ctor_get(x_98, 0); -lean_inc(x_104); -x_105 = lean_ctor_get(x_98, 1); -lean_inc(x_105); -lean_dec(x_98); -x_106 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__3; -x_107 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry___spec__7(x_3, x_104, x_105, lean_box(0), x_97, x_106); -lean_dec(x_105); -lean_dec(x_104); -return x_107; -} -else +if (x_7 == 0) { -return x_98; -} +lean_object* x_8; lean_object* x_9; +x_8 = lean_unsigned_to_nat(1u); +x_9 = lean_nat_add(x_3, x_8); +lean_dec(x_3); +x_3 = x_9; +goto _start; } else { -return x_98; +lean_object* x_11; +x_11 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_11, 0, x_3); +return x_11; } } } } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +static size_t _init_l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__1() { _start: { -uint8_t x_4; -x_4 = !lean_is_exclusive(x_1); -if (x_4 == 0) -{ -lean_object* x_5; lean_object* x_6; uint64_t x_7; size_t x_8; size_t x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_5 = lean_ctor_get(x_1, 0); -x_6 = lean_ctor_get(x_1, 1); -x_7 = l_Lean_Meta_DiscrTree_Key_hash(x_2); -x_8 = lean_uint64_to_usize(x_7); -x_9 = 1; -x_10 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_5, x_8, x_9, x_2, x_3); -x_11 = lean_unsigned_to_nat(1u); -x_12 = lean_nat_add(x_6, x_11); -lean_dec(x_6); -lean_ctor_set(x_1, 1, x_12); -lean_ctor_set(x_1, 0, x_10); -return x_1; +size_t x_1; size_t x_2; size_t x_3; +x_1 = 1; +x_2 = 5; +x_3 = lean_usize_shift_left(x_1, x_2); +return x_3; } -else -{ -lean_object* x_13; lean_object* x_14; uint64_t x_15; size_t x_16; size_t x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -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 = l_Lean_Meta_DiscrTree_Key_hash(x_2); -x_16 = lean_uint64_to_usize(x_15); -x_17 = 1; -x_18 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_13, x_16, x_17, x_2, x_3); -x_19 = lean_unsigned_to_nat(1u); -x_20 = lean_nat_add(x_14, x_19); -lean_dec(x_14); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_18); -lean_ctor_set(x_21, 1, x_20); -return x_21; } +static size_t _init_l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__2() { +_start: +{ +size_t x_1; size_t x_2; size_t x_3; +x_1 = 1; +x_2 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__1; +x_3 = lean_usize_sub(x_2, x_1); +return x_3; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertVal_loop___at_Lean_Meta_addSimpTheoremEntry___spec__10(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2(lean_object* x_1, size_t x_2, lean_object* x_3) { _start: { -lean_object* x_4; uint8_t x_5; -x_4 = lean_array_get_size(x_1); -x_5 = lean_nat_dec_lt(x_3, x_4); -lean_dec(x_4); -if (x_5 == 0) +if (lean_obj_tag(x_1) == 0) { -lean_object* x_6; +lean_object* x_4; size_t x_5; size_t x_6; size_t x_7; lean_object* x_8; uint8_t x_9; lean_object* x_27; lean_object* x_28; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = 5; +x_6 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__2; +x_7 = lean_usize_land(x_2, x_6); +x_8 = lean_usize_to_nat(x_7); +x_27 = lean_box(2); +x_28 = lean_array_get(x_27, x_4, x_8); +switch (lean_obj_tag(x_28)) { +case 0: +{ +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_29; +x_29 = lean_ctor_get_uint8(x_3, sizeof(void*)*1); +if (x_29 == 0) +{ +lean_object* x_30; +x_30 = lean_ctor_get(x_28, 0); +lean_inc(x_30); +lean_dec(x_28); +if (lean_obj_tag(x_30) == 0) +{ +uint8_t x_31; +x_31 = lean_ctor_get_uint8(x_30, sizeof(void*)*1); +if (x_31 == 0) +{ +lean_object* x_32; uint8_t x_33; lean_object* x_34; uint8_t x_35; uint8_t x_36; +x_32 = lean_ctor_get(x_3, 0); +lean_inc(x_32); +x_33 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); lean_dec(x_3); -x_6 = lean_array_push(x_1, x_2); -return x_6; +x_34 = lean_ctor_get(x_30, 0); +lean_inc(x_34); +x_35 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +lean_dec(x_30); +x_36 = lean_name_eq(x_32, x_34); +lean_dec(x_34); +lean_dec(x_32); +if (x_36 == 0) +{ +uint8_t x_37; +x_37 = 0; +x_9 = x_37; +goto block_26; } else { -lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; -x_7 = lean_array_fget(x_1, x_3); -x_8 = lean_ctor_get(x_2, 2); -lean_inc(x_8); -x_9 = lean_ctor_get(x_7, 2); -lean_inc(x_9); -lean_dec(x_7); -x_10 = lean_expr_eqv(x_8, x_9); -lean_dec(x_9); -lean_dec(x_8); -if (x_10 == 0) +if (x_33 == 0) { -lean_object* x_11; lean_object* x_12; -x_11 = lean_unsigned_to_nat(1u); -x_12 = lean_nat_add(x_3, x_11); -lean_dec(x_3); -x_3 = x_12; -goto _start; +if (x_35 == 0) +{ +uint8_t x_38; +x_38 = 1; +x_9 = x_38; +goto block_26; } else { -lean_object* x_14; -x_14 = lean_array_fset(x_1, x_3, x_2); -lean_dec(x_3); -return x_14; -} +uint8_t x_39; +x_39 = 0; +x_9 = x_39; +goto block_26; } } +else +{ +if (x_35 == 0) +{ +uint8_t x_40; +x_40 = 0; +x_9 = x_40; +goto block_26; } -LEAN_EXPORT lean_object* l___private_Init_Data_Array_BinSearch_0__Array_binInsertAux___at_Lean_Meta_addSimpTheoremEntry___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) { -_start: +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; uint8_t x_15; -x_9 = lean_nat_add(x_7, x_8); -x_10 = lean_unsigned_to_nat(2u); -x_11 = lean_nat_div(x_9, x_10); -lean_dec(x_9); -lean_inc(x_6); -x_12 = lean_array_get(x_6, x_5, x_11); -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -lean_dec(x_12); -x_14 = lean_ctor_get(x_6, 0); -lean_inc(x_14); -x_15 = l_Lean_Meta_DiscrTree_Key_lt(x_13, x_14); -if (x_15 == 0) +uint8_t x_41; +x_41 = 1; +x_9 = x_41; +goto block_26; +} +} +} +} +else { -uint8_t x_16; -lean_dec(x_8); -x_16 = l_Lean_Meta_DiscrTree_Key_lt(x_14, x_13); -lean_dec(x_13); -lean_dec(x_14); -if (x_16 == 0) +uint8_t x_42; +x_42 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +if (x_42 == 0) { -lean_object* x_17; uint8_t x_18; -lean_dec(x_7); -lean_dec(x_6); -x_17 = lean_array_get_size(x_5); -x_18 = lean_nat_dec_lt(x_11, x_17); -lean_dec(x_17); -if (x_18 == 0) +lean_object* x_43; uint8_t x_44; lean_object* x_45; uint8_t x_46; +x_43 = lean_ctor_get(x_3, 0); +lean_inc(x_43); +x_44 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +lean_dec(x_3); +x_45 = lean_ctor_get(x_30, 0); +lean_inc(x_45); +lean_dec(x_30); +x_46 = lean_name_eq(x_43, x_45); +lean_dec(x_45); +lean_dec(x_43); +if (x_46 == 0) { -lean_dec(x_11); -lean_dec(x_4); -lean_dec(x_2); -return x_5; +uint8_t x_47; +x_47 = 0; +x_9 = x_47; +goto block_26; } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_19 = lean_array_fget(x_5, x_11); -x_20 = lean_box(0); -x_21 = lean_array_fset(x_5, x_11, x_20); -x_22 = !lean_is_exclusive(x_19); -if (x_22 == 0) +if (x_44 == 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_19, 1); -x_24 = lean_ctor_get(x_19, 0); -lean_dec(x_24); -x_25 = lean_unsigned_to_nat(1u); -x_26 = lean_nat_add(x_3, x_25); -x_27 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_26, x_23); -lean_dec(x_26); -lean_ctor_set(x_19, 1, x_27); -lean_ctor_set(x_19, 0, x_4); -x_28 = lean_array_fset(x_21, x_11, x_19); -lean_dec(x_11); -return x_28; +uint8_t x_48; +x_48 = 1; +x_9 = x_48; +goto block_26; } 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_19, 1); -lean_inc(x_29); -lean_dec(x_19); -x_30 = lean_unsigned_to_nat(1u); -x_31 = lean_nat_add(x_3, x_30); -x_32 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_31, x_29); -lean_dec(x_31); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_4); -lean_ctor_set(x_33, 1, x_32); -x_34 = lean_array_fset(x_21, x_11, x_33); -lean_dec(x_11); -return x_34; +uint8_t x_49; +x_49 = 0; +x_9 = x_49; +goto block_26; } } } else { -x_8 = x_11; -goto _start; -} +lean_object* x_50; uint8_t x_51; lean_object* x_52; uint8_t x_53; +x_50 = lean_ctor_get(x_3, 0); +lean_inc(x_50); +x_51 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +lean_dec(x_3); +x_52 = lean_ctor_get(x_30, 0); +lean_inc(x_52); +lean_dec(x_30); +x_53 = lean_name_eq(x_50, x_52); +lean_dec(x_52); +lean_dec(x_50); +if (x_53 == 0) +{ +uint8_t x_54; +x_54 = 0; +x_9 = x_54; +goto block_26; } else { -uint8_t x_36; -lean_dec(x_14); -lean_dec(x_13); -x_36 = lean_nat_dec_eq(x_11, x_7); -if (x_36 == 0) +if (x_51 == 0) { -lean_dec(x_7); -x_7 = x_11; -goto _start; +uint8_t x_55; +x_55 = 0; +x_9 = x_55; +goto block_26; } 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_dec(x_11); -lean_dec(x_8); -lean_dec(x_6); -x_38 = lean_unsigned_to_nat(1u); -x_39 = lean_nat_add(x_3, x_38); -x_40 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(x_1, x_2, x_39); -lean_dec(x_39); -x_41 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_41, 0, x_4); -lean_ctor_set(x_41, 1, x_40); -x_42 = lean_nat_add(x_7, x_38); -lean_dec(x_7); -x_43 = l_Array_insertAt_x21___rarg(x_5, x_42, x_41); -lean_dec(x_42); -return x_43; +uint8_t x_56; +x_56 = 1; +x_9 = x_56; +goto block_26; } } } } -LEAN_EXPORT lean_object* l_Array_binInsertM___at_Lean_Meta_addSimpTheoremEntry___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) { -_start: +} +else { -uint8_t x_7; -x_7 = l_Array_isEmpty___rarg(x_5); -if (x_7 == 0) +lean_object* x_57; lean_object* x_58; uint8_t x_59; +x_57 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_58 = l_Lean_Meta_Origin_key(x_30); +lean_dec(x_30); +x_59 = lean_name_eq(x_57, x_58); +lean_dec(x_58); +lean_dec(x_57); +x_9 = x_59; +goto block_26; +} +} +else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_8 = lean_unsigned_to_nat(0u); -lean_inc(x_6); -x_9 = lean_array_get(x_6, x_5, x_8); -x_10 = lean_ctor_get(x_6, 0); -lean_inc(x_10); -x_11 = lean_ctor_get(x_9, 0); -lean_inc(x_11); -lean_dec(x_9); -x_12 = l_Lean_Meta_DiscrTree_Key_lt(x_10, x_11); -if (x_12 == 0) +uint8_t x_60; +x_60 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +if (x_60 == 0) { -uint8_t x_13; -x_13 = l_Lean_Meta_DiscrTree_Key_lt(x_11, x_10); -lean_dec(x_11); -if (x_13 == 0) +lean_object* x_61; +x_61 = lean_ctor_get(x_28, 0); +lean_inc(x_61); +lean_dec(x_28); +if (lean_obj_tag(x_61) == 0) { -lean_object* x_14; uint8_t x_15; -lean_dec(x_10); -lean_dec(x_6); -x_14 = lean_array_get_size(x_5); -x_15 = lean_nat_dec_lt(x_8, x_14); -lean_dec(x_14); -if (x_15 == 0) +uint8_t x_62; +x_62 = lean_ctor_get_uint8(x_61, sizeof(void*)*1); +if (x_62 == 0) { -lean_dec(x_4); -lean_dec(x_2); -return x_5; +lean_object* x_63; lean_object* x_64; uint8_t x_65; uint8_t x_66; +x_63 = lean_ctor_get(x_3, 0); +lean_inc(x_63); +lean_dec(x_3); +x_64 = lean_ctor_get(x_61, 0); +lean_inc(x_64); +x_65 = lean_ctor_get_uint8(x_61, sizeof(void*)*1 + 1); +lean_dec(x_61); +x_66 = lean_name_eq(x_63, x_64); +lean_dec(x_64); +lean_dec(x_63); +if (x_66 == 0) +{ +uint8_t x_67; +x_67 = 0; +x_9 = x_67; +goto block_26; } else { -lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_16 = lean_array_fget(x_5, x_8); -x_17 = lean_box(0); -x_18 = lean_array_fset(x_5, x_8, x_17); -x_19 = !lean_is_exclusive(x_16); -if (x_19 == 0) +if (x_65 == 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; -x_20 = lean_ctor_get(x_16, 1); -x_21 = lean_ctor_get(x_16, 0); -lean_dec(x_21); -x_22 = lean_unsigned_to_nat(1u); -x_23 = lean_nat_add(x_3, x_22); -x_24 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_23, x_20); -lean_dec(x_23); -lean_ctor_set(x_16, 1, x_24); -lean_ctor_set(x_16, 0, x_4); -x_25 = lean_array_fset(x_18, x_8, x_16); -return x_25; +uint8_t x_68; +x_68 = 1; +x_9 = x_68; +goto block_26; } 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_16, 1); -lean_inc(x_26); -lean_dec(x_16); -x_27 = lean_unsigned_to_nat(1u); -x_28 = lean_nat_add(x_3, x_27); -x_29 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_28, x_26); -lean_dec(x_28); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_4); -lean_ctor_set(x_30, 1, x_29); -x_31 = lean_array_fset(x_18, x_8, x_30); -return x_31; +uint8_t x_69; +x_69 = 0; +x_9 = x_69; +goto block_26; } } } else { -lean_object* x_32; lean_object* x_33; uint8_t x_34; -lean_inc(x_6); -x_32 = l_Array_back___rarg(x_6, x_5); -x_33 = lean_ctor_get(x_32, 0); -lean_inc(x_33); -lean_dec(x_32); -x_34 = l_Lean_Meta_DiscrTree_Key_lt(x_33, x_10); -if (x_34 == 0) -{ -uint8_t x_35; -x_35 = l_Lean_Meta_DiscrTree_Key_lt(x_10, x_33); -lean_dec(x_33); -lean_dec(x_10); -if (x_35 == 0) +uint8_t x_70; +x_70 = lean_ctor_get_uint8(x_61, sizeof(void*)*1 + 1); +if (x_70 == 0) { -lean_object* x_36; lean_object* x_37; lean_object* x_38; uint8_t x_39; -lean_dec(x_6); -x_36 = lean_array_get_size(x_5); -x_37 = lean_unsigned_to_nat(1u); -x_38 = lean_nat_sub(x_36, x_37); -x_39 = lean_nat_dec_lt(x_38, x_36); -lean_dec(x_36); -if (x_39 == 0) +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_3, 0); +lean_inc(x_71); +lean_dec(x_3); +x_72 = lean_ctor_get(x_61, 0); +lean_inc(x_72); +lean_dec(x_61); +x_73 = lean_name_eq(x_71, x_72); +lean_dec(x_72); +lean_dec(x_71); +if (x_73 == 0) { -lean_dec(x_38); -lean_dec(x_4); -lean_dec(x_2); -return x_5; +uint8_t x_74; +x_74 = 0; +x_9 = x_74; +goto block_26; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_40 = lean_array_fget(x_5, x_38); -x_41 = lean_box(0); -x_42 = lean_array_fset(x_5, x_38, x_41); -x_43 = !lean_is_exclusive(x_40); -if (x_43 == 0) -{ -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_40, 1); -x_45 = lean_ctor_get(x_40, 0); -lean_dec(x_45); -x_46 = lean_nat_add(x_3, x_37); -x_47 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_46, x_44); -lean_dec(x_46); -lean_ctor_set(x_40, 1, x_47); -lean_ctor_set(x_40, 0, x_4); -x_48 = lean_array_fset(x_42, x_38, x_40); -lean_dec(x_38); -return x_48; +uint8_t x_75; +x_75 = 1; +x_9 = x_75; +goto block_26; +} } 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_40, 1); -lean_inc(x_49); -lean_dec(x_40); -x_50 = lean_nat_add(x_3, x_37); -x_51 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_50, x_49); -lean_dec(x_50); -x_52 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_52, 0, x_4); -lean_ctor_set(x_52, 1, x_51); -x_53 = lean_array_fset(x_42, x_38, x_52); -lean_dec(x_38); -return x_53; +uint8_t x_76; +lean_dec(x_61); +lean_dec(x_3); +x_76 = 0; +x_9 = x_76; +goto block_26; } } } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_54 = lean_array_get_size(x_5); -x_55 = lean_unsigned_to_nat(1u); -x_56 = lean_nat_sub(x_54, x_55); -lean_dec(x_54); -x_57 = l___private_Init_Data_Array_BinSearch_0__Array_binInsertAux___at_Lean_Meta_addSimpTheoremEntry___spec__12(x_1, x_2, x_3, x_4, x_5, x_6, x_8, x_56); -return x_57; +uint8_t x_77; +lean_dec(x_61); +lean_dec(x_3); +x_77 = 0; +x_9 = x_77; +goto block_26; } } else { -lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -lean_dec(x_33); -lean_dec(x_10); -lean_dec(x_6); -x_58 = lean_unsigned_to_nat(1u); -x_59 = lean_nat_add(x_3, x_58); -x_60 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(x_1, x_2, x_59); -lean_dec(x_59); -x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_4); -lean_ctor_set(x_61, 1, x_60); -x_62 = lean_array_push(x_5, x_61); -return x_62; -} -} +lean_object* x_78; +x_78 = lean_ctor_get(x_28, 0); +lean_inc(x_78); +lean_dec(x_28); +if (lean_obj_tag(x_78) == 0) +{ +uint8_t x_79; +x_79 = lean_ctor_get_uint8(x_78, sizeof(void*)*1); +if (x_79 == 0) +{ +lean_object* x_80; lean_object* x_81; uint8_t x_82; uint8_t x_83; +x_80 = lean_ctor_get(x_3, 0); +lean_inc(x_80); +lean_dec(x_3); +x_81 = lean_ctor_get(x_78, 0); +lean_inc(x_81); +x_82 = lean_ctor_get_uint8(x_78, sizeof(void*)*1 + 1); +lean_dec(x_78); +x_83 = lean_name_eq(x_80, x_81); +lean_dec(x_81); +lean_dec(x_80); +if (x_83 == 0) +{ +uint8_t x_84; +x_84 = 0; +x_9 = x_84; +goto block_26; } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_6); -x_63 = lean_unsigned_to_nat(1u); -x_64 = lean_nat_add(x_3, x_63); -x_65 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(x_1, x_2, x_64); -lean_dec(x_64); -x_66 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_66, 0, x_4); -lean_ctor_set(x_66, 1, x_65); -x_67 = l_Array_insertAt_x21___rarg(x_5, x_8, x_66); -return x_67; -} +if (x_82 == 0) +{ +uint8_t x_85; +x_85 = 0; +x_9 = x_85; +goto block_26; } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -lean_dec(x_6); -x_68 = lean_unsigned_to_nat(1u); -x_69 = lean_nat_add(x_3, x_68); -x_70 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(x_1, x_2, x_69); -lean_dec(x_69); -x_71 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_71, 0, x_4); -lean_ctor_set(x_71, 1, x_70); -x_72 = lean_array_push(x_5, x_71); -return x_72; +uint8_t x_86; +x_86 = 1; +x_9 = x_86; +goto block_26; } } } -static lean_object* _init_l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___closed__1() { -_start: +else { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -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; +uint8_t x_87; +x_87 = lean_ctor_get_uint8(x_78, sizeof(void*)*1 + 1); +if (x_87 == 0) +{ +uint8_t x_88; +lean_dec(x_78); +lean_dec(x_3); +x_88 = 0; +x_9 = x_88; +goto block_26; } +else +{ +lean_object* x_89; lean_object* x_90; uint8_t x_91; +x_89 = lean_ctor_get(x_3, 0); +lean_inc(x_89); +lean_dec(x_3); +x_90 = lean_ctor_get(x_78, 0); +lean_inc(x_90); +lean_dec(x_78); +x_91 = lean_name_eq(x_89, x_90); +lean_dec(x_90); +lean_dec(x_89); +if (x_91 == 0) +{ +uint8_t x_92; +x_92 = 0; +x_9 = x_92; +goto block_26; } -LEAN_EXPORT lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: +else { -uint8_t x_5; -x_5 = !lean_is_exclusive(x_4); -if (x_5 == 0) +uint8_t x_93; +x_93 = 1; +x_9 = x_93; +goto block_26; +} +} +} +} +else { -lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; -x_6 = lean_ctor_get(x_4, 0); -x_7 = lean_ctor_get(x_4, 1); -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) +uint8_t x_94; +x_94 = !lean_is_exclusive(x_3); +if (x_94 == 0) { -lean_object* x_10; lean_object* x_11; -x_10 = lean_unsigned_to_nat(0u); -x_11 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertVal_loop___at_Lean_Meta_addSimpTheoremEntry___spec__10(x_6, x_2, x_10); -lean_ctor_set(x_4, 0, x_11); -return x_4; +lean_object* x_95; lean_object* x_96; uint8_t x_97; +lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_60); +x_95 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_96 = l_Lean_Meta_Origin_key(x_78); +lean_dec(x_78); +x_97 = lean_name_eq(x_95, x_96); +lean_dec(x_96); +lean_dec(x_95); +x_9 = x_97; +goto block_26; } else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_array_fget(x_1, x_3); -x_13 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___closed__1; -lean_inc(x_12); -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_12); -lean_ctor_set(x_14, 1, x_13); -x_15 = l_Array_binInsertM___at_Lean_Meta_addSimpTheoremEntry___spec__11(x_1, x_2, x_3, x_12, x_7, x_14); -lean_ctor_set(x_4, 1, x_15); -return x_4; +lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; uint8_t x_102; +x_98 = lean_ctor_get(x_3, 0); +lean_inc(x_98); +lean_dec(x_3); +x_99 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_99, 0, x_98); +lean_ctor_set_uint8(x_99, sizeof(void*)*1, x_60); +lean_ctor_set_uint8(x_99, sizeof(void*)*1 + 1, x_60); +x_100 = l_Lean_Meta_Origin_key(x_99); +lean_dec(x_99); +x_101 = l_Lean_Meta_Origin_key(x_78); +lean_dec(x_78); +x_102 = lean_name_eq(x_100, x_101); +lean_dec(x_101); +lean_dec(x_100); +x_9 = x_102; +goto block_26; +} +} +} } } else { -lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_16 = lean_ctor_get(x_4, 0); -x_17 = lean_ctor_get(x_4, 1); -lean_inc(x_17); -lean_inc(x_16); -lean_dec(x_4); -x_18 = lean_array_get_size(x_1); -x_19 = lean_nat_dec_lt(x_3, x_18); -lean_dec(x_18); -if (x_19 == 0) +lean_object* x_103; +x_103 = lean_ctor_get(x_28, 0); +lean_inc(x_103); +lean_dec(x_28); +if (lean_obj_tag(x_103) == 0) { -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = lean_unsigned_to_nat(0u); -x_21 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertVal_loop___at_Lean_Meta_addSimpTheoremEntry___spec__10(x_16, x_2, 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; +uint8_t x_104; +x_104 = lean_ctor_get_uint8(x_103, sizeof(void*)*1); +if (x_104 == 0) +{ +lean_object* x_105; lean_object* x_106; uint8_t x_107; +x_105 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_106 = l_Lean_Meta_Origin_key(x_103); +lean_dec(x_103); +x_107 = lean_name_eq(x_105, x_106); +lean_dec(x_106); +lean_dec(x_105); +x_9 = x_107; +goto block_26; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_23 = lean_array_fget(x_1, x_3); -x_24 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___closed__1; -lean_inc(x_23); -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_Array_binInsertM___at_Lean_Meta_addSimpTheoremEntry___spec__11(x_1, x_2, x_3, x_23, x_17, x_25); -x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_16); -lean_ctor_set(x_27, 1, x_26); -return x_27; -} -} -} -} -static lean_object* _init_l_panic___at_Lean_Meta_addSimpTheoremEntry___spec__13___closed__1() { -_start: +uint8_t x_108; +x_108 = lean_ctor_get_uint8(x_103, sizeof(void*)*1 + 1); +if (x_108 == 0) { -lean_object* x_1; -x_1 = l_Lean_Meta_DiscrTree_instInhabited(lean_box(0)); -return x_1; -} +uint8_t x_109; +lean_dec(x_103); +lean_dec(x_3); +x_109 = 0; +x_9 = x_109; +goto block_26; } -LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_addSimpTheoremEntry___spec__13(lean_object* x_1) { -_start: +else { -lean_object* x_2; lean_object* x_3; -x_2 = l_panic___at_Lean_Meta_addSimpTheoremEntry___spec__13___closed__1; -x_3 = lean_panic_fn(x_2, x_1); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__1() { -_start: +uint8_t x_110; +x_110 = !lean_is_exclusive(x_103); +if (x_110 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Lean.Meta.DiscrTree", 19); -return x_1; -} +lean_object* x_111; lean_object* x_112; uint8_t x_113; +lean_ctor_set_uint8(x_103, sizeof(void*)*1, x_108); +x_111 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_112 = l_Lean_Meta_Origin_key(x_103); +lean_dec(x_103); +x_113 = lean_name_eq(x_111, x_112); +lean_dec(x_112); +lean_dec(x_111); +x_9 = x_113; +goto block_26; } -static lean_object* _init_l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__2() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Lean.Meta.DiscrTree.insertCore", 30); -return x_1; +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; uint8_t x_118; +x_114 = lean_ctor_get(x_103, 0); +lean_inc(x_114); +lean_dec(x_103); +x_115 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_115, 0, x_114); +lean_ctor_set_uint8(x_115, sizeof(void*)*1, x_108); +lean_ctor_set_uint8(x_115, sizeof(void*)*1 + 1, x_108); +x_116 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_117 = l_Lean_Meta_Origin_key(x_115); +lean_dec(x_115); +x_118 = lean_name_eq(x_116, x_117); +lean_dec(x_117); +lean_dec(x_116); +x_9 = x_118; +goto block_26; } } -static lean_object* _init_l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("invalid key sequence", 20); -return x_1; } } -static lean_object* _init_l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__4() { -_start: +else { -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_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__1; -x_2 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__2; -x_3 = lean_unsigned_to_nat(488u); -x_4 = lean_unsigned_to_nat(23u); -x_5 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__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_119; lean_object* x_120; uint8_t x_121; +x_119 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_120 = l_Lean_Meta_Origin_key(x_103); +lean_dec(x_103); +x_121 = lean_name_eq(x_119, x_120); +lean_dec(x_120); +lean_dec(x_119); +x_9 = x_121; +goto block_26; } } -LEAN_EXPORT lean_object* l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: +} +case 1: { -uint8_t x_4; -x_4 = l_Array_isEmpty___rarg(x_2); -if (x_4 == 0) +uint8_t x_122; +x_122 = !lean_is_exclusive(x_28); +if (x_122 == 0) { -lean_object* x_5; lean_object* x_6; uint8_t x_7; -x_5 = lean_array_get_size(x_2); -x_6 = lean_unsigned_to_nat(0u); -x_7 = lean_nat_dec_lt(x_6, x_5); -lean_dec(x_5); -if (x_7 == 0) +lean_object* x_123; lean_object* x_124; size_t x_125; lean_object* x_126; lean_object* x_127; uint8_t x_128; +x_123 = lean_ctor_get(x_28, 0); +x_124 = lean_array_set(x_4, x_8, x_27); +x_125 = lean_usize_shift_right(x_2, x_5); +x_126 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2(x_123, x_125, x_3); +x_127 = lean_ctor_get(x_126, 1); +lean_inc(x_127); +x_128 = lean_unbox(x_127); +lean_dec(x_127); +if (x_128 == 0) { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = l_Lean_Meta_DiscrTree_instInhabitedKey; -x_9 = l___private_Init_GetElem_0__outOfBounds___rarg(x_8); -lean_inc(x_9); -lean_inc(x_1); -x_10 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_addSimpTheoremEntry___spec__2(x_1, x_9); -if (lean_obj_tag(x_10) == 0) +uint8_t x_129; +lean_dec(x_124); +lean_free_object(x_28); +lean_dec(x_8); +x_129 = !lean_is_exclusive(x_126); +if (x_129 == 0) { -lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_11 = lean_unsigned_to_nat(1u); -x_12 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(x_2, x_3, x_11); -lean_dec(x_2); -x_13 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry___spec__5(x_1, x_9, x_12); -return x_13; +lean_object* x_130; lean_object* x_131; uint8_t x_132; lean_object* x_133; +x_130 = lean_ctor_get(x_126, 1); +lean_dec(x_130); +x_131 = lean_ctor_get(x_126, 0); +lean_dec(x_131); +x_132 = 0; +x_133 = lean_box(x_132); +lean_ctor_set(x_126, 1, x_133); +lean_ctor_set(x_126, 0, x_1); +return x_126; } 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); -lean_inc(x_14); -lean_dec(x_10); -x_15 = lean_unsigned_to_nat(1u); -x_16 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_2, x_3, x_15, x_14); -lean_dec(x_2); -x_17 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry___spec__5(x_1, x_9, x_16); -return x_17; +uint8_t x_134; lean_object* x_135; lean_object* x_136; +lean_dec(x_126); +x_134 = 0; +x_135 = lean_box(x_134); +x_136 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_136, 0, x_1); +lean_ctor_set(x_136, 1, x_135); +return x_136; } } else { -lean_object* x_18; lean_object* x_19; -x_18 = lean_array_fget(x_2, x_6); -lean_inc(x_18); -lean_inc(x_1); -x_19 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_addSimpTheoremEntry___spec__2(x_1, x_18); -if (lean_obj_tag(x_19) == 0) +uint8_t x_137; +x_137 = !lean_is_exclusive(x_1); +if (x_137 == 0) { -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = lean_unsigned_to_nat(1u); -x_21 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(x_2, x_3, x_20); -lean_dec(x_2); -x_22 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry___spec__5(x_1, x_18, x_21); -return x_22; +lean_object* x_138; uint8_t x_139; +x_138 = lean_ctor_get(x_1, 0); +lean_dec(x_138); +x_139 = !lean_is_exclusive(x_126); +if (x_139 == 0) +{ +lean_object* x_140; lean_object* x_141; lean_object* x_142; +x_140 = lean_ctor_get(x_126, 0); +x_141 = lean_ctor_get(x_126, 1); +lean_dec(x_141); +lean_inc(x_140); +x_142 = l_Lean_PersistentHashMap_isUnaryNode___rarg(x_140); +if (lean_obj_tag(x_142) == 0) +{ +lean_object* x_143; uint8_t x_144; lean_object* x_145; +lean_ctor_set(x_28, 0, x_140); +x_143 = lean_array_set(x_124, x_8, x_28); +lean_dec(x_8); +lean_ctor_set(x_1, 0, x_143); +x_144 = 1; +x_145 = lean_box(x_144); +lean_ctor_set(x_126, 1, x_145); +lean_ctor_set(x_126, 0, x_1); +return x_126; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_23 = lean_ctor_get(x_19, 0); -lean_inc(x_23); -lean_dec(x_19); -x_24 = lean_unsigned_to_nat(1u); -x_25 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_2, x_3, x_24, x_23); -lean_dec(x_2); -x_26 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry___spec__5(x_1, x_18, x_25); -return x_26; -} -} +lean_object* x_146; uint8_t x_147; +lean_free_object(x_126); +lean_dec(x_140); +lean_free_object(x_28); +x_146 = lean_ctor_get(x_142, 0); +lean_inc(x_146); +lean_dec(x_142); +x_147 = !lean_is_exclusive(x_146); +if (x_147 == 0) +{ +lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; uint8_t x_152; lean_object* x_153; +x_148 = lean_ctor_get(x_146, 0); +x_149 = lean_ctor_get(x_146, 1); +x_150 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_150, 0, x_148); +lean_ctor_set(x_150, 1, x_149); +x_151 = lean_array_set(x_124, x_8, x_150); +lean_dec(x_8); +lean_ctor_set(x_1, 0, x_151); +x_152 = 1; +x_153 = lean_box(x_152); +lean_ctor_set(x_146, 1, x_153); +lean_ctor_set(x_146, 0, x_1); +return x_146; } else { -lean_object* x_27; lean_object* x_28; -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_27 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__4; -x_28 = l_panic___at_Lean_Meta_addSimpTheoremEntry___spec__13(x_27); -return x_28; +lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; uint8_t x_158; lean_object* x_159; lean_object* x_160; +x_154 = lean_ctor_get(x_146, 0); +x_155 = lean_ctor_get(x_146, 1); +lean_inc(x_155); +lean_inc(x_154); +lean_dec(x_146); +x_156 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_156, 0, x_154); +lean_ctor_set(x_156, 1, x_155); +x_157 = lean_array_set(x_124, x_8, x_156); +lean_dec(x_8); +lean_ctor_set(x_1, 0, x_157); +x_158 = 1; +x_159 = lean_box(x_158); +x_160 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_160, 0, x_1); +lean_ctor_set(x_160, 1, x_159); +return x_160; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_addSimpTheoremEntry(lean_object* x_1, lean_object* x_2) { -_start: -{ -uint8_t x_3; -x_3 = lean_ctor_get_uint8(x_2, sizeof(void*)*5); -if (x_3 == 0) +else { -uint8_t x_4; -x_4 = !lean_is_exclusive(x_1); -if (x_4 == 0) +lean_object* x_161; lean_object* x_162; +x_161 = lean_ctor_get(x_126, 0); +lean_inc(x_161); +lean_dec(x_126); +lean_inc(x_161); +x_162 = l_Lean_PersistentHashMap_isUnaryNode___rarg(x_161); +if (lean_obj_tag(x_162) == 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_1, 0); -x_6 = lean_ctor_get(x_1, 2); -x_7 = lean_ctor_get(x_2, 0); -lean_inc(x_7); -lean_inc(x_2); -x_8 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1(x_5, x_7, x_2); -x_9 = l_Lean_Meta_addSimpTheoremEntry_updateLemmaNames(x_2, x_6); -lean_ctor_set(x_1, 2, x_9); -lean_ctor_set(x_1, 0, x_8); -return x_1; +lean_object* x_163; uint8_t x_164; lean_object* x_165; lean_object* x_166; +lean_ctor_set(x_28, 0, x_161); +x_163 = lean_array_set(x_124, x_8, x_28); +lean_dec(x_8); +lean_ctor_set(x_1, 0, x_163); +x_164 = 1; +x_165 = lean_box(x_164); +x_166 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_166, 0, x_1); +lean_ctor_set(x_166, 1, x_165); +return x_166; } 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_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_10 = lean_ctor_get(x_1, 0); -x_11 = lean_ctor_get(x_1, 1); -x_12 = lean_ctor_get(x_1, 2); -x_13 = lean_ctor_get(x_1, 3); -x_14 = lean_ctor_get(x_1, 4); -x_15 = lean_ctor_get(x_1, 5); -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_dec(x_1); -x_16 = lean_ctor_get(x_2, 0); -lean_inc(x_16); -lean_inc(x_2); -x_17 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1(x_10, x_16, x_2); -x_18 = l_Lean_Meta_addSimpTheoremEntry_updateLemmaNames(x_2, x_12); -x_19 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_19, 0, x_17); -lean_ctor_set(x_19, 1, x_11); -lean_ctor_set(x_19, 2, x_18); -lean_ctor_set(x_19, 3, x_13); -lean_ctor_set(x_19, 4, x_14); -lean_ctor_set(x_19, 5, x_15); -return x_19; +lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; uint8_t x_173; lean_object* x_174; lean_object* x_175; +lean_dec(x_161); +lean_free_object(x_28); +x_167 = lean_ctor_get(x_162, 0); +lean_inc(x_167); +lean_dec(x_162); +x_168 = lean_ctor_get(x_167, 0); +lean_inc(x_168); +x_169 = lean_ctor_get(x_167, 1); +lean_inc(x_169); +if (lean_is_exclusive(x_167)) { + lean_ctor_release(x_167, 0); + lean_ctor_release(x_167, 1); + x_170 = x_167; +} else { + lean_dec_ref(x_167); + x_170 = lean_box(0); +} +x_171 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_171, 0, x_168); +lean_ctor_set(x_171, 1, x_169); +x_172 = lean_array_set(x_124, x_8, x_171); +lean_dec(x_8); +lean_ctor_set(x_1, 0, x_172); +x_173 = 1; +x_174 = lean_box(x_173); +if (lean_is_scalar(x_170)) { + x_175 = lean_alloc_ctor(0, 2, 0); +} else { + x_175 = x_170; +} +lean_ctor_set(x_175, 0, x_1); +lean_ctor_set(x_175, 1, x_174); +return x_175; +} } } else { -uint8_t x_20; -x_20 = !lean_is_exclusive(x_1); -if (x_20 == 0) +lean_object* x_176; lean_object* x_177; lean_object* x_178; +lean_dec(x_1); +x_176 = lean_ctor_get(x_126, 0); +lean_inc(x_176); +if (lean_is_exclusive(x_126)) { + lean_ctor_release(x_126, 0); + lean_ctor_release(x_126, 1); + x_177 = x_126; +} else { + lean_dec_ref(x_126); + x_177 = lean_box(0); +} +lean_inc(x_176); +x_178 = l_Lean_PersistentHashMap_isUnaryNode___rarg(x_176); +if (lean_obj_tag(x_178) == 0) { -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_1, 1); -x_22 = lean_ctor_get(x_1, 2); -x_23 = lean_ctor_get(x_2, 0); -lean_inc(x_23); -lean_inc(x_2); -x_24 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1(x_21, x_23, x_2); -x_25 = l_Lean_Meta_addSimpTheoremEntry_updateLemmaNames(x_2, x_22); -lean_ctor_set(x_1, 2, x_25); -lean_ctor_set(x_1, 1, x_24); -return x_1; +lean_object* x_179; lean_object* x_180; uint8_t x_181; lean_object* x_182; lean_object* x_183; +lean_ctor_set(x_28, 0, x_176); +x_179 = lean_array_set(x_124, x_8, x_28); +lean_dec(x_8); +x_180 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_180, 0, x_179); +x_181 = 1; +x_182 = lean_box(x_181); +if (lean_is_scalar(x_177)) { + x_183 = lean_alloc_ctor(0, 2, 0); +} else { + x_183 = x_177; +} +lean_ctor_set(x_183, 0, x_180); +lean_ctor_set(x_183, 1, x_182); +return x_183; } 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; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_26 = lean_ctor_get(x_1, 0); -x_27 = lean_ctor_get(x_1, 1); -x_28 = lean_ctor_get(x_1, 2); -x_29 = lean_ctor_get(x_1, 3); -x_30 = lean_ctor_get(x_1, 4); -x_31 = lean_ctor_get(x_1, 5); -lean_inc(x_31); -lean_inc(x_30); -lean_inc(x_29); -lean_inc(x_28); -lean_inc(x_27); -lean_inc(x_26); -lean_dec(x_1); -x_32 = lean_ctor_get(x_2, 0); -lean_inc(x_32); -lean_inc(x_2); -x_33 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1(x_27, x_32, x_2); -x_34 = l_Lean_Meta_addSimpTheoremEntry_updateLemmaNames(x_2, x_28); -x_35 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_35, 0, x_26); -lean_ctor_set(x_35, 1, x_33); -lean_ctor_set(x_35, 2, x_34); -lean_ctor_set(x_35, 3, x_29); -lean_ctor_set(x_35, 4, x_30); -lean_ctor_set(x_35, 5, x_31); -return x_35; +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; uint8_t x_191; lean_object* x_192; lean_object* x_193; +lean_dec(x_177); +lean_dec(x_176); +lean_free_object(x_28); +x_184 = lean_ctor_get(x_178, 0); +lean_inc(x_184); +lean_dec(x_178); +x_185 = lean_ctor_get(x_184, 0); +lean_inc(x_185); +x_186 = lean_ctor_get(x_184, 1); +lean_inc(x_186); +if (lean_is_exclusive(x_184)) { + lean_ctor_release(x_184, 0); + lean_ctor_release(x_184, 1); + x_187 = x_184; +} else { + lean_dec_ref(x_184); + x_187 = lean_box(0); } +x_188 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_188, 0, x_185); +lean_ctor_set(x_188, 1, x_186); +x_189 = lean_array_set(x_124, x_8, x_188); +lean_dec(x_8); +x_190 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_190, 0, x_189); +x_191 = 1; +x_192 = lean_box(x_191); +if (lean_is_scalar(x_187)) { + x_193 = lean_alloc_ctor(0, 2, 0); +} else { + x_193 = x_187; } +lean_ctor_set(x_193, 0, x_190); +lean_ctor_set(x_193, 1, x_192); +return x_193; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_addSimpTheoremEntry___spec__4___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_PersistentHashMap_findAtAux___at_Lean_Meta_addSimpTheoremEntry___spec__4(x_1, x_2, x_3, x_4, x_5); -lean_dec(x_5); -lean_dec(x_2); -lean_dec(x_1); -return x_6; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_addSimpTheoremEntry___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: +else { -size_t x_4; lean_object* x_5; -x_4 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_5 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_addSimpTheoremEntry___spec__3(x_1, x_4, x_3); -lean_dec(x_3); -return x_5; +lean_object* x_194; lean_object* x_195; size_t x_196; lean_object* x_197; lean_object* x_198; uint8_t x_199; +x_194 = lean_ctor_get(x_28, 0); +lean_inc(x_194); +lean_dec(x_28); +x_195 = lean_array_set(x_4, x_8, x_27); +x_196 = lean_usize_shift_right(x_2, x_5); +x_197 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2(x_194, x_196, x_3); +x_198 = lean_ctor_get(x_197, 1); +lean_inc(x_198); +x_199 = lean_unbox(x_198); +lean_dec(x_198); +if (x_199 == 0) +{ +lean_object* x_200; uint8_t x_201; lean_object* x_202; lean_object* x_203; +lean_dec(x_195); +lean_dec(x_8); +if (lean_is_exclusive(x_197)) { + lean_ctor_release(x_197, 0); + lean_ctor_release(x_197, 1); + x_200 = x_197; +} else { + lean_dec_ref(x_197); + x_200 = lean_box(0); +} +x_201 = 0; +x_202 = lean_box(x_201); +if (lean_is_scalar(x_200)) { + x_203 = lean_alloc_ctor(0, 2, 0); +} else { + x_203 = x_200; } +lean_ctor_set(x_203, 0, x_1); +lean_ctor_set(x_203, 1, x_202); +return x_203; } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry___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) { -_start: +else { -size_t x_7; lean_object* x_8; -x_7 = lean_unbox_usize(x_1); -lean_dec(x_1); -x_8 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry___spec__7(x_7, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_3); -lean_dec(x_2); -return x_8; +lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; +if (lean_is_exclusive(x_1)) { + lean_ctor_release(x_1, 0); + x_204 = x_1; +} else { + lean_dec_ref(x_1); + x_204 = lean_box(0); } +x_205 = lean_ctor_get(x_197, 0); +lean_inc(x_205); +if (lean_is_exclusive(x_197)) { + lean_ctor_release(x_197, 0); + lean_ctor_release(x_197, 1); + x_206 = x_197; +} else { + lean_dec_ref(x_197); + x_206 = lean_box(0); } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: +lean_inc(x_205); +x_207 = l_Lean_PersistentHashMap_isUnaryNode___rarg(x_205); +if (lean_obj_tag(x_207) == 0) { -size_t x_6; size_t x_7; lean_object* x_8; -x_6 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_7 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_8 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_1, x_6, x_7, x_4, x_5); -return x_8; +lean_object* x_208; lean_object* x_209; lean_object* x_210; uint8_t x_211; lean_object* x_212; lean_object* x_213; +x_208 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_208, 0, x_205); +x_209 = lean_array_set(x_195, x_8, x_208); +lean_dec(x_8); +if (lean_is_scalar(x_204)) { + x_210 = lean_alloc_ctor(0, 1, 0); +} else { + x_210 = x_204; +} +lean_ctor_set(x_210, 0, x_209); +x_211 = 1; +x_212 = lean_box(x_211); +if (lean_is_scalar(x_206)) { + x_213 = lean_alloc_ctor(0, 2, 0); +} else { + x_213 = x_206; } +lean_ctor_set(x_213, 0, x_210); +lean_ctor_set(x_213, 1, x_212); +return x_213; } -LEAN_EXPORT lean_object* l___private_Init_Data_Array_BinSearch_0__Array_binInsertAux___at_Lean_Meta_addSimpTheoremEntry___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) { -_start: +else { -lean_object* x_9; -x_9 = l___private_Init_Data_Array_BinSearch_0__Array_binInsertAux___at_Lean_Meta_addSimpTheoremEntry___spec__12(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_3); -lean_dec(x_1); -return x_9; +lean_object* x_214; lean_object* x_215; lean_object* x_216; lean_object* x_217; lean_object* x_218; lean_object* x_219; lean_object* x_220; uint8_t x_221; lean_object* x_222; lean_object* x_223; +lean_dec(x_206); +lean_dec(x_205); +x_214 = lean_ctor_get(x_207, 0); +lean_inc(x_214); +lean_dec(x_207); +x_215 = lean_ctor_get(x_214, 0); +lean_inc(x_215); +x_216 = lean_ctor_get(x_214, 1); +lean_inc(x_216); +if (lean_is_exclusive(x_214)) { + lean_ctor_release(x_214, 0); + lean_ctor_release(x_214, 1); + x_217 = x_214; +} else { + lean_dec_ref(x_214); + x_217 = lean_box(0); } +x_218 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_218, 0, x_215); +lean_ctor_set(x_218, 1, x_216); +x_219 = lean_array_set(x_195, x_8, x_218); +lean_dec(x_8); +if (lean_is_scalar(x_204)) { + x_220 = lean_alloc_ctor(0, 1, 0); +} else { + x_220 = x_204; } -LEAN_EXPORT lean_object* l_Array_binInsertM___at_Lean_Meta_addSimpTheoremEntry___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_Array_binInsertM___at_Lean_Meta_addSimpTheoremEntry___spec__11(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_3); -lean_dec(x_1); -return x_7; +lean_ctor_set(x_220, 0, x_219); +x_221 = 1; +x_222 = lean_box(x_221); +if (lean_is_scalar(x_217)) { + x_223 = lean_alloc_ctor(0, 2, 0); +} else { + x_223 = x_217; +} +lean_ctor_set(x_223, 0, x_220); +lean_ctor_set(x_223, 1, x_222); +return x_223; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: +} +} +default: { -lean_object* x_5; -x_5 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_3, x_4); +uint8_t x_224; lean_object* x_225; lean_object* x_226; +lean_dec(x_8); +lean_dec(x_4); lean_dec(x_3); -lean_dec(x_1); -return x_5; +x_224 = 0; +x_225 = lean_box(x_224); +x_226 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_226, 0, x_1); +lean_ctor_set(x_226, 1, x_225); +return x_226; } } -LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_addDeclToUnfoldCore(lean_object* x_1, lean_object* x_2) { -_start: +block_26: { -uint8_t x_3; -x_3 = !lean_is_exclusive(x_1); -if (x_3 == 0) +if (x_9 == 0) { -lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_4 = lean_ctor_get(x_1, 3); -x_5 = lean_box(0); -x_6 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_4, x_2, x_5); -lean_ctor_set(x_1, 3, x_6); -return x_1; +uint8_t x_10; lean_object* x_11; lean_object* x_12; +lean_dec(x_8); +lean_dec(x_4); +x_10 = 0; +x_11 = lean_box(x_10); +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; } else { -lean_object* x_7; lean_object* x_8; lean_object* x_9; 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_7 = lean_ctor_get(x_1, 0); -x_8 = lean_ctor_get(x_1, 1); -x_9 = lean_ctor_get(x_1, 2); -x_10 = lean_ctor_get(x_1, 3); -x_11 = lean_ctor_get(x_1, 4); -x_12 = lean_ctor_get(x_1, 5); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); +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; lean_object* x_18; lean_object* x_19; +x_14 = lean_ctor_get(x_1, 0); +lean_dec(x_14); +x_15 = lean_box(2); +x_16 = lean_array_set(x_4, x_8, x_15); +lean_dec(x_8); +lean_ctor_set(x_1, 0, x_16); +x_17 = 1; +x_18 = lean_box(x_17); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_1); +lean_ctor_set(x_19, 1, x_18); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_object* x_24; lean_object* x_25; lean_dec(x_1); -x_13 = lean_box(0); -x_14 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_10, x_2, x_13); -x_15 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_15, 0, x_7); -lean_ctor_set(x_15, 1, x_8); -lean_ctor_set(x_15, 2, x_9); -lean_ctor_set(x_15, 3, x_14); -lean_ctor_set(x_15, 4, x_11); -lean_ctor_set(x_15, 5, x_12); -return x_15; +x_20 = lean_box(2); +x_21 = lean_array_set(x_4, x_8, x_20); +lean_dec(x_8); +x_22 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_22, 0, x_21); +x_23 = 1; +x_24 = lean_box(x_23); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_22); +lean_ctor_set(x_25, 1, x_24); +return x_25; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_addLetDeclToUnfold(lean_object* x_1, lean_object* x_2) { -_start: -{ -uint8_t x_3; -x_3 = !lean_is_exclusive(x_1); -if (x_3 == 0) +} +else { -lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_4 = lean_ctor_get(x_1, 3); -x_5 = lean_box(0); -x_6 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_4, x_2, x_5); -lean_ctor_set(x_1, 3, x_6); -return x_1; +lean_object* x_227; lean_object* x_228; lean_object* x_229; lean_object* x_230; +x_227 = lean_ctor_get(x_1, 0); +lean_inc(x_227); +x_228 = lean_ctor_get(x_1, 1); +lean_inc(x_228); +x_229 = lean_unsigned_to_nat(0u); +x_230 = l_Array_indexOfAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__3(x_227, x_3, x_229); +lean_dec(x_3); +if (lean_obj_tag(x_230) == 0) +{ +uint8_t x_231; lean_object* x_232; lean_object* x_233; +lean_dec(x_228); +lean_dec(x_227); +x_231 = 0; +x_232 = lean_box(x_231); +x_233 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_233, 0, x_1); +lean_ctor_set(x_233, 1, x_232); +return x_233; +} +else +{ +uint8_t x_234; +x_234 = !lean_is_exclusive(x_1); +if (x_234 == 0) +{ +lean_object* x_235; lean_object* x_236; lean_object* x_237; lean_object* x_238; lean_object* x_239; uint8_t x_240; lean_object* x_241; lean_object* x_242; +x_235 = lean_ctor_get(x_1, 1); +lean_dec(x_235); +x_236 = lean_ctor_get(x_1, 0); +lean_dec(x_236); +x_237 = lean_ctor_get(x_230, 0); +lean_inc(x_237); +lean_dec(x_230); +lean_inc(x_237); +x_238 = l_Array_feraseIdx___rarg(x_227, x_237); +x_239 = l_Array_feraseIdx___rarg(x_228, x_237); +lean_ctor_set(x_1, 1, x_239); +lean_ctor_set(x_1, 0, x_238); +x_240 = 1; +x_241 = lean_box(x_240); +x_242 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_242, 0, x_1); +lean_ctor_set(x_242, 1, x_241); +return x_242; } else { -lean_object* x_7; lean_object* x_8; lean_object* x_9; 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_7 = lean_ctor_get(x_1, 0); -x_8 = lean_ctor_get(x_1, 1); -x_9 = lean_ctor_get(x_1, 2); -x_10 = lean_ctor_get(x_1, 3); -x_11 = lean_ctor_get(x_1, 4); -x_12 = lean_ctor_get(x_1, 5); -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_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_dec(x_1); -x_13 = lean_box(0); -x_14 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_10, x_2, x_13); -x_15 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_15, 0, x_7); -lean_ctor_set(x_15, 1, x_8); -lean_ctor_set(x_15, 2, x_9); -lean_ctor_set(x_15, 3, x_14); -lean_ctor_set(x_15, 4, x_11); -lean_ctor_set(x_15, 5, x_12); -return x_15; +x_243 = lean_ctor_get(x_230, 0); +lean_inc(x_243); +lean_dec(x_230); +lean_inc(x_243); +x_244 = l_Array_feraseIdx___rarg(x_227, x_243); +x_245 = l_Array_feraseIdx___rarg(x_228, x_243); +x_246 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_246, 0, x_244); +lean_ctor_set(x_246, 1, x_245); +x_247 = 1; +x_248 = lean_box(x_247); +x_249 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_249, 0, x_246); +lean_ctor_set(x_249, 1, x_248); +return x_249; } } } -LEAN_EXPORT uint8_t l_Lean_Meta_SimpTheorems_isDeclToUnfold(lean_object* x_1, lean_object* x_2) { +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_erase___at_Lean_Meta_SimpTheorems_eraseCore___spec__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; uint8_t x_4; -x_3 = lean_ctor_get(x_1, 3); +lean_object* x_3; lean_object* x_4; lean_object* x_5; uint64_t x_6; +x_3 = lean_ctor_get(x_1, 0); lean_inc(x_3); -lean_dec(x_1); -x_4 = l_Lean_PersistentHashMap_contains___at_Lean_NameSSet_contains___spec__3(x_3, x_2); -return x_4; +x_4 = lean_ctor_get(x_1, 1); +lean_inc(x_4); +if (lean_is_exclusive(x_1)) { + lean_ctor_release(x_1, 0); + lean_ctor_release(x_1, 1); + x_5 = x_1; +} else { + lean_dec_ref(x_1); + x_5 = lean_box(0); } +if (lean_obj_tag(x_2) == 0) +{ +uint8_t x_18; +x_18 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_18 == 0) +{ +lean_object* x_19; uint64_t x_20; uint64_t x_21; uint64_t x_22; +x_19 = lean_ctor_get(x_2, 0); +lean_inc(x_19); +x_20 = l_Lean_Name_hash___override(x_19); +lean_dec(x_19); +x_21 = 13; +x_22 = lean_uint64_mix_hash(x_20, x_21); +x_6 = x_22; +goto block_17; } -LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_isDeclToUnfold___boxed(lean_object* x_1, lean_object* x_2) { -_start: +else { -uint8_t x_3; lean_object* x_4; -x_3 = l_Lean_Meta_SimpTheorems_isDeclToUnfold(x_1, x_2); -x_4 = lean_box(x_3); -return x_4; +lean_object* x_23; uint64_t x_24; uint64_t x_25; uint64_t x_26; +x_23 = lean_ctor_get(x_2, 0); +lean_inc(x_23); +x_24 = l_Lean_Name_hash___override(x_23); +lean_dec(x_23); +x_25 = 11; +x_26 = lean_uint64_mix_hash(x_24, x_25); +x_6 = x_26; +goto block_17; } } -LEAN_EXPORT uint8_t l_Lean_Meta_SimpTheorems_isLetDeclToUnfold(lean_object* x_1, lean_object* x_2) { -_start: +else { -lean_object* x_3; uint8_t x_4; -x_3 = lean_ctor_get(x_1, 3); -lean_inc(x_3); -lean_dec(x_1); -x_4 = l_Lean_PersistentHashMap_contains___at_Lean_NameSSet_contains___spec__3(x_3, x_2); -return x_4; +lean_object* x_27; uint64_t x_28; +x_27 = l_Lean_Meta_Origin_key(x_2); +x_28 = l_Lean_Name_hash___override(x_27); +lean_dec(x_27); +x_6 = x_28; +goto block_17; +} +block_17: +{ +size_t x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_7 = lean_uint64_to_usize(x_6); +x_8 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2(x_3, x_7, x_2); +x_9 = lean_ctor_get(x_8, 1); +lean_inc(x_9); +x_10 = lean_unbox(x_9); +lean_dec(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_8, 0); +lean_inc(x_11); +lean_dec(x_8); +if (lean_is_scalar(x_5)) { + x_12 = lean_alloc_ctor(0, 2, 0); +} else { + x_12 = x_5; } +lean_ctor_set(x_12, 0, x_11); +lean_ctor_set(x_12, 1, x_4); +return x_12; } -LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_isLetDeclToUnfold___boxed(lean_object* x_1, lean_object* x_2) { -_start: +else { -uint8_t x_3; lean_object* x_4; -x_3 = l_Lean_Meta_SimpTheorems_isLetDeclToUnfold(x_1, x_2); -x_4 = lean_box(x_3); -return x_4; +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = lean_ctor_get(x_8, 0); +lean_inc(x_13); +lean_dec(x_8); +x_14 = lean_unsigned_to_nat(1u); +x_15 = lean_nat_sub(x_4, x_14); +lean_dec(x_4); +if (lean_is_scalar(x_5)) { + x_16 = lean_alloc_ctor(0, 2, 0); +} else { + x_16 = x_5; +} +lean_ctor_set(x_16, 0, x_13); +lean_ctor_set(x_16, 1, x_15); +return x_16; +} } } -LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_SimpTheorems_isLemma___spec__3(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_PersistentHashMap_insertAux_traverse___at_Lean_Meta_SimpTheorems_eraseCore___spec__6(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: { -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) +lean_object* x_7; uint8_t x_8; +x_7 = lean_array_get_size(x_2); +x_8 = lean_nat_dec_lt(x_5, x_7); +lean_dec(x_7); +if (x_8 == 0) { -uint8_t x_8; -lean_dec(x_4); -x_8 = 0; -return x_8; +lean_dec(x_5); +return x_6; } else { -lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_9 = lean_array_fget(x_1, x_4); -x_10 = l_Lean_Meta_Origin_key(x_5); -x_11 = l_Lean_Meta_Origin_key(x_9); -lean_dec(x_9); -x_12 = lean_name_eq(x_10, x_11); -lean_dec(x_11); -lean_dec(x_10); -if (x_12 == 0) +lean_object* x_9; lean_object* x_10; size_t x_11; size_t x_12; size_t x_13; size_t x_14; lean_object* x_15; lean_object* x_16; +x_9 = lean_array_fget(x_2, x_5); +x_10 = lean_array_fget(x_3, x_5); +x_11 = 1; +x_12 = lean_usize_sub(x_1, x_11); +x_13 = 5; +x_14 = lean_usize_mul(x_13, x_12); +x_15 = lean_unsigned_to_nat(1u); +x_16 = lean_nat_add(x_5, x_15); +lean_dec(x_5); +if (lean_obj_tag(x_9) == 0) { -lean_object* x_13; lean_object* x_14; -x_13 = lean_unsigned_to_nat(1u); -x_14 = lean_nat_add(x_4, x_13); -lean_dec(x_4); -x_3 = lean_box(0); -x_4 = x_14; +uint8_t x_17; +x_17 = lean_ctor_get_uint8(x_9, sizeof(void*)*1 + 1); +if (x_17 == 0) +{ +lean_object* x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; size_t x_22; size_t x_23; lean_object* x_24; +x_18 = lean_ctor_get(x_9, 0); +lean_inc(x_18); +x_19 = l_Lean_Name_hash___override(x_18); +lean_dec(x_18); +x_20 = 13; +x_21 = lean_uint64_mix_hash(x_19, x_20); +x_22 = lean_uint64_to_usize(x_21); +x_23 = lean_usize_shift_right(x_22, x_14); +x_24 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(x_6, x_23, x_1, x_9, x_10); +x_4 = lean_box(0); +x_5 = x_16; +x_6 = x_24; goto _start; } else { -uint8_t x_16; -lean_dec(x_4); -x_16 = 1; -return x_16; +lean_object* x_26; uint64_t x_27; uint64_t x_28; uint64_t x_29; size_t x_30; size_t x_31; lean_object* x_32; +x_26 = lean_ctor_get(x_9, 0); +lean_inc(x_26); +x_27 = l_Lean_Name_hash___override(x_26); +lean_dec(x_26); +x_28 = 11; +x_29 = lean_uint64_mix_hash(x_27, x_28); +x_30 = lean_uint64_to_usize(x_29); +x_31 = lean_usize_shift_right(x_30, x_14); +x_32 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(x_6, x_31, x_1, x_9, x_10); +x_4 = lean_box(0); +x_5 = x_16; +x_6 = x_32; +goto _start; +} +} +else +{ +lean_object* x_34; uint64_t x_35; size_t x_36; size_t x_37; lean_object* x_38; +x_34 = l_Lean_Meta_Origin_key(x_9); +x_35 = l_Lean_Name_hash___override(x_34); +lean_dec(x_34); +x_36 = lean_uint64_to_usize(x_35); +x_37 = lean_usize_shift_right(x_36, x_14); +x_38 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(x_6, x_37, x_1, x_9, x_10); +x_4 = lean_box(0); +x_5 = x_16; +x_6 = x_38; +goto _start; } } } } -LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_SimpTheorems_isLemma___spec__2(lean_object* x_1, size_t x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -if (lean_obj_tag(x_1) == 0) +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); +x_7 = lean_array_get_size(x_5); +x_8 = lean_nat_dec_lt(x_2, x_7); +lean_dec(x_7); +if (x_8 == 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_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___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: +uint8_t x_9; +lean_dec(x_2); +x_9 = !lean_is_exclusive(x_1); +if (x_9 == 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); +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_10 = lean_ctor_get(x_1, 1); lean_dec(x_10); -x_12 = l_Lean_Meta_Origin_key(x_3); -x_13 = l_Lean_Meta_Origin_key(x_11); +x_11 = lean_ctor_get(x_1, 0); lean_dec(x_11); -x_14 = lean_name_eq(x_12, x_13); -lean_dec(x_13); -lean_dec(x_12); -return x_14; +x_12 = lean_array_push(x_5, x_3); +x_13 = lean_array_push(x_6, x_4); +lean_ctor_set(x_1, 1, x_13); +lean_ctor_set(x_1, 0, x_12); +return x_1; } -case 1: +else { -lean_object* x_15; size_t x_16; -x_15 = lean_ctor_get(x_10, 0); -lean_inc(x_15); -lean_dec(x_10); -x_16 = lean_usize_shift_right(x_2, x_5); -x_1 = x_15; -x_2 = x_16; -goto _start; +lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_dec(x_1); +x_14 = lean_array_push(x_5, x_3); +x_15 = lean_array_push(x_6, x_4); +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; } -default: +} +else +{ +uint8_t x_17; lean_object* x_30; +x_30 = lean_array_fget(x_5, x_2); +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_31; +x_31 = lean_ctor_get_uint8(x_3, sizeof(void*)*1); +if (x_31 == 0) +{ +if (lean_obj_tag(x_30) == 0) +{ +uint8_t x_32; +x_32 = lean_ctor_get_uint8(x_30, sizeof(void*)*1); +if (x_32 == 0) +{ +lean_object* x_33; uint8_t x_34; lean_object* x_35; uint8_t x_36; uint8_t x_37; +x_33 = lean_ctor_get(x_3, 0); +lean_inc(x_33); +x_34 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +x_35 = lean_ctor_get(x_30, 0); +lean_inc(x_35); +x_36 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +lean_dec(x_30); +x_37 = lean_name_eq(x_33, x_35); +lean_dec(x_35); +lean_dec(x_33); +if (x_37 == 0) +{ +uint8_t x_38; +x_38 = 0; +x_17 = x_38; +goto block_29; +} +else +{ +if (x_34 == 0) +{ +if (x_36 == 0) +{ +uint8_t x_39; +x_39 = 1; +x_17 = x_39; +goto block_29; +} +else +{ +uint8_t x_40; +x_40 = 0; +x_17 = x_40; +goto block_29; +} +} +else +{ +if (x_36 == 0) +{ +uint8_t x_41; +x_41 = 0; +x_17 = x_41; +goto block_29; +} +else +{ +uint8_t x_42; +x_42 = 1; +x_17 = x_42; +goto block_29; +} +} +} +} +else +{ +uint8_t x_43; +x_43 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +if (x_43 == 0) +{ +lean_object* x_44; uint8_t x_45; lean_object* x_46; uint8_t x_47; +x_44 = lean_ctor_get(x_3, 0); +lean_inc(x_44); +x_45 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +x_46 = lean_ctor_get(x_30, 0); +lean_inc(x_46); +lean_dec(x_30); +x_47 = lean_name_eq(x_44, x_46); +lean_dec(x_46); +lean_dec(x_44); +if (x_47 == 0) +{ +uint8_t x_48; +x_48 = 0; +x_17 = x_48; +goto block_29; +} +else +{ +if (x_45 == 0) +{ +uint8_t x_49; +x_49 = 1; +x_17 = x_49; +goto block_29; +} +else +{ +uint8_t x_50; +x_50 = 0; +x_17 = x_50; +goto block_29; +} +} +} +else +{ +lean_object* x_51; uint8_t x_52; lean_object* x_53; uint8_t x_54; +x_51 = lean_ctor_get(x_3, 0); +lean_inc(x_51); +x_52 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +x_53 = lean_ctor_get(x_30, 0); +lean_inc(x_53); +lean_dec(x_30); +x_54 = lean_name_eq(x_51, x_53); +lean_dec(x_53); +lean_dec(x_51); +if (x_54 == 0) +{ +uint8_t x_55; +x_55 = 0; +x_17 = x_55; +goto block_29; +} +else +{ +if (x_52 == 0) +{ +uint8_t x_56; +x_56 = 0; +x_17 = x_56; +goto block_29; +} +else +{ +uint8_t x_57; +x_57 = 1; +x_17 = x_57; +goto block_29; +} +} +} +} +} +else +{ +lean_object* x_58; lean_object* x_59; uint8_t x_60; +x_58 = l_Lean_Meta_Origin_key(x_3); +x_59 = l_Lean_Meta_Origin_key(x_30); +lean_dec(x_30); +x_60 = lean_name_eq(x_58, x_59); +lean_dec(x_59); +lean_dec(x_58); +x_17 = x_60; +goto block_29; +} +} +else +{ +uint8_t x_61; +x_61 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +if (x_61 == 0) +{ +if (lean_obj_tag(x_30) == 0) +{ +uint8_t x_62; +x_62 = lean_ctor_get_uint8(x_30, sizeof(void*)*1); +if (x_62 == 0) +{ +lean_object* x_63; lean_object* x_64; uint8_t x_65; uint8_t x_66; +x_63 = lean_ctor_get(x_3, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_30, 0); +lean_inc(x_64); +x_65 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +lean_dec(x_30); +x_66 = lean_name_eq(x_63, x_64); +lean_dec(x_64); +lean_dec(x_63); +if (x_66 == 0) +{ +uint8_t x_67; +x_67 = 0; +x_17 = x_67; +goto block_29; +} +else +{ +if (x_65 == 0) +{ +uint8_t x_68; +x_68 = 1; +x_17 = x_68; +goto block_29; +} +else +{ +uint8_t x_69; +x_69 = 0; +x_17 = x_69; +goto block_29; +} +} +} +else +{ +uint8_t x_70; +x_70 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +if (x_70 == 0) +{ +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_3, 0); +lean_inc(x_71); +x_72 = lean_ctor_get(x_30, 0); +lean_inc(x_72); +lean_dec(x_30); +x_73 = lean_name_eq(x_71, x_72); +lean_dec(x_72); +lean_dec(x_71); +if (x_73 == 0) +{ +uint8_t x_74; +x_74 = 0; +x_17 = x_74; +goto block_29; +} +else +{ +uint8_t x_75; +x_75 = 1; +x_17 = x_75; +goto block_29; +} +} +else +{ +uint8_t x_76; +lean_dec(x_30); +x_76 = 0; +x_17 = x_76; +goto block_29; +} +} +} +else +{ +uint8_t x_77; +lean_dec(x_30); +x_77 = 0; +x_17 = x_77; +goto block_29; +} +} +else +{ +if (lean_obj_tag(x_30) == 0) +{ +uint8_t x_78; +x_78 = lean_ctor_get_uint8(x_30, sizeof(void*)*1); +if (x_78 == 0) +{ +lean_object* x_79; lean_object* x_80; uint8_t x_81; uint8_t x_82; +x_79 = lean_ctor_get(x_3, 0); +lean_inc(x_79); +x_80 = lean_ctor_get(x_30, 0); +lean_inc(x_80); +x_81 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +lean_dec(x_30); +x_82 = lean_name_eq(x_79, x_80); +lean_dec(x_80); +lean_dec(x_79); +if (x_82 == 0) +{ +uint8_t x_83; +x_83 = 0; +x_17 = x_83; +goto block_29; +} +else +{ +if (x_81 == 0) +{ +uint8_t x_84; +x_84 = 0; +x_17 = x_84; +goto block_29; +} +else +{ +uint8_t x_85; +x_85 = 1; +x_17 = x_85; +goto block_29; +} +} +} +else +{ +uint8_t x_86; +x_86 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +if (x_86 == 0) +{ +uint8_t x_87; +lean_dec(x_30); +x_87 = 0; +x_17 = x_87; +goto block_29; +} +else +{ +lean_object* x_88; lean_object* x_89; uint8_t x_90; +x_88 = lean_ctor_get(x_3, 0); +lean_inc(x_88); +x_89 = lean_ctor_get(x_30, 0); +lean_inc(x_89); +lean_dec(x_30); +x_90 = lean_name_eq(x_88, x_89); +lean_dec(x_89); +lean_dec(x_88); +if (x_90 == 0) +{ +uint8_t x_91; +x_91 = 0; +x_17 = x_91; +goto block_29; +} +else +{ +uint8_t x_92; +x_92 = 1; +x_17 = x_92; +goto block_29; +} +} +} +} +else +{ +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; uint8_t x_97; +x_93 = lean_ctor_get(x_3, 0); +lean_inc(x_93); +x_94 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_94, 0, x_93); +lean_ctor_set_uint8(x_94, sizeof(void*)*1, x_61); +lean_ctor_set_uint8(x_94, sizeof(void*)*1 + 1, x_61); +x_95 = l_Lean_Meta_Origin_key(x_94); +lean_dec(x_94); +x_96 = l_Lean_Meta_Origin_key(x_30); +lean_dec(x_30); +x_97 = lean_name_eq(x_95, x_96); +lean_dec(x_96); +lean_dec(x_95); +x_17 = x_97; +goto block_29; +} +} +} +} +else +{ +if (lean_obj_tag(x_30) == 0) +{ +uint8_t x_98; +x_98 = lean_ctor_get_uint8(x_30, sizeof(void*)*1); +if (x_98 == 0) +{ +lean_object* x_99; lean_object* x_100; uint8_t x_101; +x_99 = l_Lean_Meta_Origin_key(x_3); +x_100 = l_Lean_Meta_Origin_key(x_30); +lean_dec(x_30); +x_101 = lean_name_eq(x_99, x_100); +lean_dec(x_100); +lean_dec(x_99); +x_17 = x_101; +goto block_29; +} +else +{ +uint8_t x_102; +x_102 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +if (x_102 == 0) +{ +uint8_t x_103; +lean_dec(x_30); +x_103 = 0; +x_17 = x_103; +goto block_29; +} +else +{ +uint8_t x_104; +x_104 = !lean_is_exclusive(x_30); +if (x_104 == 0) +{ +lean_object* x_105; lean_object* x_106; uint8_t x_107; +lean_ctor_set_uint8(x_30, sizeof(void*)*1, x_102); +x_105 = l_Lean_Meta_Origin_key(x_3); +x_106 = l_Lean_Meta_Origin_key(x_30); +lean_dec(x_30); +x_107 = lean_name_eq(x_105, x_106); +lean_dec(x_106); +lean_dec(x_105); +x_17 = x_107; +goto block_29; +} +else +{ +lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; uint8_t x_112; +x_108 = lean_ctor_get(x_30, 0); +lean_inc(x_108); +lean_dec(x_30); +x_109 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_109, 0, x_108); +lean_ctor_set_uint8(x_109, sizeof(void*)*1, x_102); +lean_ctor_set_uint8(x_109, sizeof(void*)*1 + 1, x_102); +x_110 = l_Lean_Meta_Origin_key(x_3); +x_111 = l_Lean_Meta_Origin_key(x_109); +lean_dec(x_109); +x_112 = lean_name_eq(x_110, x_111); +lean_dec(x_111); +lean_dec(x_110); +x_17 = x_112; +goto block_29; +} +} +} +} +else +{ +lean_object* x_113; lean_object* x_114; uint8_t x_115; +x_113 = l_Lean_Meta_Origin_key(x_3); +x_114 = l_Lean_Meta_Origin_key(x_30); +lean_dec(x_30); +x_115 = lean_name_eq(x_113, x_114); +lean_dec(x_114); +lean_dec(x_113); +x_17 = x_115; +goto block_29; +} +} +block_29: +{ +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_6); +lean_dec(x_5); +x_18 = lean_unsigned_to_nat(1u); +x_19 = lean_nat_add(x_2, x_18); +lean_dec(x_2); +x_2 = x_19; +goto _start; +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_1); +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_dec(x_22); +x_23 = lean_ctor_get(x_1, 0); +lean_dec(x_23); +x_24 = lean_array_fset(x_5, x_2, x_3); +x_25 = lean_array_fset(x_6, x_2, x_4); +lean_dec(x_2); +lean_ctor_set(x_1, 1, x_25); +lean_ctor_set(x_1, 0, x_24); +return x_1; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_1); +x_26 = lean_array_fset(x_5, x_2, x_3); +x_27 = lean_array_fset(x_6, x_2, x_4); +lean_dec(x_2); +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_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_PersistentHashMap_mkEmptyEntries(lean_box(0), lean_box(0)); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_6; lean_object* x_7; size_t x_8; size_t x_9; size_t x_10; size_t x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +if (lean_is_exclusive(x_1)) { + lean_ctor_release(x_1, 0); + x_7 = x_1; +} else { + lean_dec_ref(x_1); + x_7 = lean_box(0); +} +x_8 = 1; +x_9 = 5; +x_10 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__2; +x_11 = lean_usize_land(x_2, x_10); +x_12 = lean_usize_to_nat(x_11); +x_13 = lean_array_get_size(x_6); +x_14 = lean_nat_dec_lt(x_12, x_13); +lean_dec(x_13); +if (x_14 == 0) +{ +lean_object* x_15; +lean_dec(x_12); +lean_dec(x_5); +lean_dec(x_4); +if (lean_is_scalar(x_7)) { + x_15 = lean_alloc_ctor(0, 1, 0); +} else { + x_15 = x_7; +} +lean_ctor_set(x_15, 0, x_6); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_array_fget(x_6, x_12); +x_17 = lean_box(0); +x_18 = lean_array_fset(x_6, x_12, x_17); +switch (lean_obj_tag(x_16)) { +case 0: +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_19 = lean_ctor_get(x_16, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_16, 1); +lean_inc(x_20); +if (lean_is_exclusive(x_16)) { + lean_ctor_release(x_16, 0); + lean_ctor_release(x_16, 1); + x_21 = x_16; +} else { + lean_dec_ref(x_16); + x_21 = lean_box(0); +} +if (lean_obj_tag(x_4) == 0) +{ +uint8_t x_31; +x_31 = lean_ctor_get_uint8(x_4, sizeof(void*)*1); +if (x_31 == 0) +{ +if (lean_obj_tag(x_19) == 0) +{ +uint8_t x_32; +x_32 = lean_ctor_get_uint8(x_19, sizeof(void*)*1); +if (x_32 == 0) +{ +lean_object* x_33; uint8_t x_34; lean_object* x_35; uint8_t x_36; uint8_t x_37; +x_33 = lean_ctor_get(x_4, 0); +lean_inc(x_33); +x_34 = lean_ctor_get_uint8(x_4, sizeof(void*)*1 + 1); +x_35 = lean_ctor_get(x_19, 0); +lean_inc(x_35); +x_36 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +x_37 = lean_name_eq(x_33, x_35); +lean_dec(x_35); +lean_dec(x_33); +if (x_37 == 0) +{ +uint8_t x_38; +x_38 = 0; +x_22 = x_38; +goto block_30; +} +else +{ +if (x_34 == 0) +{ +if (x_36 == 0) +{ +uint8_t x_39; +x_39 = 1; +x_22 = x_39; +goto block_30; +} +else +{ +uint8_t x_40; +x_40 = 0; +x_22 = x_40; +goto block_30; +} +} +else +{ +if (x_36 == 0) +{ +uint8_t x_41; +x_41 = 0; +x_22 = x_41; +goto block_30; +} +else +{ +uint8_t x_42; +x_42 = 1; +x_22 = x_42; +goto block_30; +} +} +} +} +else +{ +uint8_t x_43; +x_43 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +if (x_43 == 0) +{ +lean_object* x_44; uint8_t x_45; lean_object* x_46; uint8_t x_47; +x_44 = lean_ctor_get(x_4, 0); +lean_inc(x_44); +x_45 = lean_ctor_get_uint8(x_4, sizeof(void*)*1 + 1); +x_46 = lean_ctor_get(x_19, 0); +lean_inc(x_46); +x_47 = lean_name_eq(x_44, x_46); +lean_dec(x_46); +lean_dec(x_44); +if (x_47 == 0) +{ +uint8_t x_48; +x_48 = 0; +x_22 = x_48; +goto block_30; +} +else +{ +if (x_45 == 0) +{ +uint8_t x_49; +x_49 = 1; +x_22 = x_49; +goto block_30; +} +else +{ +uint8_t x_50; +x_50 = 0; +x_22 = x_50; +goto block_30; +} +} +} +else +{ +lean_object* x_51; uint8_t x_52; lean_object* x_53; uint8_t x_54; +x_51 = lean_ctor_get(x_4, 0); +lean_inc(x_51); +x_52 = lean_ctor_get_uint8(x_4, sizeof(void*)*1 + 1); +x_53 = lean_ctor_get(x_19, 0); +lean_inc(x_53); +x_54 = lean_name_eq(x_51, x_53); +lean_dec(x_53); +lean_dec(x_51); +if (x_54 == 0) +{ +uint8_t x_55; +x_55 = 0; +x_22 = x_55; +goto block_30; +} +else +{ +if (x_52 == 0) +{ +uint8_t x_56; +x_56 = 0; +x_22 = x_56; +goto block_30; +} +else +{ +uint8_t x_57; +x_57 = 1; +x_22 = x_57; +goto block_30; +} +} +} +} +} +else +{ +lean_object* x_58; lean_object* x_59; uint8_t x_60; +x_58 = l_Lean_Meta_Origin_key(x_4); +x_59 = l_Lean_Meta_Origin_key(x_19); +x_60 = lean_name_eq(x_58, x_59); +lean_dec(x_59); +lean_dec(x_58); +x_22 = x_60; +goto block_30; +} +} +else +{ +uint8_t x_61; +x_61 = lean_ctor_get_uint8(x_4, sizeof(void*)*1 + 1); +if (x_61 == 0) +{ +if (lean_obj_tag(x_19) == 0) +{ +uint8_t x_62; +x_62 = lean_ctor_get_uint8(x_19, sizeof(void*)*1); +if (x_62 == 0) +{ +lean_object* x_63; lean_object* x_64; uint8_t x_65; uint8_t x_66; +x_63 = lean_ctor_get(x_4, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_19, 0); +lean_inc(x_64); +x_65 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +x_66 = lean_name_eq(x_63, x_64); +lean_dec(x_64); +lean_dec(x_63); +if (x_66 == 0) +{ +uint8_t x_67; +x_67 = 0; +x_22 = x_67; +goto block_30; +} +else +{ +if (x_65 == 0) +{ +uint8_t x_68; +x_68 = 1; +x_22 = x_68; +goto block_30; +} +else +{ +uint8_t x_69; +x_69 = 0; +x_22 = x_69; +goto block_30; +} +} +} +else +{ +uint8_t x_70; +x_70 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +if (x_70 == 0) +{ +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_4, 0); +lean_inc(x_71); +x_72 = lean_ctor_get(x_19, 0); +lean_inc(x_72); +x_73 = lean_name_eq(x_71, x_72); +lean_dec(x_72); +lean_dec(x_71); +if (x_73 == 0) +{ +uint8_t x_74; +x_74 = 0; +x_22 = x_74; +goto block_30; +} +else +{ +uint8_t x_75; +x_75 = 1; +x_22 = x_75; +goto block_30; +} +} +else +{ +uint8_t x_76; +x_76 = 0; +x_22 = x_76; +goto block_30; +} +} +} +else +{ +uint8_t x_77; +x_77 = 0; +x_22 = x_77; +goto block_30; +} +} +else +{ +if (lean_obj_tag(x_19) == 0) +{ +uint8_t x_78; +x_78 = lean_ctor_get_uint8(x_19, sizeof(void*)*1); +if (x_78 == 0) +{ +lean_object* x_79; lean_object* x_80; uint8_t x_81; uint8_t x_82; +x_79 = lean_ctor_get(x_4, 0); +lean_inc(x_79); +x_80 = lean_ctor_get(x_19, 0); +lean_inc(x_80); +x_81 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +x_82 = lean_name_eq(x_79, x_80); +lean_dec(x_80); +lean_dec(x_79); +if (x_82 == 0) +{ +uint8_t x_83; +x_83 = 0; +x_22 = x_83; +goto block_30; +} +else +{ +if (x_81 == 0) +{ +uint8_t x_84; +x_84 = 0; +x_22 = x_84; +goto block_30; +} +else +{ +uint8_t x_85; +x_85 = 1; +x_22 = x_85; +goto block_30; +} +} +} +else +{ +uint8_t x_86; +x_86 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +if (x_86 == 0) +{ +uint8_t x_87; +x_87 = 0; +x_22 = x_87; +goto block_30; +} +else +{ +lean_object* x_88; lean_object* x_89; uint8_t x_90; +x_88 = lean_ctor_get(x_4, 0); +lean_inc(x_88); +x_89 = lean_ctor_get(x_19, 0); +lean_inc(x_89); +x_90 = lean_name_eq(x_88, x_89); +lean_dec(x_89); +lean_dec(x_88); +if (x_90 == 0) +{ +uint8_t x_91; +x_91 = 0; +x_22 = x_91; +goto block_30; +} +else +{ +uint8_t x_92; +x_92 = 1; +x_22 = x_92; +goto block_30; +} +} +} +} +else +{ +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; uint8_t x_97; +x_93 = lean_ctor_get(x_4, 0); +lean_inc(x_93); +x_94 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_94, 0, x_93); +lean_ctor_set_uint8(x_94, sizeof(void*)*1, x_61); +lean_ctor_set_uint8(x_94, sizeof(void*)*1 + 1, x_61); +x_95 = l_Lean_Meta_Origin_key(x_94); +lean_dec(x_94); +x_96 = l_Lean_Meta_Origin_key(x_19); +x_97 = lean_name_eq(x_95, x_96); +lean_dec(x_96); +lean_dec(x_95); +x_22 = x_97; +goto block_30; +} +} +} +} +else +{ +if (lean_obj_tag(x_19) == 0) +{ +uint8_t x_98; +x_98 = lean_ctor_get_uint8(x_19, sizeof(void*)*1); +if (x_98 == 0) +{ +lean_object* x_99; lean_object* x_100; uint8_t x_101; +x_99 = l_Lean_Meta_Origin_key(x_4); +x_100 = l_Lean_Meta_Origin_key(x_19); +x_101 = lean_name_eq(x_99, x_100); +lean_dec(x_100); +lean_dec(x_99); +x_22 = x_101; +goto block_30; +} +else +{ +uint8_t x_102; +x_102 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +if (x_102 == 0) +{ +uint8_t x_103; +x_103 = 0; +x_22 = x_103; +goto block_30; +} +else +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; uint8_t x_108; +x_104 = lean_ctor_get(x_19, 0); +lean_inc(x_104); +x_105 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_105, 0, x_104); +lean_ctor_set_uint8(x_105, sizeof(void*)*1, x_102); +lean_ctor_set_uint8(x_105, sizeof(void*)*1 + 1, x_102); +x_106 = l_Lean_Meta_Origin_key(x_4); +x_107 = l_Lean_Meta_Origin_key(x_105); +lean_dec(x_105); +x_108 = lean_name_eq(x_106, x_107); +lean_dec(x_107); +lean_dec(x_106); +x_22 = x_108; +goto block_30; +} +} +} +else +{ +lean_object* x_109; lean_object* x_110; uint8_t x_111; +x_109 = l_Lean_Meta_Origin_key(x_4); +x_110 = l_Lean_Meta_Origin_key(x_19); +x_111 = lean_name_eq(x_109, x_110); +lean_dec(x_110); +lean_dec(x_109); +x_22 = x_111; +goto block_30; +} +} +block_30: +{ +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_21); +x_23 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_19, x_20, x_4, x_5); +x_24 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_24, 0, x_23); +x_25 = lean_array_fset(x_18, x_12, x_24); +lean_dec(x_12); +if (lean_is_scalar(x_7)) { + x_26 = lean_alloc_ctor(0, 1, 0); +} else { + x_26 = x_7; +} +lean_ctor_set(x_26, 0, x_25); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_20); +lean_dec(x_19); +if (lean_is_scalar(x_21)) { + x_27 = lean_alloc_ctor(0, 2, 0); +} else { + x_27 = x_21; +} +lean_ctor_set(x_27, 0, x_4); +lean_ctor_set(x_27, 1, x_5); +x_28 = lean_array_fset(x_18, x_12, x_27); +lean_dec(x_12); +if (lean_is_scalar(x_7)) { + x_29 = lean_alloc_ctor(0, 1, 0); +} else { + x_29 = x_7; +} +lean_ctor_set(x_29, 0, x_28); +return x_29; +} +} +} +case 1: +{ +uint8_t x_112; +x_112 = !lean_is_exclusive(x_16); +if (x_112 == 0) +{ +lean_object* x_113; size_t x_114; size_t x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; +x_113 = lean_ctor_get(x_16, 0); +x_114 = lean_usize_shift_right(x_2, x_9); +x_115 = lean_usize_add(x_3, x_8); +x_116 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(x_113, x_114, x_115, x_4, x_5); +lean_ctor_set(x_16, 0, x_116); +x_117 = lean_array_fset(x_18, x_12, x_16); +lean_dec(x_12); +if (lean_is_scalar(x_7)) { + x_118 = lean_alloc_ctor(0, 1, 0); +} else { + x_118 = x_7; +} +lean_ctor_set(x_118, 0, x_117); +return x_118; +} +else +{ +lean_object* x_119; size_t x_120; size_t x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; +x_119 = lean_ctor_get(x_16, 0); +lean_inc(x_119); +lean_dec(x_16); +x_120 = lean_usize_shift_right(x_2, x_9); +x_121 = lean_usize_add(x_3, x_8); +x_122 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(x_119, x_120, x_121, x_4, x_5); +x_123 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_123, 0, x_122); +x_124 = lean_array_fset(x_18, x_12, x_123); +lean_dec(x_12); +if (lean_is_scalar(x_7)) { + x_125 = lean_alloc_ctor(0, 1, 0); +} else { + x_125 = x_7; +} +lean_ctor_set(x_125, 0, x_124); +return x_125; +} +} +default: +{ +lean_object* x_126; lean_object* x_127; lean_object* x_128; +x_126 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_126, 0, x_4); +lean_ctor_set(x_126, 1, x_5); +x_127 = lean_array_fset(x_18, x_12, x_126); +lean_dec(x_12); +if (lean_is_scalar(x_7)) { + x_128 = lean_alloc_ctor(0, 1, 0); +} else { + x_128 = x_7; +} +lean_ctor_set(x_128, 0, x_127); +return x_128; +} +} +} +} +else +{ +uint8_t x_129; +x_129 = !lean_is_exclusive(x_1); +if (x_129 == 0) +{ +lean_object* x_130; lean_object* x_131; size_t x_132; uint8_t x_133; +x_130 = lean_unsigned_to_nat(0u); +x_131 = l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__7(x_1, x_130, x_4, x_5); +x_132 = 7; +x_133 = lean_usize_dec_le(x_132, x_3); +if (x_133 == 0) +{ +lean_object* x_134; lean_object* x_135; uint8_t x_136; +x_134 = l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(x_131); +x_135 = lean_unsigned_to_nat(4u); +x_136 = lean_nat_dec_lt(x_134, x_135); +lean_dec(x_134); +if (x_136 == 0) +{ +lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; +x_137 = lean_ctor_get(x_131, 0); +lean_inc(x_137); +x_138 = lean_ctor_get(x_131, 1); +lean_inc(x_138); +lean_dec(x_131); +x_139 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5___closed__1; +x_140 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_SimpTheorems_eraseCore___spec__6(x_3, x_137, x_138, lean_box(0), x_130, x_139); +lean_dec(x_138); +lean_dec(x_137); +return x_140; +} +else +{ +return x_131; +} +} +else +{ +return x_131; +} +} +else +{ +lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; size_t x_146; uint8_t x_147; +x_141 = lean_ctor_get(x_1, 0); +x_142 = lean_ctor_get(x_1, 1); +lean_inc(x_142); +lean_inc(x_141); +lean_dec(x_1); +x_143 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_143, 0, x_141); +lean_ctor_set(x_143, 1, x_142); +x_144 = lean_unsigned_to_nat(0u); +x_145 = l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__7(x_143, x_144, x_4, x_5); +x_146 = 7; +x_147 = lean_usize_dec_le(x_146, x_3); +if (x_147 == 0) +{ +lean_object* x_148; lean_object* x_149; uint8_t x_150; +x_148 = l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(x_145); +x_149 = lean_unsigned_to_nat(4u); +x_150 = lean_nat_dec_lt(x_148, x_149); +lean_dec(x_148); +if (x_150 == 0) +{ +lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; +x_151 = lean_ctor_get(x_145, 0); +lean_inc(x_151); +x_152 = lean_ctor_get(x_145, 1); +lean_inc(x_152); +lean_dec(x_145); +x_153 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5___closed__1; +x_154 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_SimpTheorems_eraseCore___spec__6(x_3, x_151, x_152, lean_box(0), x_144, x_153); +lean_dec(x_152); +lean_dec(x_151); +return x_154; +} +else +{ +return x_145; +} +} +else +{ +return x_145; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Meta_SimpTheorems_eraseCore___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = !lean_is_exclusive(x_1); +if (x_4 == 0) +{ +lean_object* x_5; lean_object* x_6; size_t x_7; lean_object* x_8; lean_object* x_9; +x_5 = lean_ctor_get(x_1, 0); +x_6 = lean_ctor_get(x_1, 1); +x_7 = 1; +x_8 = lean_unsigned_to_nat(1u); +x_9 = lean_nat_add(x_6, x_8); +lean_dec(x_6); +if (lean_obj_tag(x_2) == 0) +{ +uint8_t x_10; +x_10 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_10 == 0) +{ +lean_object* x_11; uint64_t x_12; uint64_t x_13; uint64_t x_14; size_t x_15; lean_object* x_16; +x_11 = lean_ctor_get(x_2, 0); +lean_inc(x_11); +x_12 = l_Lean_Name_hash___override(x_11); +lean_dec(x_11); +x_13 = 13; +x_14 = lean_uint64_mix_hash(x_12, x_13); +x_15 = lean_uint64_to_usize(x_14); +x_16 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(x_5, x_15, x_7, x_2, x_3); +lean_ctor_set(x_1, 1, x_9); +lean_ctor_set(x_1, 0, x_16); +return x_1; +} +else +{ +lean_object* x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; size_t x_21; lean_object* x_22; +x_17 = lean_ctor_get(x_2, 0); +lean_inc(x_17); +x_18 = l_Lean_Name_hash___override(x_17); +lean_dec(x_17); +x_19 = 11; +x_20 = lean_uint64_mix_hash(x_18, x_19); +x_21 = lean_uint64_to_usize(x_20); +x_22 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(x_5, x_21, x_7, x_2, x_3); +lean_ctor_set(x_1, 1, x_9); +lean_ctor_set(x_1, 0, x_22); +return x_1; +} +} +else +{ +lean_object* x_23; uint64_t x_24; size_t x_25; lean_object* x_26; +x_23 = l_Lean_Meta_Origin_key(x_2); +x_24 = l_Lean_Name_hash___override(x_23); +lean_dec(x_23); +x_25 = lean_uint64_to_usize(x_24); +x_26 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(x_5, x_25, x_7, x_2, x_3); +lean_ctor_set(x_1, 1, x_9); +lean_ctor_set(x_1, 0, x_26); +return x_1; +} +} +else +{ +lean_object* x_27; lean_object* x_28; size_t x_29; lean_object* x_30; lean_object* x_31; +x_27 = lean_ctor_get(x_1, 0); +x_28 = lean_ctor_get(x_1, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_1); +x_29 = 1; +x_30 = lean_unsigned_to_nat(1u); +x_31 = lean_nat_add(x_28, x_30); +lean_dec(x_28); +if (lean_obj_tag(x_2) == 0) +{ +uint8_t x_32; +x_32 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_32 == 0) +{ +lean_object* x_33; uint64_t x_34; uint64_t x_35; uint64_t x_36; size_t x_37; lean_object* x_38; lean_object* x_39; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = l_Lean_Name_hash___override(x_33); +lean_dec(x_33); +x_35 = 13; +x_36 = lean_uint64_mix_hash(x_34, x_35); +x_37 = lean_uint64_to_usize(x_36); +x_38 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(x_27, x_37, x_29, x_2, x_3); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_38); +lean_ctor_set(x_39, 1, x_31); +return x_39; +} +else +{ +lean_object* x_40; uint64_t x_41; uint64_t x_42; uint64_t x_43; size_t x_44; lean_object* x_45; lean_object* x_46; +x_40 = lean_ctor_get(x_2, 0); +lean_inc(x_40); +x_41 = l_Lean_Name_hash___override(x_40); +lean_dec(x_40); +x_42 = 11; +x_43 = lean_uint64_mix_hash(x_41, x_42); +x_44 = lean_uint64_to_usize(x_43); +x_45 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(x_27, x_44, x_29, x_2, x_3); +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_45); +lean_ctor_set(x_46, 1, x_31); +return x_46; +} +} +else +{ +lean_object* x_47; uint64_t x_48; size_t x_49; lean_object* x_50; lean_object* x_51; +x_47 = l_Lean_Meta_Origin_key(x_2); +x_48 = l_Lean_Name_hash___override(x_47); +lean_dec(x_47); +x_49 = lean_uint64_to_usize(x_48); +x_50 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(x_27, x_49, x_29, x_2, x_3); +x_51 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_51, 0, x_50); +lean_ctor_set(x_51, 1, x_31); +return x_51; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_SimpTheorems_eraseCore___spec__8(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; uint8_t x_7; uint8_t x_8; lean_object* x_9; lean_object* x_10; size_t x_11; size_t x_12; +x_6 = lean_array_uget(x_1, x_2); +x_7 = 1; +x_8 = 0; +x_9 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_9, 0, x_6); +lean_ctor_set_uint8(x_9, sizeof(void*)*1, x_7); +lean_ctor_set_uint8(x_9, sizeof(void*)*1 + 1, x_8); +x_10 = l_Lean_Meta_SimpTheorems_eraseCore(x_4, x_9); +x_11 = 1; +x_12 = lean_usize_add(x_2, x_11); +x_2 = x_12; +x_4 = x_10; +goto _start; +} +else +{ +return x_4; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_eraseCore(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; +x_4 = lean_ctor_get(x_1, 0); +x_5 = lean_ctor_get(x_1, 1); +x_6 = lean_ctor_get(x_1, 2); +x_7 = lean_ctor_get(x_1, 3); +x_8 = lean_ctor_get(x_1, 4); +x_9 = lean_ctor_get(x_1, 5); +lean_inc(x_2); +x_10 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_SimpTheorems_eraseCore___spec__1(x_6, x_2); +x_11 = lean_box(0); +lean_inc(x_2); +x_12 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_SimpTheorems_eraseCore___spec__4(x_8, x_2, x_11); +lean_inc(x_9); +lean_inc(x_12); +lean_inc(x_7); +lean_inc(x_10); +lean_inc(x_5); +lean_inc(x_4); +lean_ctor_set(x_1, 4, x_12); +lean_ctor_set(x_1, 2, x_10); +if (lean_obj_tag(x_2) == 0) +{ +uint8_t x_13; +x_13 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_13 == 0) +{ +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +return x_1; +} +else +{ +uint8_t x_14; +x_14 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_1); +x_15 = lean_ctor_get(x_2, 0); +lean_inc(x_15); +lean_dec(x_2); +x_16 = l_Lean_PersistentHashMap_erase___at_Lean_KeyedDeclsAttribute_ExtensionState_insert___spec__1(x_7, x_15); +lean_inc(x_9); +x_17 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_17, 0, x_4); +lean_ctor_set(x_17, 1, x_5); +lean_ctor_set(x_17, 2, x_10); +lean_ctor_set(x_17, 3, x_16); +lean_ctor_set(x_17, 4, x_12); +lean_ctor_set(x_17, 5, x_9); +x_18 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_getEqnsFor_x3f___spec__1(x_9, x_15); +if (lean_obj_tag(x_18) == 0) +{ +return x_17; +} +else +{ +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); +lean_dec(x_18); +x_20 = lean_array_get_size(x_19); +x_21 = lean_unsigned_to_nat(0u); +x_22 = lean_nat_dec_lt(x_21, x_20); +if (x_22 == 0) +{ +lean_dec(x_20); +lean_dec(x_19); +return x_17; +} +else +{ +uint8_t x_23; +x_23 = lean_nat_dec_le(x_20, x_20); +if (x_23 == 0) +{ +lean_dec(x_20); +lean_dec(x_19); +return x_17; +} +else +{ +size_t x_24; size_t x_25; lean_object* x_26; +x_24 = 0; +x_25 = lean_usize_of_nat(x_20); +lean_dec(x_20); +x_26 = l_Array_foldlMUnsafe_fold___at_Lean_Meta_SimpTheorems_eraseCore___spec__8(x_19, x_24, x_25, x_17); +lean_dec(x_19); +return x_26; +} +} +} +} +else +{ +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +return x_1; +} +} +} +else +{ +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +return x_1; +} +} +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_1, 0); +x_28 = lean_ctor_get(x_1, 1); +x_29 = lean_ctor_get(x_1, 2); +x_30 = lean_ctor_get(x_1, 3); +x_31 = lean_ctor_get(x_1, 4); +x_32 = lean_ctor_get(x_1, 5); +lean_inc(x_32); +lean_inc(x_31); +lean_inc(x_30); +lean_inc(x_29); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_1); +lean_inc(x_2); +x_33 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_SimpTheorems_eraseCore___spec__1(x_29, x_2); +x_34 = lean_box(0); +lean_inc(x_2); +x_35 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_SimpTheorems_eraseCore___spec__4(x_31, x_2, x_34); +lean_inc(x_32); +lean_inc(x_35); +lean_inc(x_30); +lean_inc(x_33); +lean_inc(x_28); +lean_inc(x_27); +x_36 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_36, 0, x_27); +lean_ctor_set(x_36, 1, x_28); +lean_ctor_set(x_36, 2, x_33); +lean_ctor_set(x_36, 3, x_30); +lean_ctor_set(x_36, 4, x_35); +lean_ctor_set(x_36, 5, x_32); +if (lean_obj_tag(x_2) == 0) +{ +uint8_t x_37; +x_37 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); +if (x_37 == 0) +{ +lean_dec(x_35); +lean_dec(x_33); +lean_dec(x_32); +lean_dec(x_30); +lean_dec(x_28); +lean_dec(x_27); +lean_dec(x_2); +return x_36; +} +else +{ +uint8_t x_38; +x_38 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_dec(x_36); +x_39 = lean_ctor_get(x_2, 0); +lean_inc(x_39); +lean_dec(x_2); +x_40 = l_Lean_PersistentHashMap_erase___at_Lean_KeyedDeclsAttribute_ExtensionState_insert___spec__1(x_30, x_39); +lean_inc(x_32); +x_41 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_41, 0, x_27); +lean_ctor_set(x_41, 1, x_28); +lean_ctor_set(x_41, 2, x_33); +lean_ctor_set(x_41, 3, x_40); +lean_ctor_set(x_41, 4, x_35); +lean_ctor_set(x_41, 5, x_32); +x_42 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_getEqnsFor_x3f___spec__1(x_32, x_39); +if (lean_obj_tag(x_42) == 0) +{ +return x_41; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; uint8_t x_46; +x_43 = lean_ctor_get(x_42, 0); +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_dec(x_44); +lean_dec(x_43); +return x_41; +} +else +{ +uint8_t x_47; +x_47 = lean_nat_dec_le(x_44, x_44); +if (x_47 == 0) +{ +lean_dec(x_44); +lean_dec(x_43); +return x_41; +} +else +{ +size_t x_48; size_t x_49; lean_object* x_50; +x_48 = 0; +x_49 = lean_usize_of_nat(x_44); +lean_dec(x_44); +x_50 = l_Array_foldlMUnsafe_fold___at_Lean_Meta_SimpTheorems_eraseCore___spec__8(x_43, x_48, x_49, x_41); +lean_dec(x_43); +return x_50; +} +} +} +} +else +{ +lean_dec(x_35); +lean_dec(x_33); +lean_dec(x_32); +lean_dec(x_30); +lean_dec(x_28); +lean_dec(x_27); +lean_dec(x_2); +return x_36; +} +} +} +else +{ +lean_dec(x_35); +lean_dec(x_33); +lean_dec(x_32); +lean_dec(x_30); +lean_dec(x_28); +lean_dec(x_27); +lean_dec(x_2); +return x_36; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_indexOfAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Array_indexOfAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__3(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; lean_object* x_5; +x_4 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_5 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2(x_1, x_4, x_3); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_SimpTheorems_eraseCore___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) { +_start: +{ +size_t x_7; lean_object* x_8; +x_7 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_8 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_SimpTheorems_eraseCore___spec__6(x_7, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5___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_2); +lean_dec(x_2); +x_7 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_8 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5(x_1, x_6, x_7, x_4, x_5); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_SimpTheorems_eraseCore___spec__8___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_Meta_SimpTheorems_eraseCore___spec__8(x_1, x_5, x_6, x_4); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__3(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_12; uint8_t x_13; +x_12 = lean_array_get_size(x_1); +x_13 = lean_nat_dec_lt(x_4, x_12); +lean_dec(x_12); +if (x_13 == 0) +{ +uint8_t x_14; +lean_dec(x_4); +x_14 = 0; +return x_14; +} +else +{ +lean_object* x_15; +x_15 = lean_array_fget(x_1, x_4); +if (lean_obj_tag(x_5) == 0) +{ +uint8_t x_16; +x_16 = lean_ctor_get_uint8(x_5, sizeof(void*)*1); +if (x_16 == 0) +{ +if (lean_obj_tag(x_15) == 0) +{ +uint8_t x_17; +x_17 = lean_ctor_get_uint8(x_15, sizeof(void*)*1); +if (x_17 == 0) +{ +lean_object* x_18; uint8_t x_19; lean_object* x_20; uint8_t x_21; uint8_t x_22; +x_18 = lean_ctor_get(x_5, 0); +x_19 = lean_ctor_get_uint8(x_5, sizeof(void*)*1 + 1); +x_20 = lean_ctor_get(x_15, 0); +lean_inc(x_20); +x_21 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +lean_dec(x_15); +x_22 = lean_name_eq(x_18, x_20); +lean_dec(x_20); +if (x_22 == 0) +{ +uint8_t x_23; +x_23 = 0; +x_6 = x_23; +goto block_11; +} +else +{ +if (x_19 == 0) +{ +if (x_21 == 0) +{ +uint8_t x_24; +x_24 = 1; +x_6 = x_24; +goto block_11; +} +else +{ +uint8_t x_25; +x_25 = 0; +x_6 = x_25; +goto block_11; +} +} +else +{ +if (x_21 == 0) +{ +uint8_t x_26; +x_26 = 0; +x_6 = x_26; +goto block_11; +} +else +{ +uint8_t x_27; +x_27 = 1; +x_6 = x_27; +goto block_11; +} +} +} +} +else +{ +uint8_t x_28; +x_28 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +if (x_28 == 0) +{ +lean_object* x_29; uint8_t x_30; lean_object* x_31; uint8_t x_32; +x_29 = lean_ctor_get(x_5, 0); +x_30 = lean_ctor_get_uint8(x_5, sizeof(void*)*1 + 1); +x_31 = lean_ctor_get(x_15, 0); +lean_inc(x_31); +lean_dec(x_15); +x_32 = lean_name_eq(x_29, x_31); +lean_dec(x_31); +if (x_32 == 0) +{ +uint8_t x_33; +x_33 = 0; +x_6 = x_33; +goto block_11; +} +else +{ +if (x_30 == 0) +{ +uint8_t x_34; +x_34 = 1; +x_6 = x_34; +goto block_11; +} +else +{ +uint8_t x_35; +x_35 = 0; +x_6 = x_35; +goto block_11; +} +} +} +else +{ +lean_object* x_36; uint8_t x_37; lean_object* x_38; uint8_t x_39; +x_36 = lean_ctor_get(x_5, 0); +x_37 = lean_ctor_get_uint8(x_5, sizeof(void*)*1 + 1); +x_38 = lean_ctor_get(x_15, 0); +lean_inc(x_38); +lean_dec(x_15); +x_39 = lean_name_eq(x_36, x_38); +lean_dec(x_38); +if (x_39 == 0) +{ +uint8_t x_40; +x_40 = 0; +x_6 = x_40; +goto block_11; +} +else +{ +if (x_37 == 0) +{ +uint8_t x_41; +x_41 = 0; +x_6 = x_41; +goto block_11; +} +else +{ +uint8_t x_42; +x_42 = 1; +x_6 = x_42; +goto block_11; +} +} +} +} +} +else +{ +lean_object* x_43; lean_object* x_44; uint8_t x_45; +x_43 = l_Lean_Meta_Origin_key(x_5); +x_44 = l_Lean_Meta_Origin_key(x_15); +lean_dec(x_15); +x_45 = lean_name_eq(x_43, x_44); +lean_dec(x_44); +lean_dec(x_43); +x_6 = x_45; +goto block_11; +} +} +else +{ +uint8_t x_46; +x_46 = lean_ctor_get_uint8(x_5, sizeof(void*)*1 + 1); +if (x_46 == 0) +{ +if (lean_obj_tag(x_15) == 0) +{ +uint8_t x_47; +x_47 = lean_ctor_get_uint8(x_15, sizeof(void*)*1); +if (x_47 == 0) +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; uint8_t x_51; +x_48 = lean_ctor_get(x_5, 0); +x_49 = lean_ctor_get(x_15, 0); +lean_inc(x_49); +x_50 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +lean_dec(x_15); +x_51 = lean_name_eq(x_48, x_49); +lean_dec(x_49); +if (x_51 == 0) +{ +uint8_t x_52; +x_52 = 0; +x_6 = x_52; +goto block_11; +} +else +{ +if (x_50 == 0) +{ +uint8_t x_53; +x_53 = 1; +x_6 = x_53; +goto block_11; +} +else +{ +uint8_t x_54; +x_54 = 0; +x_6 = x_54; +goto block_11; +} +} +} +else +{ +uint8_t x_55; +x_55 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +if (x_55 == 0) +{ +lean_object* x_56; lean_object* x_57; uint8_t x_58; +x_56 = lean_ctor_get(x_5, 0); +x_57 = lean_ctor_get(x_15, 0); +lean_inc(x_57); +lean_dec(x_15); +x_58 = lean_name_eq(x_56, x_57); +lean_dec(x_57); +if (x_58 == 0) +{ +uint8_t x_59; +x_59 = 0; +x_6 = x_59; +goto block_11; +} +else +{ +uint8_t x_60; +x_60 = 1; +x_6 = x_60; +goto block_11; +} +} +else +{ +uint8_t x_61; +lean_dec(x_15); +x_61 = 0; +x_6 = x_61; +goto block_11; +} +} +} +else +{ +uint8_t x_62; +lean_dec(x_15); +x_62 = 0; +x_6 = x_62; +goto block_11; +} +} +else +{ +if (lean_obj_tag(x_15) == 0) +{ +uint8_t x_63; +x_63 = lean_ctor_get_uint8(x_15, sizeof(void*)*1); +if (x_63 == 0) +{ +lean_object* x_64; lean_object* x_65; uint8_t x_66; uint8_t x_67; +x_64 = lean_ctor_get(x_5, 0); +x_65 = lean_ctor_get(x_15, 0); +lean_inc(x_65); +x_66 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +lean_dec(x_15); +x_67 = lean_name_eq(x_64, x_65); +lean_dec(x_65); +if (x_67 == 0) +{ +uint8_t x_68; +x_68 = 0; +x_6 = x_68; +goto block_11; +} +else +{ +if (x_66 == 0) +{ +uint8_t x_69; +x_69 = 0; +x_6 = x_69; +goto block_11; +} +else +{ +uint8_t x_70; +x_70 = 1; +x_6 = x_70; +goto block_11; +} +} +} +else +{ +uint8_t x_71; +x_71 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +if (x_71 == 0) +{ +uint8_t x_72; +lean_dec(x_15); +x_72 = 0; +x_6 = x_72; +goto block_11; +} +else +{ +lean_object* x_73; lean_object* x_74; uint8_t x_75; +x_73 = lean_ctor_get(x_5, 0); +x_74 = lean_ctor_get(x_15, 0); +lean_inc(x_74); +lean_dec(x_15); +x_75 = lean_name_eq(x_73, x_74); +lean_dec(x_74); +if (x_75 == 0) +{ +uint8_t x_76; +x_76 = 0; +x_6 = x_76; +goto block_11; +} +else +{ +uint8_t x_77; +x_77 = 1; +x_6 = x_77; +goto block_11; +} +} +} +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; uint8_t x_82; +x_78 = lean_ctor_get(x_5, 0); +lean_inc(x_78); +x_79 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_79, 0, x_78); +lean_ctor_set_uint8(x_79, sizeof(void*)*1, x_46); +lean_ctor_set_uint8(x_79, sizeof(void*)*1 + 1, x_46); +x_80 = l_Lean_Meta_Origin_key(x_79); +lean_dec(x_79); +x_81 = l_Lean_Meta_Origin_key(x_15); +lean_dec(x_15); +x_82 = lean_name_eq(x_80, x_81); +lean_dec(x_81); +lean_dec(x_80); +x_6 = x_82; +goto block_11; +} +} +} +} +else +{ +if (lean_obj_tag(x_15) == 0) +{ +uint8_t x_83; +x_83 = lean_ctor_get_uint8(x_15, sizeof(void*)*1); +if (x_83 == 0) +{ +lean_object* x_84; lean_object* x_85; uint8_t x_86; +x_84 = l_Lean_Meta_Origin_key(x_5); +x_85 = l_Lean_Meta_Origin_key(x_15); +lean_dec(x_15); +x_86 = lean_name_eq(x_84, x_85); +lean_dec(x_85); +lean_dec(x_84); +x_6 = x_86; +goto block_11; +} +else +{ +uint8_t x_87; +x_87 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +if (x_87 == 0) +{ +uint8_t x_88; +lean_dec(x_15); +x_88 = 0; +x_6 = x_88; +goto block_11; +} +else +{ +uint8_t x_89; +x_89 = !lean_is_exclusive(x_15); +if (x_89 == 0) +{ +lean_object* x_90; lean_object* x_91; uint8_t x_92; +lean_ctor_set_uint8(x_15, sizeof(void*)*1, x_87); +x_90 = l_Lean_Meta_Origin_key(x_5); +x_91 = l_Lean_Meta_Origin_key(x_15); +lean_dec(x_15); +x_92 = lean_name_eq(x_90, x_91); +lean_dec(x_91); +lean_dec(x_90); +x_6 = x_92; +goto block_11; +} +else +{ +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; uint8_t x_97; +x_93 = lean_ctor_get(x_15, 0); +lean_inc(x_93); +lean_dec(x_15); +x_94 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_94, 0, x_93); +lean_ctor_set_uint8(x_94, sizeof(void*)*1, x_87); +lean_ctor_set_uint8(x_94, sizeof(void*)*1 + 1, x_87); +x_95 = l_Lean_Meta_Origin_key(x_5); +x_96 = l_Lean_Meta_Origin_key(x_94); +lean_dec(x_94); +x_97 = lean_name_eq(x_95, x_96); +lean_dec(x_96); +lean_dec(x_95); +x_6 = x_97; +goto block_11; +} +} +} +} +else +{ +lean_object* x_98; lean_object* x_99; uint8_t x_100; +x_98 = l_Lean_Meta_Origin_key(x_5); +x_99 = l_Lean_Meta_Origin_key(x_15); +lean_dec(x_15); +x_100 = lean_name_eq(x_98, x_99); +lean_dec(x_99); +lean_dec(x_98); +x_6 = x_100; +goto block_11; +} +} +} +block_11: +{ +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; +x_7 = lean_unsigned_to_nat(1u); +x_8 = lean_nat_add(x_4, x_7); +lean_dec(x_4); +x_3 = lean_box(0); +x_4 = x_8; +goto _start; +} +else +{ +uint8_t x_10; +lean_dec(x_4); +x_10 = 1; +return x_10; +} +} +} +} +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___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_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___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: +{ +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_11; +x_11 = lean_ctor_get_uint8(x_3, sizeof(void*)*1); +if (x_11 == 0) +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_12); +lean_dec(x_10); +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_13; +x_13 = lean_ctor_get_uint8(x_12, sizeof(void*)*1); +if (x_13 == 0) +{ +lean_object* x_14; uint8_t x_15; lean_object* x_16; uint8_t x_17; uint8_t x_18; +x_14 = lean_ctor_get(x_3, 0); +lean_inc(x_14); +x_15 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +lean_dec(x_3); +x_16 = lean_ctor_get(x_12, 0); +lean_inc(x_16); +x_17 = lean_ctor_get_uint8(x_12, sizeof(void*)*1 + 1); +lean_dec(x_12); +x_18 = lean_name_eq(x_14, x_16); +lean_dec(x_16); +lean_dec(x_14); +if (x_18 == 0) +{ +uint8_t x_19; +x_19 = 0; +return x_19; +} +else +{ +if (x_15 == 0) +{ +if (x_17 == 0) +{ +uint8_t x_20; +x_20 = 1; +return x_20; +} +else +{ +uint8_t x_21; +x_21 = 0; +return x_21; +} +} +else +{ +return x_17; +} +} +} +else +{ +uint8_t x_22; +x_22 = lean_ctor_get_uint8(x_12, sizeof(void*)*1 + 1); +if (x_22 == 0) +{ +lean_object* x_23; uint8_t x_24; lean_object* x_25; uint8_t x_26; +x_23 = lean_ctor_get(x_3, 0); +lean_inc(x_23); +x_24 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +lean_dec(x_3); +x_25 = lean_ctor_get(x_12, 0); +lean_inc(x_25); +lean_dec(x_12); +x_26 = lean_name_eq(x_23, x_25); +lean_dec(x_25); +lean_dec(x_23); +if (x_26 == 0) +{ +uint8_t x_27; +x_27 = 0; +return x_27; +} +else +{ +if (x_24 == 0) +{ +uint8_t x_28; +x_28 = 1; +return x_28; +} +else +{ +uint8_t x_29; +x_29 = 0; +return x_29; +} +} +} +else +{ +lean_object* x_30; uint8_t x_31; lean_object* x_32; uint8_t x_33; +x_30 = lean_ctor_get(x_3, 0); +lean_inc(x_30); +x_31 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +lean_dec(x_3); +x_32 = lean_ctor_get(x_12, 0); +lean_inc(x_32); +lean_dec(x_12); +x_33 = lean_name_eq(x_30, x_32); +lean_dec(x_32); +lean_dec(x_30); +if (x_33 == 0) +{ +uint8_t x_34; +x_34 = 0; +return x_34; +} +else +{ +return x_31; +} +} +} +} +else +{ +lean_object* x_35; lean_object* x_36; uint8_t x_37; +x_35 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_36 = l_Lean_Meta_Origin_key(x_12); +lean_dec(x_12); +x_37 = lean_name_eq(x_35, x_36); +lean_dec(x_36); +lean_dec(x_35); +return x_37; +} +} +else +{ +uint8_t x_38; +x_38 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +if (x_38 == 0) +{ +lean_object* x_39; +x_39 = lean_ctor_get(x_10, 0); +lean_inc(x_39); +lean_dec(x_10); +if (lean_obj_tag(x_39) == 0) +{ +uint8_t x_40; +x_40 = lean_ctor_get_uint8(x_39, sizeof(void*)*1); +if (x_40 == 0) +{ +lean_object* x_41; lean_object* x_42; uint8_t x_43; uint8_t x_44; +x_41 = lean_ctor_get(x_3, 0); +lean_inc(x_41); +lean_dec(x_3); +x_42 = lean_ctor_get(x_39, 0); +lean_inc(x_42); +x_43 = lean_ctor_get_uint8(x_39, sizeof(void*)*1 + 1); +lean_dec(x_39); +x_44 = lean_name_eq(x_41, x_42); +lean_dec(x_42); +lean_dec(x_41); +if (x_44 == 0) +{ +uint8_t x_45; +x_45 = 0; +return x_45; +} +else +{ +if (x_43 == 0) +{ +uint8_t x_46; +x_46 = 1; +return x_46; +} +else +{ +uint8_t x_47; +x_47 = 0; +return x_47; +} +} +} +else +{ +uint8_t x_48; +x_48 = lean_ctor_get_uint8(x_39, sizeof(void*)*1 + 1); +if (x_48 == 0) +{ +lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_49 = lean_ctor_get(x_3, 0); +lean_inc(x_49); +lean_dec(x_3); +x_50 = lean_ctor_get(x_39, 0); +lean_inc(x_50); +lean_dec(x_39); +x_51 = lean_name_eq(x_49, x_50); +lean_dec(x_50); +lean_dec(x_49); +return x_51; +} +else +{ +uint8_t x_52; +lean_dec(x_39); +lean_dec(x_3); +x_52 = 0; +return x_52; +} +} +} +else +{ +uint8_t x_53; +lean_dec(x_39); +lean_dec(x_3); +x_53 = 0; +return x_53; +} +} +else +{ +lean_object* x_54; +x_54 = lean_ctor_get(x_10, 0); +lean_inc(x_54); +lean_dec(x_10); +if (lean_obj_tag(x_54) == 0) +{ +uint8_t x_55; +x_55 = lean_ctor_get_uint8(x_54, sizeof(void*)*1); +if (x_55 == 0) +{ +lean_object* x_56; lean_object* x_57; uint8_t x_58; uint8_t x_59; +x_56 = lean_ctor_get(x_3, 0); +lean_inc(x_56); +lean_dec(x_3); +x_57 = lean_ctor_get(x_54, 0); +lean_inc(x_57); +x_58 = lean_ctor_get_uint8(x_54, sizeof(void*)*1 + 1); +lean_dec(x_54); +x_59 = lean_name_eq(x_56, x_57); +lean_dec(x_57); +lean_dec(x_56); +if (x_59 == 0) +{ +uint8_t x_60; +x_60 = 0; +return x_60; +} +else +{ +return x_58; +} +} +else +{ +uint8_t x_61; +x_61 = lean_ctor_get_uint8(x_54, sizeof(void*)*1 + 1); +if (x_61 == 0) +{ +uint8_t x_62; +lean_dec(x_54); +lean_dec(x_3); +x_62 = 0; +return x_62; +} +else +{ +lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_63 = lean_ctor_get(x_3, 0); +lean_inc(x_63); +lean_dec(x_3); +x_64 = lean_ctor_get(x_54, 0); +lean_inc(x_64); +lean_dec(x_54); +x_65 = lean_name_eq(x_63, x_64); +lean_dec(x_64); +lean_dec(x_63); +return x_65; +} +} +} +else +{ +uint8_t x_66; +x_66 = !lean_is_exclusive(x_3); +if (x_66 == 0) +{ +lean_object* x_67; lean_object* x_68; uint8_t x_69; +lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_38); +x_67 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_68 = l_Lean_Meta_Origin_key(x_54); +lean_dec(x_54); +x_69 = lean_name_eq(x_67, x_68); +lean_dec(x_68); +lean_dec(x_67); +return x_69; +} +else +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; uint8_t x_74; +x_70 = lean_ctor_get(x_3, 0); +lean_inc(x_70); +lean_dec(x_3); +x_71 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set_uint8(x_71, sizeof(void*)*1, x_38); +lean_ctor_set_uint8(x_71, sizeof(void*)*1 + 1, x_38); +x_72 = l_Lean_Meta_Origin_key(x_71); +lean_dec(x_71); +x_73 = l_Lean_Meta_Origin_key(x_54); +lean_dec(x_54); +x_74 = lean_name_eq(x_72, x_73); +lean_dec(x_73); +lean_dec(x_72); +return x_74; +} +} +} +} +} +else +{ +lean_object* x_75; +x_75 = lean_ctor_get(x_10, 0); +lean_inc(x_75); +lean_dec(x_10); +if (lean_obj_tag(x_75) == 0) +{ +uint8_t x_76; +x_76 = lean_ctor_get_uint8(x_75, sizeof(void*)*1); +if (x_76 == 0) +{ +lean_object* x_77; lean_object* x_78; uint8_t x_79; +x_77 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_78 = l_Lean_Meta_Origin_key(x_75); +lean_dec(x_75); +x_79 = lean_name_eq(x_77, x_78); +lean_dec(x_78); +lean_dec(x_77); +return x_79; +} +else +{ +uint8_t x_80; +x_80 = lean_ctor_get_uint8(x_75, sizeof(void*)*1 + 1); +if (x_80 == 0) +{ +uint8_t x_81; +lean_dec(x_75); +lean_dec(x_3); +x_81 = 0; +return x_81; +} +else +{ +uint8_t x_82; +x_82 = !lean_is_exclusive(x_75); +if (x_82 == 0) +{ +lean_object* x_83; lean_object* x_84; uint8_t x_85; +lean_ctor_set_uint8(x_75, sizeof(void*)*1, x_80); +x_83 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_84 = l_Lean_Meta_Origin_key(x_75); +lean_dec(x_75); +x_85 = lean_name_eq(x_83, x_84); +lean_dec(x_84); +lean_dec(x_83); +return x_85; +} +else +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; uint8_t x_90; +x_86 = lean_ctor_get(x_75, 0); +lean_inc(x_86); +lean_dec(x_75); +x_87 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_87, 0, x_86); +lean_ctor_set_uint8(x_87, sizeof(void*)*1, x_80); +lean_ctor_set_uint8(x_87, sizeof(void*)*1 + 1, x_80); +x_88 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_89 = l_Lean_Meta_Origin_key(x_87); +lean_dec(x_87); +x_90 = lean_name_eq(x_88, x_89); +lean_dec(x_89); +lean_dec(x_88); +return x_90; +} +} +} +} +else +{ +lean_object* x_91; lean_object* x_92; uint8_t x_93; +x_91 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_92 = l_Lean_Meta_Origin_key(x_75); +lean_dec(x_75); +x_93 = lean_name_eq(x_91, x_92); +lean_dec(x_92); +lean_dec(x_91); +return x_93; +} +} +} +case 1: +{ +lean_object* x_94; size_t x_95; +x_94 = lean_ctor_get(x_10, 0); +lean_inc(x_94); +lean_dec(x_10); +x_95 = lean_usize_shift_right(x_2, x_5); +x_1 = x_94; +x_2 = x_95; +goto _start; +} +default: +{ +uint8_t x_97; +lean_dec(x_3); +x_97 = 0; +return x_97; +} +} +} +else +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; uint8_t x_101; +x_98 = lean_ctor_get(x_1, 0); +lean_inc(x_98); +x_99 = lean_ctor_get(x_1, 1); +lean_inc(x_99); +lean_dec(x_1); +x_100 = lean_unsigned_to_nat(0u); +x_101 = l_Lean_PersistentHashMap_containsAtAux___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__3(x_98, x_99, lean_box(0), x_100, x_3); +lean_dec(x_3); +lean_dec(x_99); +lean_dec(x_98); +return x_101; +} +} +} +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +if (lean_obj_tag(x_2) == 0) +{ +uint8_t x_3; +x_3 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_3 == 0) +{ +lean_object* x_4; lean_object* x_5; uint64_t x_6; uint64_t x_7; uint64_t x_8; size_t x_9; uint8_t x_10; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +lean_dec(x_1); +x_5 = lean_ctor_get(x_2, 0); +lean_inc(x_5); +x_6 = l_Lean_Name_hash___override(x_5); +lean_dec(x_5); +x_7 = 13; +x_8 = lean_uint64_mix_hash(x_6, x_7); +x_9 = lean_uint64_to_usize(x_8); +x_10 = l_Lean_PersistentHashMap_containsAux___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__2(x_4, x_9, x_2); +return x_10; +} +else +{ +lean_object* x_11; lean_object* x_12; uint64_t x_13; uint64_t x_14; uint64_t x_15; size_t x_16; uint8_t x_17; +x_11 = lean_ctor_get(x_1, 0); +lean_inc(x_11); +lean_dec(x_1); +x_12 = lean_ctor_get(x_2, 0); +lean_inc(x_12); +x_13 = l_Lean_Name_hash___override(x_12); +lean_dec(x_12); +x_14 = 11; +x_15 = lean_uint64_mix_hash(x_13, x_14); +x_16 = lean_uint64_to_usize(x_15); +x_17 = l_Lean_PersistentHashMap_containsAux___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__2(x_11, x_16, x_2); +return x_17; +} +} +else +{ +lean_object* x_18; lean_object* x_19; uint64_t x_20; size_t x_21; uint8_t x_22; +x_18 = lean_ctor_get(x_1, 0); +lean_inc(x_18); +lean_dec(x_1); +x_19 = l_Lean_Meta_Origin_key(x_2); +x_20 = l_Lean_Name_hash___override(x_19); +lean_dec(x_19); +x_21 = lean_uint64_to_usize(x_20); +x_22 = l_Lean_PersistentHashMap_containsAux___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__2(x_18, x_21, x_2); +return x_22; +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +x_3 = lean_ctor_get(x_1, 2); +lean_inc(x_3); +lean_inc(x_2); +x_4 = l_Lean_PersistentHashMap_contains___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__1(x_3, x_2); +if (x_4 == 0) +{ +lean_dec(x_2); +return x_1; +} +else +{ +lean_object* x_5; +x_5 = l_Lean_Meta_SimpTheorems_eraseCore(x_1, x_2); +return x_5; +} +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___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___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___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___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___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___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__2(x_1, x_4, x_3); +x_6 = lean_box(x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___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___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__1(x_1, x_2); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseFwdIfBwd(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_ctor_get(x_2, 4); +lean_inc(x_3); +lean_dec(x_2); +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_4; +x_4 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +if (x_4 == 0) +{ +lean_dec(x_3); +return x_1; +} +else +{ +uint8_t x_5; +x_5 = !lean_is_exclusive(x_3); +if (x_5 == 0) +{ +uint8_t x_6; lean_object* x_7; +x_6 = 0; +lean_ctor_set_uint8(x_3, sizeof(void*)*1 + 1, x_6); +x_7 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists(x_1, x_3); +return x_7; +} +else +{ +lean_object* x_8; uint8_t x_9; uint8_t x_10; lean_object* x_11; lean_object* x_12; +x_8 = lean_ctor_get(x_3, 0); +x_9 = lean_ctor_get_uint8(x_3, sizeof(void*)*1); +lean_inc(x_8); +lean_dec(x_3); +x_10 = 0; +x_11 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_11, 0, x_8); +lean_ctor_set_uint8(x_11, sizeof(void*)*1, x_9); +lean_ctor_set_uint8(x_11, sizeof(void*)*1 + 1, x_10); +x_12 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists(x_1, x_11); +return x_12; +} +} +} +else +{ +lean_dec(x_3); +return x_1; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_addSimpTheoremEntry_updateLemmaNames(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_3 = lean_ctor_get(x_1, 4); +lean_inc(x_3); +lean_dec(x_1); +x_4 = lean_box(0); +x_5 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_SimpTheorems_eraseCore___spec__4(x_2, x_3, x_4); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_addSimpTheoremEntry___spec__4(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) +{ +lean_object* x_8; +lean_dec(x_4); +x_8 = lean_box(0); +return x_8; +} +else +{ +lean_object* x_9; uint8_t x_10; +x_9 = lean_array_fget(x_1, x_4); +x_10 = l___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(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 +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_array_fget(x_2, x_4); +lean_dec(x_4); +x_15 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_15, 0, x_14); +return x_15; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_addSimpTheoremEntry___spec__3(lean_object* x_1, size_t x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +uint8_t x_4; +x_4 = !lean_is_exclusive(x_1); +if (x_4 == 0) +{ +lean_object* x_5; size_t x_6; size_t x_7; size_t x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_5 = lean_ctor_get(x_1, 0); +x_6 = 5; +x_7 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__2; +x_8 = lean_usize_land(x_2, x_7); +x_9 = lean_usize_to_nat(x_8); +x_10 = lean_box(2); +x_11 = lean_array_get(x_10, x_5, x_9); +lean_dec(x_9); +lean_dec(x_5); +switch (lean_obj_tag(x_11)) { +case 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___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_3, x_12); +lean_dec(x_12); +if (x_14 == 0) +{ +lean_object* x_15; +lean_dec(x_13); +lean_free_object(x_1); +x_15 = lean_box(0); +return x_15; +} +else +{ +lean_ctor_set_tag(x_1, 1); +lean_ctor_set(x_1, 0, x_13); +return x_1; +} +} +case 1: +{ +lean_object* x_16; size_t x_17; +lean_free_object(x_1); +x_16 = lean_ctor_get(x_11, 0); +lean_inc(x_16); +lean_dec(x_11); +x_17 = lean_usize_shift_right(x_2, x_6); +x_1 = x_16; +x_2 = x_17; +goto _start; +} +default: +{ +lean_object* x_19; +lean_free_object(x_1); +x_19 = lean_box(0); +return x_19; +} +} +} +else +{ +lean_object* x_20; size_t x_21; size_t x_22; size_t x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_20 = lean_ctor_get(x_1, 0); +lean_inc(x_20); +lean_dec(x_1); +x_21 = 5; +x_22 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__2; +x_23 = lean_usize_land(x_2, x_22); +x_24 = lean_usize_to_nat(x_23); +x_25 = lean_box(2); +x_26 = lean_array_get(x_25, x_20, x_24); +lean_dec(x_24); +lean_dec(x_20); +switch (lean_obj_tag(x_26)) { +case 0: +{ +lean_object* x_27; lean_object* x_28; uint8_t 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___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_3, x_27); +lean_dec(x_27); +if (x_29 == 0) +{ +lean_object* x_30; +lean_dec(x_28); +x_30 = lean_box(0); +return x_30; +} +else +{ +lean_object* x_31; +x_31 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_31, 0, x_28); +return x_31; +} +} +case 1: +{ +lean_object* x_32; size_t x_33; +x_32 = lean_ctor_get(x_26, 0); +lean_inc(x_32); +lean_dec(x_26); +x_33 = lean_usize_shift_right(x_2, x_21); +x_1 = x_32; +x_2 = x_33; +goto _start; +} +default: +{ +lean_object* x_35; +x_35 = lean_box(0); +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_1, 0); +lean_inc(x_36); +x_37 = lean_ctor_get(x_1, 1); +lean_inc(x_37); +lean_dec(x_1); +x_38 = lean_unsigned_to_nat(0u); +x_39 = l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_addSimpTheoremEntry___spec__4(x_36, x_37, lean_box(0), x_38, x_3); +lean_dec(x_37); +lean_dec(x_36); +return x_39; +} +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_addSimpTheoremEntry___spec__2(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint64_t x_4; size_t x_5; lean_object* x_6; +x_3 = lean_ctor_get(x_1, 0); +lean_inc(x_3); +lean_dec(x_1); +x_4 = l_Lean_Meta_DiscrTree_Key_hash(x_2); +x_5 = lean_uint64_to_usize(x_4); +x_6 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_addSimpTheoremEntry___spec__3(x_3, x_5, x_2); +lean_dec(x_2); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry___spec__7(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: +{ +lean_object* x_7; uint8_t x_8; +x_7 = lean_array_get_size(x_2); +x_8 = lean_nat_dec_lt(x_5, x_7); +lean_dec(x_7); +if (x_8 == 0) +{ +lean_dec(x_5); +return x_6; +} +else +{ +lean_object* x_9; lean_object* 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; size_t x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_9 = lean_array_fget(x_2, x_5); +x_10 = lean_array_fget(x_3, x_5); +x_11 = l_Lean_Meta_DiscrTree_Key_hash(x_9); +x_12 = lean_uint64_to_usize(x_11); +x_13 = 1; +x_14 = lean_usize_sub(x_1, x_13); +x_15 = 5; +x_16 = lean_usize_mul(x_15, x_14); +x_17 = lean_usize_shift_right(x_12, x_16); +x_18 = lean_unsigned_to_nat(1u); +x_19 = lean_nat_add(x_5, x_18); +lean_dec(x_5); +x_20 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_6, x_17, x_1, x_9, x_10); +x_4 = lean_box(0); +x_5 = x_19; +x_6 = x_20; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_addSimpTheoremEntry___spec__8(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, 0); +lean_inc(x_5); +x_6 = lean_ctor_get(x_1, 1); +lean_inc(x_6); +x_7 = lean_array_get_size(x_5); +x_8 = lean_nat_dec_lt(x_2, x_7); +lean_dec(x_7); +if (x_8 == 0) +{ +uint8_t x_9; +lean_dec(x_2); +x_9 = !lean_is_exclusive(x_1); +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_1, 1); +lean_dec(x_10); +x_11 = lean_ctor_get(x_1, 0); +lean_dec(x_11); +x_12 = lean_array_push(x_5, x_3); +x_13 = lean_array_push(x_6, x_4); +lean_ctor_set(x_1, 1, x_13); +lean_ctor_set(x_1, 0, x_12); +return x_1; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_dec(x_1); +x_14 = lean_array_push(x_5, x_3); +x_15 = lean_array_push(x_6, x_4); +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; +} +} +else +{ +lean_object* x_17; uint8_t x_18; +x_17 = lean_array_fget(x_5, x_2); +x_18 = l___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_3, x_17); +lean_dec(x_17); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; +lean_dec(x_6); +lean_dec(x_5); +x_19 = lean_unsigned_to_nat(1u); +x_20 = lean_nat_add(x_2, x_19); +lean_dec(x_2); +x_2 = x_20; +goto _start; +} +else +{ +uint8_t x_22; +x_22 = !lean_is_exclusive(x_1); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = lean_ctor_get(x_1, 1); +lean_dec(x_23); +x_24 = lean_ctor_get(x_1, 0); +lean_dec(x_24); +x_25 = lean_array_fset(x_5, x_2, x_3); +x_26 = lean_array_fset(x_6, x_2, x_4); +lean_dec(x_2); +lean_ctor_set(x_1, 1, x_26); +lean_ctor_set(x_1, 0, x_25); +return x_1; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_1); +x_27 = lean_array_fset(x_5, x_2, x_3); +x_28 = lean_array_fset(x_6, x_2, x_4); +lean_dec(x_2); +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_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +uint8_t x_6; +x_6 = !lean_is_exclusive(x_1); +if (x_6 == 0) +{ +lean_object* x_7; size_t x_8; size_t x_9; size_t x_10; size_t x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_7 = lean_ctor_get(x_1, 0); +x_8 = 1; +x_9 = 5; +x_10 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__2; +x_11 = lean_usize_land(x_2, x_10); +x_12 = lean_usize_to_nat(x_11); +x_13 = lean_array_get_size(x_7); +x_14 = lean_nat_dec_lt(x_12, x_13); +lean_dec(x_13); +if (x_14 == 0) +{ +lean_dec(x_12); +lean_dec(x_5); +lean_dec(x_4); +return x_1; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_array_fget(x_7, x_12); +x_16 = lean_box(0); +x_17 = lean_array_fset(x_7, x_12, x_16); +switch (lean_obj_tag(x_15)) { +case 0: +{ +uint8_t x_18; +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, 0); +x_20 = lean_ctor_get(x_15, 1); +x_21 = l___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_4, x_19); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_free_object(x_15); +x_22 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_19, x_20, x_4, x_5); +x_23 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_23, 0, x_22); +x_24 = lean_array_fset(x_17, x_12, x_23); +lean_dec(x_12); +lean_ctor_set(x_1, 0, x_24); +return x_1; +} +else +{ +lean_object* x_25; +lean_dec(x_20); +lean_dec(x_19); +lean_ctor_set(x_15, 1, x_5); +lean_ctor_set(x_15, 0, x_4); +x_25 = lean_array_fset(x_17, x_12, x_15); +lean_dec(x_12); +lean_ctor_set(x_1, 0, x_25); +return x_1; +} +} +else +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_15, 0); +x_27 = lean_ctor_get(x_15, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_15); +x_28 = l___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_4, x_26); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_29 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_26, x_27, x_4, x_5); +x_30 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_30, 0, x_29); +x_31 = lean_array_fset(x_17, x_12, x_30); +lean_dec(x_12); +lean_ctor_set(x_1, 0, x_31); +return x_1; +} +else +{ +lean_object* x_32; lean_object* x_33; +lean_dec(x_27); +lean_dec(x_26); +x_32 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_32, 0, x_4); +lean_ctor_set(x_32, 1, x_5); +x_33 = lean_array_fset(x_17, x_12, x_32); +lean_dec(x_12); +lean_ctor_set(x_1, 0, x_33); +return x_1; +} +} +} +case 1: +{ +uint8_t x_34; +x_34 = !lean_is_exclusive(x_15); +if (x_34 == 0) +{ +lean_object* x_35; size_t x_36; size_t x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_15, 0); +x_36 = lean_usize_shift_right(x_2, x_9); +x_37 = lean_usize_add(x_3, x_8); +x_38 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_35, x_36, x_37, x_4, x_5); +lean_ctor_set(x_15, 0, x_38); +x_39 = lean_array_fset(x_17, x_12, x_15); +lean_dec(x_12); +lean_ctor_set(x_1, 0, x_39); +return x_1; +} +else +{ +lean_object* x_40; size_t x_41; size_t x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_40 = lean_ctor_get(x_15, 0); +lean_inc(x_40); +lean_dec(x_15); +x_41 = lean_usize_shift_right(x_2, x_9); +x_42 = lean_usize_add(x_3, x_8); +x_43 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_40, x_41, x_42, x_4, x_5); +x_44 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_44, 0, x_43); +x_45 = lean_array_fset(x_17, x_12, x_44); +lean_dec(x_12); +lean_ctor_set(x_1, 0, x_45); +return x_1; +} +} +default: +{ +lean_object* x_46; lean_object* x_47; +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_4); +lean_ctor_set(x_46, 1, x_5); +x_47 = lean_array_fset(x_17, x_12, x_46); +lean_dec(x_12); +lean_ctor_set(x_1, 0, x_47); +return x_1; +} +} +} +} +else +{ +lean_object* x_48; size_t x_49; size_t x_50; size_t x_51; size_t x_52; lean_object* x_53; lean_object* x_54; uint8_t x_55; +x_48 = lean_ctor_get(x_1, 0); +lean_inc(x_48); +lean_dec(x_1); +x_49 = 1; +x_50 = 5; +x_51 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__2; +x_52 = lean_usize_land(x_2, x_51); +x_53 = lean_usize_to_nat(x_52); +x_54 = lean_array_get_size(x_48); +x_55 = lean_nat_dec_lt(x_53, x_54); +lean_dec(x_54); +if (x_55 == 0) +{ +lean_object* x_56; +lean_dec(x_53); +lean_dec(x_5); +lean_dec(x_4); +x_56 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_56, 0, x_48); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_57 = lean_array_fget(x_48, x_53); +x_58 = lean_box(0); +x_59 = lean_array_fset(x_48, x_53, x_58); +switch (lean_obj_tag(x_57)) { +case 0: +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_60 = lean_ctor_get(x_57, 0); +lean_inc(x_60); +x_61 = lean_ctor_get(x_57, 1); +lean_inc(x_61); +if (lean_is_exclusive(x_57)) { + lean_ctor_release(x_57, 0); + lean_ctor_release(x_57, 1); + x_62 = x_57; +} else { + lean_dec_ref(x_57); + x_62 = lean_box(0); +} +x_63 = l___private_Lean_Meta_DiscrTreeTypes_0__Lean_Meta_DiscrTree_beqKey____x40_Lean_Meta_DiscrTreeTypes___hyg_99_(x_4, 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_62); +x_64 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_60, x_61, x_4, x_5); +x_65 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_65, 0, x_64); +x_66 = lean_array_fset(x_59, x_53, x_65); +lean_dec(x_53); +x_67 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_67, 0, x_66); +return x_67; +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; +lean_dec(x_61); +lean_dec(x_60); +if (lean_is_scalar(x_62)) { + x_68 = lean_alloc_ctor(0, 2, 0); +} else { + x_68 = x_62; +} +lean_ctor_set(x_68, 0, x_4); +lean_ctor_set(x_68, 1, x_5); +x_69 = lean_array_fset(x_59, x_53, x_68); +lean_dec(x_53); +x_70 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_70, 0, x_69); +return x_70; +} +} +case 1: +{ +lean_object* x_71; lean_object* x_72; size_t x_73; size_t x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_71 = lean_ctor_get(x_57, 0); +lean_inc(x_71); +if (lean_is_exclusive(x_57)) { + lean_ctor_release(x_57, 0); + x_72 = x_57; +} else { + lean_dec_ref(x_57); + x_72 = lean_box(0); +} +x_73 = lean_usize_shift_right(x_2, x_50); +x_74 = lean_usize_add(x_3, x_49); +x_75 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_71, x_73, x_74, x_4, x_5); +if (lean_is_scalar(x_72)) { + x_76 = lean_alloc_ctor(1, 1, 0); +} else { + x_76 = x_72; +} +lean_ctor_set(x_76, 0, x_75); +x_77 = lean_array_fset(x_59, x_53, x_76); +lean_dec(x_53); +x_78 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_78, 0, x_77); +return x_78; +} +default: +{ +lean_object* x_79; lean_object* x_80; lean_object* x_81; +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 = lean_array_fset(x_59, x_53, x_79); +lean_dec(x_53); +x_81 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_81, 0, x_80); +return x_81; +} +} +} +} +} +else +{ +uint8_t x_82; +x_82 = !lean_is_exclusive(x_1); +if (x_82 == 0) +{ +lean_object* x_83; lean_object* x_84; size_t x_85; uint8_t x_86; +x_83 = lean_unsigned_to_nat(0u); +x_84 = l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_addSimpTheoremEntry___spec__8(x_1, x_83, x_4, x_5); +x_85 = 7; +x_86 = lean_usize_dec_le(x_85, x_3); +if (x_86 == 0) +{ +lean_object* x_87; lean_object* x_88; uint8_t x_89; +x_87 = l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(x_84); +x_88 = lean_unsigned_to_nat(4u); +x_89 = lean_nat_dec_lt(x_87, x_88); +lean_dec(x_87); +if (x_89 == 0) { -uint8_t x_18; -x_18 = 0; -return x_18; -} -} +lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +x_90 = lean_ctor_get(x_84, 0); +lean_inc(x_90); +x_91 = lean_ctor_get(x_84, 1); +lean_inc(x_91); +lean_dec(x_84); +x_92 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5___closed__1; +x_93 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry___spec__7(x_3, x_90, x_91, lean_box(0), x_83, x_92); +lean_dec(x_91); +lean_dec(x_90); +return x_93; } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_19 = lean_ctor_get(x_1, 0); -lean_inc(x_19); -x_20 = lean_ctor_get(x_1, 1); -lean_inc(x_20); -lean_dec(x_1); -x_21 = lean_unsigned_to_nat(0u); -x_22 = l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_SimpTheorems_isLemma___spec__3(x_19, x_20, lean_box(0), x_21, x_3); -lean_dec(x_20); -lean_dec(x_19); -return x_22; -} +return x_84; } } -LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_isLemma___spec__1(lean_object* x_1, lean_object* x_2) { -_start: +else { -lean_object* x_3; lean_object* x_4; uint64_t x_5; size_t x_6; uint8_t x_7; -x_3 = lean_ctor_get(x_1, 0); -lean_inc(x_3); -lean_dec(x_1); -x_4 = l_Lean_Meta_Origin_key(x_2); -x_5 = l_Lean_Name_hash___override(x_4); -lean_dec(x_4); -x_6 = lean_uint64_to_usize(x_5); -x_7 = l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_SimpTheorems_isLemma___spec__2(x_3, x_6, x_2); -lean_dec(x_2); -return x_7; +return x_84; } } -LEAN_EXPORT uint8_t l_Lean_Meta_SimpTheorems_isLemma(lean_object* x_1, lean_object* x_2) { -_start: +else { -lean_object* x_3; uint8_t x_4; -x_3 = lean_ctor_get(x_1, 2); -lean_inc(x_3); +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; size_t x_99; uint8_t x_100; +x_94 = lean_ctor_get(x_1, 0); +x_95 = lean_ctor_get(x_1, 1); +lean_inc(x_95); +lean_inc(x_94); lean_dec(x_1); -x_4 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_isLemma___spec__1(x_3, x_2); -return x_4; -} -} -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_SimpTheorems_isLemma___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: +x_96 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_96, 0, x_94); +lean_ctor_set(x_96, 1, x_95); +x_97 = lean_unsigned_to_nat(0u); +x_98 = l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_addSimpTheoremEntry___spec__8(x_96, x_97, x_4, x_5); +x_99 = 7; +x_100 = lean_usize_dec_le(x_99, x_3); +if (x_100 == 0) { -uint8_t x_6; lean_object* x_7; -x_6 = l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_SimpTheorems_isLemma___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_object* x_101; lean_object* x_102; uint8_t x_103; +x_101 = l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(x_98); +x_102 = lean_unsigned_to_nat(4u); +x_103 = lean_nat_dec_lt(x_101, x_102); +lean_dec(x_101); +if (x_103 == 0) +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_104 = lean_ctor_get(x_98, 0); +lean_inc(x_104); +x_105 = lean_ctor_get(x_98, 1); +lean_inc(x_105); +lean_dec(x_98); +x_106 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5___closed__1; +x_107 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry___spec__7(x_3, x_104, x_105, lean_box(0), x_97, x_106); +lean_dec(x_105); +lean_dec(x_104); +return x_107; } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_SimpTheorems_isLemma___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: +else { -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_SimpTheorems_isLemma___spec__2(x_1, x_4, x_3); -lean_dec(x_3); -x_6 = lean_box(x_5); -return x_6; +return x_98; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_isLemma___spec__1___boxed(lean_object* x_1, lean_object* x_2) { -_start: +else { -uint8_t x_3; lean_object* x_4; -x_3 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_isLemma___spec__1(x_1, x_2); -x_4 = lean_box(x_3); -return x_4; +return x_98; } } -LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_isLemma___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -uint8_t x_3; lean_object* x_4; -x_3 = l_Lean_Meta_SimpTheorems_isLemma(x_1, x_2); -x_4 = lean_box(x_3); -return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_registerDeclToUnfoldThms(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { uint8_t x_4; x_4 = !lean_is_exclusive(x_1); if (x_4 == 0) { -lean_object* x_5; lean_object* x_6; -x_5 = lean_ctor_get(x_1, 5); -x_6 = l_Lean_PersistentHashMap_insert___at___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___spec__1(x_5, x_2, x_3); -lean_ctor_set(x_1, 5, x_6); +lean_object* x_5; lean_object* x_6; uint64_t x_7; size_t x_8; size_t x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_5 = lean_ctor_get(x_1, 0); +x_6 = lean_ctor_get(x_1, 1); +x_7 = l_Lean_Meta_DiscrTree_Key_hash(x_2); +x_8 = lean_uint64_to_usize(x_7); +x_9 = 1; +x_10 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_5, x_8, x_9, x_2, x_3); +x_11 = lean_unsigned_to_nat(1u); +x_12 = lean_nat_add(x_6, x_11); +lean_dec(x_6); +lean_ctor_set(x_1, 1, x_12); +lean_ctor_set(x_1, 0, x_10); return x_1; } else { -lean_object* x_7; lean_object* x_8; 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_ctor_get(x_1, 0); -x_8 = lean_ctor_get(x_1, 1); -x_9 = lean_ctor_get(x_1, 2); -x_10 = lean_ctor_get(x_1, 3); -x_11 = lean_ctor_get(x_1, 4); -x_12 = lean_ctor_get(x_1, 5); -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_object* x_13; lean_object* x_14; uint64_t x_15; size_t x_16; size_t x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +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_13 = l_Lean_PersistentHashMap_insert___at___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___spec__1(x_12, x_2, x_3); -x_14 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_14, 0, x_7); -lean_ctor_set(x_14, 1, x_8); -lean_ctor_set(x_14, 2, x_9); -lean_ctor_set(x_14, 3, x_10); -lean_ctor_set(x_14, 4, x_11); -lean_ctor_set(x_14, 5, x_13); -return x_14; +x_15 = l_Lean_Meta_DiscrTree_Key_hash(x_2); +x_16 = lean_uint64_to_usize(x_15); +x_17 = 1; +x_18 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_13, x_16, x_17, x_2, x_3); +x_19 = lean_unsigned_to_nat(1u); +x_20 = lean_nat_add(x_14, x_19); +lean_dec(x_14); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_18); +lean_ctor_set(x_21, 1, x_20); +return x_21; } } } -LEAN_EXPORT lean_object* l_Array_indexOfAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertVal_loop___at_Lean_Meta_addSimpTheoremEntry___spec__10(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; uint8_t x_5; @@ -4887,17 +8337,19 @@ if (x_5 == 0) { lean_object* x_6; lean_dec(x_3); -x_6 = lean_box(0); +x_6 = lean_array_push(x_1, x_2); return x_6; } else { lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; x_7 = lean_array_fget(x_1, x_3); -x_8 = l_Lean_Meta_Origin_key(x_7); +x_8 = lean_ctor_get(x_2, 2); +lean_inc(x_8); +x_9 = lean_ctor_get(x_7, 2); +lean_inc(x_9); lean_dec(x_7); -x_9 = l_Lean_Meta_Origin_key(x_2); -x_10 = lean_name_eq(x_8, x_9); +x_10 = lean_expr_eqv(x_8, x_9); lean_dec(x_9); lean_dec(x_8); if (x_10 == 0) @@ -4907,994 +8359,938 @@ x_11 = lean_unsigned_to_nat(1u); x_12 = lean_nat_add(x_3, x_11); lean_dec(x_3); x_3 = x_12; -goto _start; -} -else -{ -lean_object* x_14; -x_14 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_14, 0, x_3); -return x_14; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___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); -x_5 = 5; -x_6 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___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); -switch (lean_obj_tag(x_10)) { -case 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); -lean_dec(x_10); -x_12 = l_Lean_Meta_Origin_key(x_3); -x_13 = l_Lean_Meta_Origin_key(x_11); -lean_dec(x_11); -x_14 = lean_name_eq(x_12, x_13); -lean_dec(x_13); -lean_dec(x_12); -if (x_14 == 0) -{ -uint8_t x_15; lean_object* x_16; lean_object* x_17; -lean_dec(x_8); -lean_dec(x_4); -x_15 = 0; -x_16 = lean_box(x_15); -x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_1); -lean_ctor_set(x_17, 1, x_16); -return x_17; -} -else -{ -uint8_t x_18; -x_18 = !lean_is_exclusive(x_1); -if (x_18 == 0) -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_1, 0); -lean_dec(x_19); -x_20 = lean_array_set(x_4, x_8, x_9); -lean_dec(x_8); -lean_ctor_set(x_1, 0, x_20); -x_21 = 1; -x_22 = lean_box(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); -return x_23; -} -else -{ -lean_object* x_24; lean_object* x_25; uint8_t x_26; lean_object* x_27; lean_object* x_28; -lean_dec(x_1); -x_24 = lean_array_set(x_4, x_8, x_9); -lean_dec(x_8); -x_25 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_25, 0, x_24); -x_26 = 1; -x_27 = lean_box(x_26); -x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_25); -lean_ctor_set(x_28, 1, x_27); -return x_28; -} -} -} -case 1: -{ -uint8_t x_29; -x_29 = !lean_is_exclusive(x_10); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; size_t x_32; lean_object* x_33; lean_object* x_34; uint8_t x_35; -x_30 = lean_ctor_get(x_10, 0); -x_31 = lean_array_set(x_4, x_8, x_9); -x_32 = lean_usize_shift_right(x_2, x_5); -x_33 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2(x_30, x_32, x_3); -x_34 = lean_ctor_get(x_33, 1); -lean_inc(x_34); -x_35 = lean_unbox(x_34); -lean_dec(x_34); -if (x_35 == 0) -{ -uint8_t x_36; -lean_dec(x_31); -lean_free_object(x_10); -lean_dec(x_8); -x_36 = !lean_is_exclusive(x_33); -if (x_36 == 0) -{ -lean_object* x_37; lean_object* x_38; uint8_t x_39; lean_object* x_40; -x_37 = lean_ctor_get(x_33, 1); -lean_dec(x_37); -x_38 = lean_ctor_get(x_33, 0); -lean_dec(x_38); -x_39 = 0; -x_40 = lean_box(x_39); -lean_ctor_set(x_33, 1, x_40); -lean_ctor_set(x_33, 0, x_1); -return x_33; +goto _start; } else { -uint8_t x_41; lean_object* x_42; lean_object* x_43; -lean_dec(x_33); -x_41 = 0; -x_42 = lean_box(x_41); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_1); -lean_ctor_set(x_43, 1, x_42); -return x_43; +lean_object* x_14; +x_14 = lean_array_fset(x_1, x_3, x_2); +lean_dec(x_3); +return x_14; } } -else +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_BinSearch_0__Array_binInsertAux___at_Lean_Meta_addSimpTheoremEntry___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) { +_start: { -uint8_t x_44; -x_44 = !lean_is_exclusive(x_1); -if (x_44 == 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; +x_9 = lean_nat_add(x_7, x_8); +x_10 = lean_unsigned_to_nat(2u); +x_11 = lean_nat_div(x_9, x_10); +lean_dec(x_9); +lean_inc(x_6); +x_12 = lean_array_get(x_6, x_5, x_11); +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +lean_dec(x_12); +x_14 = lean_ctor_get(x_6, 0); +lean_inc(x_14); +x_15 = l_Lean_Meta_DiscrTree_Key_lt(x_13, x_14); +if (x_15 == 0) { -lean_object* x_45; uint8_t x_46; -x_45 = lean_ctor_get(x_1, 0); -lean_dec(x_45); -x_46 = !lean_is_exclusive(x_33); -if (x_46 == 0) +uint8_t x_16; +lean_dec(x_8); +x_16 = l_Lean_Meta_DiscrTree_Key_lt(x_14, x_13); +lean_dec(x_13); +lean_dec(x_14); +if (x_16 == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_47 = lean_ctor_get(x_33, 0); -x_48 = lean_ctor_get(x_33, 1); -lean_dec(x_48); -lean_inc(x_47); -x_49 = l_Lean_PersistentHashMap_isUnaryNode___rarg(x_47); -if (lean_obj_tag(x_49) == 0) +lean_object* x_17; uint8_t x_18; +lean_dec(x_7); +lean_dec(x_6); +x_17 = lean_array_get_size(x_5); +x_18 = lean_nat_dec_lt(x_11, x_17); +lean_dec(x_17); +if (x_18 == 0) { -lean_object* x_50; uint8_t x_51; lean_object* x_52; -lean_ctor_set(x_10, 0, x_47); -x_50 = lean_array_set(x_31, x_8, x_10); -lean_dec(x_8); -lean_ctor_set(x_1, 0, x_50); -x_51 = 1; -x_52 = lean_box(x_51); -lean_ctor_set(x_33, 1, x_52); -lean_ctor_set(x_33, 0, x_1); -return x_33; +lean_dec(x_11); +lean_dec(x_4); +lean_dec(x_2); +return x_5; } else { -lean_object* x_53; uint8_t x_54; -lean_free_object(x_33); -lean_dec(x_47); -lean_free_object(x_10); -x_53 = lean_ctor_get(x_49, 0); -lean_inc(x_53); -lean_dec(x_49); -x_54 = !lean_is_exclusive(x_53); -if (x_54 == 0) +lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_19 = lean_array_fget(x_5, x_11); +x_20 = lean_box(0); +x_21 = lean_array_fset(x_5, x_11, x_20); +x_22 = !lean_is_exclusive(x_19); +if (x_22 == 0) { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; uint8_t x_59; lean_object* x_60; -x_55 = lean_ctor_get(x_53, 0); -x_56 = lean_ctor_get(x_53, 1); -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_array_set(x_31, x_8, x_57); -lean_dec(x_8); -lean_ctor_set(x_1, 0, x_58); -x_59 = 1; -x_60 = lean_box(x_59); -lean_ctor_set(x_53, 1, x_60); -lean_ctor_set(x_53, 0, x_1); -return x_53; +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_19, 1); +x_24 = lean_ctor_get(x_19, 0); +lean_dec(x_24); +x_25 = lean_unsigned_to_nat(1u); +x_26 = lean_nat_add(x_3, x_25); +x_27 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_26, x_23); +lean_dec(x_26); +lean_ctor_set(x_19, 1, x_27); +lean_ctor_set(x_19, 0, x_4); +x_28 = lean_array_fset(x_21, x_11, x_19); +lean_dec(x_11); +return x_28; } else { -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; lean_object* x_66; lean_object* x_67; -x_61 = lean_ctor_get(x_53, 0); -x_62 = lean_ctor_get(x_53, 1); -lean_inc(x_62); -lean_inc(x_61); -lean_dec(x_53); -x_63 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_63, 0, x_61); -lean_ctor_set(x_63, 1, x_62); -x_64 = lean_array_set(x_31, x_8, x_63); -lean_dec(x_8); -lean_ctor_set(x_1, 0, x_64); -x_65 = 1; -x_66 = lean_box(x_65); -x_67 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_67, 0, x_1); -lean_ctor_set(x_67, 1, x_66); -return x_67; +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_19, 1); +lean_inc(x_29); +lean_dec(x_19); +x_30 = lean_unsigned_to_nat(1u); +x_31 = lean_nat_add(x_3, x_30); +x_32 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_31, x_29); +lean_dec(x_31); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_4); +lean_ctor_set(x_33, 1, x_32); +x_34 = lean_array_fset(x_21, x_11, x_33); +lean_dec(x_11); +return x_34; } } } else { -lean_object* x_68; lean_object* x_69; -x_68 = lean_ctor_get(x_33, 0); -lean_inc(x_68); -lean_dec(x_33); -lean_inc(x_68); -x_69 = l_Lean_PersistentHashMap_isUnaryNode___rarg(x_68); -if (lean_obj_tag(x_69) == 0) -{ -lean_object* x_70; uint8_t x_71; lean_object* x_72; lean_object* x_73; -lean_ctor_set(x_10, 0, x_68); -x_70 = lean_array_set(x_31, x_8, x_10); -lean_dec(x_8); -lean_ctor_set(x_1, 0, x_70); -x_71 = 1; -x_72 = lean_box(x_71); -x_73 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_73, 0, x_1); -lean_ctor_set(x_73, 1, x_72); -return x_73; +x_8 = x_11; +goto _start; +} } else { -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; -lean_dec(x_68); -lean_free_object(x_10); -x_74 = lean_ctor_get(x_69, 0); -lean_inc(x_74); -lean_dec(x_69); -x_75 = lean_ctor_get(x_74, 0); -lean_inc(x_75); -x_76 = lean_ctor_get(x_74, 1); -lean_inc(x_76); -if (lean_is_exclusive(x_74)) { - lean_ctor_release(x_74, 0); - lean_ctor_release(x_74, 1); - x_77 = x_74; -} else { - lean_dec_ref(x_74); - x_77 = lean_box(0); +uint8_t x_36; +lean_dec(x_14); +lean_dec(x_13); +x_36 = lean_nat_dec_eq(x_11, x_7); +if (x_36 == 0) +{ +lean_dec(x_7); +x_7 = x_11; +goto _start; } -x_78 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_78, 0, x_75); -lean_ctor_set(x_78, 1, x_76); -x_79 = lean_array_set(x_31, x_8, x_78); +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_dec(x_11); lean_dec(x_8); -lean_ctor_set(x_1, 0, x_79); -x_80 = 1; -x_81 = lean_box(x_80); -if (lean_is_scalar(x_77)) { - x_82 = lean_alloc_ctor(0, 2, 0); -} else { - x_82 = x_77; +lean_dec(x_6); +x_38 = lean_unsigned_to_nat(1u); +x_39 = lean_nat_add(x_3, x_38); +x_40 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(x_1, x_2, x_39); +lean_dec(x_39); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_4); +lean_ctor_set(x_41, 1, x_40); +x_42 = lean_nat_add(x_7, x_38); +lean_dec(x_7); +x_43 = l_Array_insertAt_x21___rarg(x_5, x_42, x_41); +lean_dec(x_42); +return x_43; } -lean_ctor_set(x_82, 0, x_1); -lean_ctor_set(x_82, 1, x_81); -return x_82; } } } -else +LEAN_EXPORT lean_object* l_Array_binInsertM___at_Lean_Meta_addSimpTheoremEntry___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) { +_start: { -lean_object* x_83; lean_object* x_84; lean_object* x_85; -lean_dec(x_1); -x_83 = lean_ctor_get(x_33, 0); -lean_inc(x_83); -if (lean_is_exclusive(x_33)) { - lean_ctor_release(x_33, 0); - lean_ctor_release(x_33, 1); - x_84 = x_33; -} else { - lean_dec_ref(x_33); - x_84 = lean_box(0); -} -lean_inc(x_83); -x_85 = l_Lean_PersistentHashMap_isUnaryNode___rarg(x_83); -if (lean_obj_tag(x_85) == 0) +uint8_t x_7; +x_7 = l_Array_isEmpty___rarg(x_5); +if (x_7 == 0) { -lean_object* x_86; lean_object* x_87; uint8_t x_88; lean_object* x_89; lean_object* x_90; -lean_ctor_set(x_10, 0, x_83); -x_86 = lean_array_set(x_31, x_8, x_10); -lean_dec(x_8); -x_87 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_87, 0, x_86); -x_88 = 1; -x_89 = lean_box(x_88); -if (lean_is_scalar(x_84)) { - x_90 = lean_alloc_ctor(0, 2, 0); -} else { - x_90 = x_84; -} -lean_ctor_set(x_90, 0, x_87); -lean_ctor_set(x_90, 1, x_89); -return x_90; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_8 = lean_unsigned_to_nat(0u); +lean_inc(x_6); +x_9 = lean_array_get(x_6, x_5, x_8); +x_10 = lean_ctor_get(x_6, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +lean_dec(x_9); +x_12 = l_Lean_Meta_DiscrTree_Key_lt(x_10, x_11); +if (x_12 == 0) +{ +uint8_t x_13; +x_13 = l_Lean_Meta_DiscrTree_Key_lt(x_11, x_10); +lean_dec(x_11); +if (x_13 == 0) +{ +lean_object* x_14; uint8_t x_15; +lean_dec(x_10); +lean_dec(x_6); +x_14 = lean_array_get_size(x_5); +x_15 = lean_nat_dec_lt(x_8, x_14); +lean_dec(x_14); +if (x_15 == 0) +{ +lean_dec(x_4); +lean_dec(x_2); +return x_5; } else { -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; uint8_t x_98; lean_object* x_99; lean_object* x_100; -lean_dec(x_84); -lean_dec(x_83); -lean_free_object(x_10); -x_91 = lean_ctor_get(x_85, 0); -lean_inc(x_91); -lean_dec(x_85); -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; -} else { - lean_dec_ref(x_91); - x_94 = lean_box(0); -} -x_95 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_95, 0, x_92); -lean_ctor_set(x_95, 1, x_93); -x_96 = lean_array_set(x_31, x_8, x_95); -lean_dec(x_8); -x_97 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_97, 0, x_96); -x_98 = 1; -x_99 = lean_box(x_98); -if (lean_is_scalar(x_94)) { - x_100 = lean_alloc_ctor(0, 2, 0); -} else { - x_100 = x_94; -} -lean_ctor_set(x_100, 0, x_97); -lean_ctor_set(x_100, 1, x_99); -return x_100; +lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; +x_16 = lean_array_fget(x_5, x_8); +x_17 = lean_box(0); +x_18 = lean_array_fset(x_5, x_8, x_17); +x_19 = !lean_is_exclusive(x_16); +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; +x_20 = lean_ctor_get(x_16, 1); +x_21 = lean_ctor_get(x_16, 0); +lean_dec(x_21); +x_22 = lean_unsigned_to_nat(1u); +x_23 = lean_nat_add(x_3, x_22); +x_24 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_23, x_20); +lean_dec(x_23); +lean_ctor_set(x_16, 1, x_24); +lean_ctor_set(x_16, 0, x_4); +x_25 = lean_array_fset(x_18, x_8, x_16); +return x_25; } +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_16, 1); +lean_inc(x_26); +lean_dec(x_16); +x_27 = lean_unsigned_to_nat(1u); +x_28 = lean_nat_add(x_3, x_27); +x_29 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_28, x_26); +lean_dec(x_28); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_4); +lean_ctor_set(x_30, 1, x_29); +x_31 = lean_array_fset(x_18, x_8, x_30); +return x_31; } } } else { -lean_object* x_101; lean_object* x_102; size_t x_103; lean_object* x_104; lean_object* x_105; uint8_t x_106; -x_101 = lean_ctor_get(x_10, 0); -lean_inc(x_101); +lean_object* x_32; lean_object* x_33; uint8_t x_34; +lean_inc(x_6); +x_32 = l_Array_back___rarg(x_6, x_5); +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +lean_dec(x_32); +x_34 = l_Lean_Meta_DiscrTree_Key_lt(x_33, x_10); +if (x_34 == 0) +{ +uint8_t x_35; +x_35 = l_Lean_Meta_DiscrTree_Key_lt(x_10, x_33); +lean_dec(x_33); lean_dec(x_10); -x_102 = lean_array_set(x_4, x_8, x_9); -x_103 = lean_usize_shift_right(x_2, x_5); -x_104 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2(x_101, x_103, x_3); -x_105 = lean_ctor_get(x_104, 1); -lean_inc(x_105); -x_106 = lean_unbox(x_105); -lean_dec(x_105); -if (x_106 == 0) +if (x_35 == 0) { -lean_object* x_107; uint8_t x_108; lean_object* x_109; lean_object* x_110; -lean_dec(x_102); -lean_dec(x_8); -if (lean_is_exclusive(x_104)) { - lean_ctor_release(x_104, 0); - lean_ctor_release(x_104, 1); - x_107 = x_104; -} else { - lean_dec_ref(x_104); - x_107 = lean_box(0); -} -x_108 = 0; -x_109 = lean_box(x_108); -if (lean_is_scalar(x_107)) { - x_110 = lean_alloc_ctor(0, 2, 0); -} else { - x_110 = x_107; -} -lean_ctor_set(x_110, 0, x_1); -lean_ctor_set(x_110, 1, x_109); -return x_110; +lean_object* x_36; lean_object* x_37; lean_object* x_38; uint8_t x_39; +lean_dec(x_6); +x_36 = lean_array_get_size(x_5); +x_37 = lean_unsigned_to_nat(1u); +x_38 = lean_nat_sub(x_36, x_37); +x_39 = lean_nat_dec_lt(x_38, x_36); +lean_dec(x_36); +if (x_39 == 0) +{ +lean_dec(x_38); +lean_dec(x_4); +lean_dec(x_2); +return x_5; } else { -lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; -if (lean_is_exclusive(x_1)) { - lean_ctor_release(x_1, 0); - x_111 = x_1; -} else { - lean_dec_ref(x_1); - x_111 = lean_box(0); -} -x_112 = lean_ctor_get(x_104, 0); -lean_inc(x_112); -if (lean_is_exclusive(x_104)) { - lean_ctor_release(x_104, 0); - lean_ctor_release(x_104, 1); - x_113 = x_104; -} else { - lean_dec_ref(x_104); - x_113 = lean_box(0); -} -lean_inc(x_112); -x_114 = l_Lean_PersistentHashMap_isUnaryNode___rarg(x_112); -if (lean_obj_tag(x_114) == 0) +lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_40 = lean_array_fget(x_5, x_38); +x_41 = lean_box(0); +x_42 = lean_array_fset(x_5, x_38, x_41); +x_43 = !lean_is_exclusive(x_40); +if (x_43 == 0) { -lean_object* x_115; lean_object* x_116; lean_object* x_117; uint8_t x_118; lean_object* x_119; lean_object* x_120; -x_115 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_115, 0, x_112); -x_116 = lean_array_set(x_102, x_8, x_115); -lean_dec(x_8); -if (lean_is_scalar(x_111)) { - x_117 = lean_alloc_ctor(0, 1, 0); -} else { - x_117 = x_111; -} -lean_ctor_set(x_117, 0, x_116); -x_118 = 1; -x_119 = lean_box(x_118); -if (lean_is_scalar(x_113)) { - x_120 = lean_alloc_ctor(0, 2, 0); -} else { - x_120 = x_113; -} -lean_ctor_set(x_120, 0, x_117); -lean_ctor_set(x_120, 1, x_119); -return x_120; +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_40, 1); +x_45 = lean_ctor_get(x_40, 0); +lean_dec(x_45); +x_46 = lean_nat_add(x_3, x_37); +x_47 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_46, x_44); +lean_dec(x_46); +lean_ctor_set(x_40, 1, x_47); +lean_ctor_set(x_40, 0, x_4); +x_48 = lean_array_fset(x_42, x_38, x_40); +lean_dec(x_38); +return x_48; } else { -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; uint8_t x_128; lean_object* x_129; lean_object* x_130; -lean_dec(x_113); -lean_dec(x_112); -x_121 = lean_ctor_get(x_114, 0); -lean_inc(x_121); -lean_dec(x_114); -x_122 = lean_ctor_get(x_121, 0); -lean_inc(x_122); -x_123 = lean_ctor_get(x_121, 1); -lean_inc(x_123); -if (lean_is_exclusive(x_121)) { - lean_ctor_release(x_121, 0); - lean_ctor_release(x_121, 1); - x_124 = x_121; -} else { - lean_dec_ref(x_121); - x_124 = lean_box(0); -} -x_125 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_125, 0, x_122); -lean_ctor_set(x_125, 1, x_123); -x_126 = lean_array_set(x_102, x_8, x_125); -lean_dec(x_8); -if (lean_is_scalar(x_111)) { - x_127 = lean_alloc_ctor(0, 1, 0); -} else { - x_127 = x_111; -} -lean_ctor_set(x_127, 0, x_126); -x_128 = 1; -x_129 = lean_box(x_128); -if (lean_is_scalar(x_124)) { - x_130 = lean_alloc_ctor(0, 2, 0); -} else { - x_130 = x_124; +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_40, 1); +lean_inc(x_49); +lean_dec(x_40); +x_50 = lean_nat_add(x_3, x_37); +x_51 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_50, x_49); +lean_dec(x_50); +x_52 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_52, 0, x_4); +lean_ctor_set(x_52, 1, x_51); +x_53 = lean_array_fset(x_42, x_38, x_52); +lean_dec(x_38); +return x_53; } -lean_ctor_set(x_130, 0, x_127); -lean_ctor_set(x_130, 1, x_129); -return x_130; } } +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_54 = lean_array_get_size(x_5); +x_55 = lean_unsigned_to_nat(1u); +x_56 = lean_nat_sub(x_54, x_55); +lean_dec(x_54); +x_57 = l___private_Init_Data_Array_BinSearch_0__Array_binInsertAux___at_Lean_Meta_addSimpTheoremEntry___spec__12(x_1, x_2, x_3, x_4, x_5, x_6, x_8, x_56); +return x_57; } } -default: +else { -uint8_t x_131; lean_object* x_132; lean_object* x_133; -lean_dec(x_8); -lean_dec(x_4); -x_131 = 0; -x_132 = lean_box(x_131); -x_133 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_133, 0, x_1); -lean_ctor_set(x_133, 1, x_132); -return x_133; +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_33); +lean_dec(x_10); +lean_dec(x_6); +x_58 = lean_unsigned_to_nat(1u); +x_59 = lean_nat_add(x_3, x_58); +x_60 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(x_1, x_2, x_59); +lean_dec(x_59); +x_61 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_61, 0, x_4); +lean_ctor_set(x_61, 1, x_60); +x_62 = lean_array_push(x_5, x_61); +return x_62; } } } else { -lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; -x_134 = lean_ctor_get(x_1, 0); -lean_inc(x_134); -x_135 = lean_ctor_get(x_1, 1); -lean_inc(x_135); -x_136 = lean_unsigned_to_nat(0u); -x_137 = l_Array_indexOfAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__3(x_134, x_3, x_136); -if (lean_obj_tag(x_137) == 0) -{ -uint8_t x_138; lean_object* x_139; lean_object* x_140; -lean_dec(x_135); -lean_dec(x_134); -x_138 = 0; -x_139 = lean_box(x_138); -x_140 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_140, 0, x_1); -lean_ctor_set(x_140, 1, x_139); -return x_140; +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_6); +x_63 = lean_unsigned_to_nat(1u); +x_64 = lean_nat_add(x_3, x_63); +x_65 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(x_1, x_2, x_64); +lean_dec(x_64); +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_4); +lean_ctor_set(x_66, 1, x_65); +x_67 = l_Array_insertAt_x21___rarg(x_5, x_8, x_66); +return x_67; } -else -{ -uint8_t x_141; -x_141 = !lean_is_exclusive(x_1); -if (x_141 == 0) -{ -lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; uint8_t x_147; lean_object* x_148; lean_object* x_149; -x_142 = lean_ctor_get(x_1, 1); -lean_dec(x_142); -x_143 = lean_ctor_get(x_1, 0); -lean_dec(x_143); -x_144 = lean_ctor_get(x_137, 0); -lean_inc(x_144); -lean_dec(x_137); -lean_inc(x_144); -x_145 = l_Array_feraseIdx___rarg(x_134, x_144); -x_146 = l_Array_feraseIdx___rarg(x_135, x_144); -lean_ctor_set(x_1, 1, x_146); -lean_ctor_set(x_1, 0, x_145); -x_147 = 1; -x_148 = lean_box(x_147); -x_149 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_149, 0, x_1); -lean_ctor_set(x_149, 1, x_148); -return x_149; } else { -lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; uint8_t x_154; lean_object* x_155; lean_object* x_156; -lean_dec(x_1); -x_150 = lean_ctor_get(x_137, 0); -lean_inc(x_150); -lean_dec(x_137); -lean_inc(x_150); -x_151 = l_Array_feraseIdx___rarg(x_134, x_150); -x_152 = l_Array_feraseIdx___rarg(x_135, x_150); -x_153 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_153, 0, x_151); -lean_ctor_set(x_153, 1, x_152); -x_154 = 1; -x_155 = lean_box(x_154); -x_156 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_156, 0, x_153); -lean_ctor_set(x_156, 1, x_155); -return x_156; +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_6); +x_68 = lean_unsigned_to_nat(1u); +x_69 = lean_nat_add(x_3, x_68); +x_70 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(x_1, x_2, x_69); +lean_dec(x_69); +x_71 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_71, 0, x_4); +lean_ctor_set(x_71, 1, x_70); +x_72 = lean_array_push(x_5, x_71); +return x_72; } } } +static lean_object* _init_l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; +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_PersistentHashMap_erase___at_Lean_Meta_SimpTheorems_eraseCore___spec__1(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -uint8_t x_3; -x_3 = !lean_is_exclusive(x_1); -if (x_3 == 0) +uint8_t x_5; +x_5 = !lean_is_exclusive(x_4); +if (x_5 == 0) { -lean_object* x_4; lean_object* x_5; lean_object* x_6; uint64_t x_7; size_t x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; -x_4 = lean_ctor_get(x_1, 0); -x_5 = lean_ctor_get(x_1, 1); -x_6 = l_Lean_Meta_Origin_key(x_2); -x_7 = l_Lean_Name_hash___override(x_6); -lean_dec(x_6); -x_8 = lean_uint64_to_usize(x_7); -x_9 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2(x_4, x_8, x_2); -x_10 = lean_ctor_get(x_9, 1); -lean_inc(x_10); -x_11 = lean_unbox(x_10); -lean_dec(x_10); -if (x_11 == 0) +lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; +x_6 = lean_ctor_get(x_4, 0); +x_7 = lean_ctor_get(x_4, 1); +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_object* x_12; -x_12 = lean_ctor_get(x_9, 0); -lean_inc(x_12); -lean_dec(x_9); -lean_ctor_set(x_1, 0, x_12); -return x_1; +lean_object* x_10; lean_object* x_11; +x_10 = lean_unsigned_to_nat(0u); +x_11 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertVal_loop___at_Lean_Meta_addSimpTheoremEntry___spec__10(x_6, x_2, x_10); +lean_ctor_set(x_4, 0, x_11); +return x_4; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_13 = lean_ctor_get(x_9, 0); -lean_inc(x_13); -lean_dec(x_9); -x_14 = lean_unsigned_to_nat(1u); -x_15 = lean_nat_sub(x_5, x_14); -lean_dec(x_5); -lean_ctor_set(x_1, 1, x_15); -lean_ctor_set(x_1, 0, x_13); -return x_1; +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_array_fget(x_1, x_3); +x_13 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___closed__1; +lean_inc(x_12); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_12); +lean_ctor_set(x_14, 1, x_13); +x_15 = l_Array_binInsertM___at_Lean_Meta_addSimpTheoremEntry___spec__11(x_1, x_2, x_3, x_12, x_7, x_14); +lean_ctor_set(x_4, 1, x_15); +return x_4; } } else { -lean_object* x_16; lean_object* x_17; lean_object* x_18; uint64_t x_19; size_t x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_16 = lean_ctor_get(x_1, 0); -x_17 = lean_ctor_get(x_1, 1); +lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; +x_16 = lean_ctor_get(x_4, 0); +x_17 = lean_ctor_get(x_4, 1); lean_inc(x_17); lean_inc(x_16); -lean_dec(x_1); -x_18 = l_Lean_Meta_Origin_key(x_2); -x_19 = l_Lean_Name_hash___override(x_18); +lean_dec(x_4); +x_18 = lean_array_get_size(x_1); +x_19 = lean_nat_dec_lt(x_3, x_18); lean_dec(x_18); -x_20 = lean_uint64_to_usize(x_19); -x_21 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2(x_16, x_20, x_2); -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -x_23 = lean_unbox(x_22); -lean_dec(x_22); -if (x_23 == 0) +if (x_19 == 0) { -lean_object* x_24; lean_object* x_25; -x_24 = lean_ctor_get(x_21, 0); -lean_inc(x_24); -lean_dec(x_21); +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_unsigned_to_nat(0u); +x_21 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertVal_loop___at_Lean_Meta_addSimpTheoremEntry___spec__10(x_16, x_2, 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; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_23 = lean_array_fget(x_1, x_3); +x_24 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___closed__1; +lean_inc(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_17); -return x_25; +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +x_26 = l_Array_binInsertM___at_Lean_Meta_addSimpTheoremEntry___spec__11(x_1, x_2, x_3, x_23, x_17, x_25); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_16); +lean_ctor_set(x_27, 1, x_26); +return x_27; } -else +} +} +} +static lean_object* _init_l_panic___at_Lean_Meta_addSimpTheoremEntry___spec__13___closed__1() { +_start: { -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_26 = lean_ctor_get(x_21, 0); -lean_inc(x_26); -lean_dec(x_21); -x_27 = lean_unsigned_to_nat(1u); -x_28 = lean_nat_sub(x_17, x_27); -lean_dec(x_17); -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_object* x_1; +x_1 = l_Lean_Meta_DiscrTree_instInhabited(lean_box(0)); +return x_1; } } +LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_addSimpTheoremEntry___spec__13(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; +x_2 = l_panic___at_Lean_Meta_addSimpTheoremEntry___spec__13___closed__1; +x_3 = lean_panic_fn(x_2, x_1); +return x_3; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_SimpTheorems_eraseCore___spec__4(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +static lean_object* _init_l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__1() { _start: { -uint8_t x_5; -x_5 = lean_usize_dec_eq(x_2, x_3); -if (x_5 == 0) +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Lean.Meta.DiscrTree", 19); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__2() { +_start: { -lean_object* x_6; uint8_t x_7; lean_object* x_8; lean_object* x_9; size_t x_10; size_t x_11; -x_6 = lean_array_uget(x_1, x_2); -x_7 = 1; -x_8 = lean_alloc_ctor(0, 1, 2); -lean_ctor_set(x_8, 0, x_6); -lean_ctor_set_uint8(x_8, sizeof(void*)*1, x_7); -lean_ctor_set_uint8(x_8, sizeof(void*)*1 + 1, x_7); -x_9 = l_Lean_Meta_SimpTheorems_eraseCore(x_4, x_8); -x_10 = 1; -x_11 = lean_usize_add(x_2, x_10); -x_2 = x_11; -x_4 = x_9; -goto _start; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Lean.Meta.DiscrTree.insertCore", 30); +return x_1; } -else +} +static lean_object* _init_l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__3() { +_start: { -return x_4; +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("invalid key sequence", 20); +return x_1; +} } +static lean_object* _init_l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__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_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__1; +x_2 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__2; +x_3 = lean_unsigned_to_nat(488u); +x_4 = lean_unsigned_to_nat(23u); +x_5 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__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_Lean_Meta_SimpTheorems_eraseCore(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -uint8_t x_3; -x_3 = !lean_is_exclusive(x_1); -if (x_3 == 0) +uint8_t x_4; +x_4 = l_Array_isEmpty___rarg(x_2); +if (x_4 == 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; -x_4 = lean_ctor_get(x_1, 0); -x_5 = lean_ctor_get(x_1, 1); -x_6 = lean_ctor_get(x_1, 2); -x_7 = lean_ctor_get(x_1, 3); -x_8 = lean_ctor_get(x_1, 4); -x_9 = lean_ctor_get(x_1, 5); -x_10 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_SimpTheorems_eraseCore___spec__1(x_6, x_2); -x_11 = lean_box(0); -lean_inc(x_2); -x_12 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__1(x_8, x_2, x_11); -lean_inc(x_9); -lean_inc(x_12); -lean_inc(x_7); -lean_inc(x_10); -lean_inc(x_5); -lean_inc(x_4); -lean_ctor_set(x_1, 4, x_12); -lean_ctor_set(x_1, 2, x_10); -if (lean_obj_tag(x_2) == 0) +lean_object* x_5; lean_object* x_6; uint8_t x_7; +x_5 = lean_array_get_size(x_2); +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_nat_dec_lt(x_6, x_5); +lean_dec(x_5); +if (x_7 == 0) { -uint8_t x_13; -x_13 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); -if (x_13 == 0) +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = l_Lean_Meta_DiscrTree_instInhabitedKey; +x_9 = l___private_Init_GetElem_0__outOfBounds___rarg(x_8); +lean_inc(x_9); +lean_inc(x_1); +x_10 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_addSimpTheoremEntry___spec__2(x_1, x_9); +if (lean_obj_tag(x_10) == 0) { -lean_dec(x_12); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_unsigned_to_nat(1u); +x_12 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(x_2, x_3, x_11); lean_dec(x_2); -return x_1; +x_13 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry___spec__5(x_1, x_9, x_12); +return x_13; } else { -uint8_t x_14; -x_14 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -lean_dec(x_1); -x_15 = lean_ctor_get(x_2, 0); -lean_inc(x_15); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_14 = lean_ctor_get(x_10, 0); +lean_inc(x_14); +lean_dec(x_10); +x_15 = lean_unsigned_to_nat(1u); +x_16 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_2, x_3, x_15, x_14); lean_dec(x_2); -x_16 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_addInstanceEntry___spec__18(x_7, x_15); -lean_inc(x_9); -x_17 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_17, 0, x_4); -lean_ctor_set(x_17, 1, x_5); -lean_ctor_set(x_17, 2, x_10); -lean_ctor_set(x_17, 3, x_16); -lean_ctor_set(x_17, 4, x_12); -lean_ctor_set(x_17, 5, x_9); -x_18 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_getEqnsFor_x3f___spec__1(x_9, x_15); -if (lean_obj_tag(x_18) == 0) -{ +x_17 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry___spec__5(x_1, x_9, x_16); return x_17; } -else -{ -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); -lean_dec(x_18); -x_20 = lean_array_get_size(x_19); -x_21 = lean_unsigned_to_nat(0u); -x_22 = lean_nat_dec_lt(x_21, x_20); -if (x_22 == 0) -{ -lean_dec(x_20); -lean_dec(x_19); -return x_17; } else { -uint8_t x_23; -x_23 = lean_nat_dec_le(x_20, x_20); -if (x_23 == 0) +lean_object* x_18; lean_object* x_19; +x_18 = lean_array_fget(x_2, x_6); +lean_inc(x_18); +lean_inc(x_1); +x_19 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_addSimpTheoremEntry___spec__2(x_1, x_18); +if (lean_obj_tag(x_19) == 0) { -lean_dec(x_20); -lean_dec(x_19); -return x_17; +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_unsigned_to_nat(1u); +x_21 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(x_2, x_3, x_20); +lean_dec(x_2); +x_22 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry___spec__5(x_1, x_18, x_21); +return x_22; } else { -size_t x_24; size_t x_25; lean_object* x_26; -x_24 = 0; -x_25 = lean_usize_of_nat(x_20); -lean_dec(x_20); -x_26 = l_Array_foldlMUnsafe_fold___at_Lean_Meta_SimpTheorems_eraseCore___spec__4(x_19, x_24, x_25, x_17); +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = lean_ctor_get(x_19, 0); +lean_inc(x_23); lean_dec(x_19); +x_24 = lean_unsigned_to_nat(1u); +x_25 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_2, x_3, x_24, x_23); +lean_dec(x_2); +x_26 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry___spec__5(x_1, x_18, x_25); return x_26; } } } -} else { -lean_dec(x_12); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); +lean_object* x_27; lean_object* x_28; +lean_dec(x_3); lean_dec(x_2); -return x_1; +lean_dec(x_1); +x_27 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1___closed__4; +x_28 = l_panic___at_Lean_Meta_addSimpTheoremEntry___spec__13(x_27); +return x_28; +} } } +LEAN_EXPORT lean_object* l_Lean_Meta_addSimpTheoremEntry(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +lean_inc(x_2); +x_3 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseFwdIfBwd(x_1, x_2); +x_4 = lean_ctor_get_uint8(x_2, sizeof(void*)*5); +if (x_4 == 0) +{ +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; lean_object* x_9; lean_object* x_10; +x_6 = lean_ctor_get(x_3, 0); +x_7 = lean_ctor_get(x_3, 2); +x_8 = lean_ctor_get(x_2, 0); +lean_inc(x_8); +lean_inc(x_2); +x_9 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1(x_6, x_8, x_2); +x_10 = l_Lean_Meta_addSimpTheoremEntry_updateLemmaNames(x_2, x_7); +lean_ctor_set(x_3, 2, x_10); +lean_ctor_set(x_3, 0, x_9); +return x_3; } else { -lean_dec(x_12); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -return x_1; +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_11 = lean_ctor_get(x_3, 0); +x_12 = lean_ctor_get(x_3, 1); +x_13 = lean_ctor_get(x_3, 2); +x_14 = lean_ctor_get(x_3, 3); +x_15 = lean_ctor_get(x_3, 4); +x_16 = lean_ctor_get(x_3, 5); +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_dec(x_3); +x_17 = lean_ctor_get(x_2, 0); +lean_inc(x_17); +lean_inc(x_2); +x_18 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1(x_11, x_17, x_2); +x_19 = l_Lean_Meta_addSimpTheoremEntry_updateLemmaNames(x_2, x_13); +x_20 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set(x_20, 1, x_12); +lean_ctor_set(x_20, 2, x_19); +lean_ctor_set(x_20, 3, x_14); +lean_ctor_set(x_20, 4, x_15); +lean_ctor_set(x_20, 5, x_16); +return x_20; } } 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_1, 0); -x_28 = lean_ctor_get(x_1, 1); -x_29 = lean_ctor_get(x_1, 2); -x_30 = lean_ctor_get(x_1, 3); -x_31 = lean_ctor_get(x_1, 4); -x_32 = lean_ctor_get(x_1, 5); +uint8_t x_21; +x_21 = !lean_is_exclusive(x_3); +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 = lean_ctor_get(x_3, 1); +x_23 = lean_ctor_get(x_3, 2); +x_24 = lean_ctor_get(x_2, 0); +lean_inc(x_24); +lean_inc(x_2); +x_25 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1(x_22, x_24, x_2); +x_26 = l_Lean_Meta_addSimpTheoremEntry_updateLemmaNames(x_2, x_23); +lean_ctor_set(x_3, 2, x_26); +lean_ctor_set(x_3, 1, x_25); +return x_3; +} +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_3, 0); +x_28 = lean_ctor_get(x_3, 1); +x_29 = lean_ctor_get(x_3, 2); +x_30 = lean_ctor_get(x_3, 3); +x_31 = lean_ctor_get(x_3, 4); +x_32 = lean_ctor_get(x_3, 5); lean_inc(x_32); lean_inc(x_31); lean_inc(x_30); lean_inc(x_29); lean_inc(x_28); lean_inc(x_27); -lean_dec(x_1); -x_33 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_SimpTheorems_eraseCore___spec__1(x_29, x_2); -x_34 = lean_box(0); -lean_inc(x_2); -x_35 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__1(x_31, x_2, x_34); -lean_inc(x_32); -lean_inc(x_35); -lean_inc(x_30); +lean_dec(x_3); +x_33 = lean_ctor_get(x_2, 0); lean_inc(x_33); -lean_inc(x_28); -lean_inc(x_27); +lean_inc(x_2); +x_34 = l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_addSimpTheoremEntry___spec__1(x_28, x_33, x_2); +x_35 = l_Lean_Meta_addSimpTheoremEntry_updateLemmaNames(x_2, x_29); x_36 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_36, 0, x_27); -lean_ctor_set(x_36, 1, x_28); -lean_ctor_set(x_36, 2, x_33); +lean_ctor_set(x_36, 1, x_34); +lean_ctor_set(x_36, 2, x_35); lean_ctor_set(x_36, 3, x_30); -lean_ctor_set(x_36, 4, x_35); +lean_ctor_set(x_36, 4, x_31); lean_ctor_set(x_36, 5, x_32); -if (lean_obj_tag(x_2) == 0) +return x_36; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_addSimpTheoremEntry___spec__4___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_37; -x_37 = lean_ctor_get_uint8(x_2, sizeof(void*)*1); -if (x_37 == 0) +lean_object* x_6; +x_6 = l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_addSimpTheoremEntry___spec__4(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_addSimpTheoremEntry___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: { -lean_dec(x_35); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_30); -lean_dec(x_28); -lean_dec(x_27); +size_t x_4; lean_object* x_5; +x_4 = lean_unbox_usize(x_2); lean_dec(x_2); -return x_36; +x_5 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_addSimpTheoremEntry___spec__3(x_1, x_4, x_3); +lean_dec(x_3); +return x_5; } -else +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry___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) { +_start: { -uint8_t x_38; -x_38 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); -if (x_38 == 0) +size_t x_7; lean_object* x_8; +x_7 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_8 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_addSimpTheoremEntry___spec__7(x_7, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6___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_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_dec(x_36); -x_39 = lean_ctor_get(x_2, 0); -lean_inc(x_39); +size_t x_6; size_t x_7; lean_object* x_8; +x_6 = lean_unbox_usize(x_2); lean_dec(x_2); -x_40 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_addInstanceEntry___spec__18(x_30, x_39); -lean_inc(x_32); -x_41 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_41, 0, x_27); -lean_ctor_set(x_41, 1, x_28); -lean_ctor_set(x_41, 2, x_33); -lean_ctor_set(x_41, 3, x_40); -lean_ctor_set(x_41, 4, x_35); -lean_ctor_set(x_41, 5, x_32); -x_42 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_getEqnsFor_x3f___spec__1(x_32, x_39); -if (lean_obj_tag(x_42) == 0) +x_7 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_8 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__6(x_1, x_6, x_7, x_4, x_5); +return x_8; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_BinSearch_0__Array_binInsertAux___at_Lean_Meta_addSimpTheoremEntry___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) { +_start: { -return x_41; +lean_object* x_9; +x_9 = l___private_Init_Data_Array_BinSearch_0__Array_binInsertAux___at_Lean_Meta_addSimpTheoremEntry___spec__12(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_3); +lean_dec(x_1); +return x_9; } -else +} +LEAN_EXPORT lean_object* l_Array_binInsertM___at_Lean_Meta_addSimpTheoremEntry___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_43; lean_object* x_44; lean_object* x_45; uint8_t x_46; -x_43 = lean_ctor_get(x_42, 0); -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_7; +x_7 = l_Array_binInsertM___at_Lean_Meta_addSimpTheoremEntry___spec__11(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___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: { -lean_dec(x_44); -lean_dec(x_43); -return x_41; +lean_object* x_5; +x_5 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9(x_1, x_2, x_3, x_4); +lean_dec(x_3); +lean_dec(x_1); +return x_5; } -else +} +LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_addDeclToUnfoldCore(lean_object* x_1, lean_object* x_2) { +_start: { -uint8_t x_47; -x_47 = lean_nat_dec_le(x_44, x_44); -if (x_47 == 0) +uint8_t x_3; +x_3 = !lean_is_exclusive(x_1); +if (x_3 == 0) { -lean_dec(x_44); -lean_dec(x_43); -return x_41; +lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_4 = lean_ctor_get(x_1, 3); +x_5 = lean_box(0); +x_6 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_4, x_2, x_5); +lean_ctor_set(x_1, 3, x_6); +return x_1; } else { -size_t x_48; size_t x_49; lean_object* x_50; -x_48 = 0; -x_49 = lean_usize_of_nat(x_44); -lean_dec(x_44); -x_50 = l_Array_foldlMUnsafe_fold___at_Lean_Meta_SimpTheorems_eraseCore___spec__4(x_43, x_48, x_49, x_41); -lean_dec(x_43); -return x_50; +lean_object* x_7; lean_object* x_8; lean_object* x_9; 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_7 = lean_ctor_get(x_1, 0); +x_8 = lean_ctor_get(x_1, 1); +x_9 = lean_ctor_get(x_1, 2); +x_10 = lean_ctor_get(x_1, 3); +x_11 = lean_ctor_get(x_1, 4); +x_12 = lean_ctor_get(x_1, 5); +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_dec(x_1); +x_13 = lean_box(0); +x_14 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_10, x_2, x_13); +x_15 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_15, 0, x_7); +lean_ctor_set(x_15, 1, x_8); +lean_ctor_set(x_15, 2, x_9); +lean_ctor_set(x_15, 3, x_14); +lean_ctor_set(x_15, 4, x_11); +lean_ctor_set(x_15, 5, x_12); +return x_15; } } } +LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_addLetDeclToUnfold(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; +x_4 = lean_ctor_get(x_1, 3); +x_5 = lean_box(0); +x_6 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_4, x_2, x_5); +lean_ctor_set(x_1, 3, x_6); +return x_1; } else { -lean_dec(x_35); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_30); -lean_dec(x_28); -lean_dec(x_27); -lean_dec(x_2); -return x_36; +lean_object* x_7; lean_object* x_8; lean_object* x_9; 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_7 = lean_ctor_get(x_1, 0); +x_8 = lean_ctor_get(x_1, 1); +x_9 = lean_ctor_get(x_1, 2); +x_10 = lean_ctor_get(x_1, 3); +x_11 = lean_ctor_get(x_1, 4); +x_12 = lean_ctor_get(x_1, 5); +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_dec(x_1); +x_13 = lean_box(0); +x_14 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_10, x_2, x_13); +x_15 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_15, 0, x_7); +lean_ctor_set(x_15, 1, x_8); +lean_ctor_set(x_15, 2, x_9); +lean_ctor_set(x_15, 3, x_14); +lean_ctor_set(x_15, 4, x_11); +lean_ctor_set(x_15, 5, x_12); +return x_15; } } } -else +LEAN_EXPORT uint8_t l_Lean_Meta_SimpTheorems_isDeclToUnfold(lean_object* x_1, lean_object* x_2) { +_start: { -lean_dec(x_35); -lean_dec(x_33); -lean_dec(x_32); -lean_dec(x_30); -lean_dec(x_28); -lean_dec(x_27); -lean_dec(x_2); -return x_36; +lean_object* x_3; uint8_t x_4; +x_3 = lean_ctor_get(x_1, 3); +lean_inc(x_3); +lean_dec(x_1); +x_4 = l_Lean_PersistentHashMap_contains___at_Lean_NameSSet_contains___spec__3(x_3, x_2); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_isDeclToUnfold___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Meta_SimpTheorems_isDeclToUnfold(x_1, x_2); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT uint8_t l_Lean_Meta_SimpTheorems_isLetDeclToUnfold(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +x_3 = lean_ctor_get(x_1, 3); +lean_inc(x_3); +lean_dec(x_1); +x_4 = l_Lean_PersistentHashMap_contains___at_Lean_NameSSet_contains___spec__3(x_3, x_2); +return x_4; } } +LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_isLetDeclToUnfold___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Meta_SimpTheorems_isLetDeclToUnfold(x_1, x_2); +x_4 = lean_box(x_3); +return x_4; } } -LEAN_EXPORT lean_object* l_Array_indexOfAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT uint8_t l_Lean_Meta_SimpTheorems_isLemma(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_4; -x_4 = l_Array_indexOfAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__3(x_1, x_2, x_3); -lean_dec(x_2); +lean_object* x_3; uint8_t x_4; +x_3 = lean_ctor_get(x_1, 2); +lean_inc(x_3); lean_dec(x_1); +x_4 = l_Lean_PersistentHashMap_contains___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__1(x_3, x_2); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_isLemma___boxed(lean_object* x_1, lean_object* x_2) { _start: { -size_t x_4; lean_object* x_5; -x_4 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_5 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2(x_1, x_4, x_3); -lean_dec(x_3); -return x_5; +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Meta_SimpTheorems_isLemma(x_1, x_2); +x_4 = lean_box(x_3); +return x_4; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_erase___at_Lean_Meta_SimpTheorems_eraseCore___spec__1___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_registerDeclToUnfoldThms(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_3; -x_3 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_SimpTheorems_eraseCore___spec__1(x_1, x_2); -lean_dec(x_2); -return x_3; -} +uint8_t x_4; +x_4 = !lean_is_exclusive(x_1); +if (x_4 == 0) +{ +lean_object* x_5; lean_object* x_6; +x_5 = lean_ctor_get(x_1, 5); +x_6 = l_Lean_PersistentHashMap_insert___at___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___spec__1(x_5, x_2, x_3); +lean_ctor_set(x_1, 5, x_6); +return x_1; } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_SimpTheorems_eraseCore___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: +else { -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_Meta_SimpTheorems_eraseCore___spec__4(x_1, x_5, x_6, x_4); +lean_object* x_7; lean_object* x_8; 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_ctor_get(x_1, 0); +x_8 = lean_ctor_get(x_1, 1); +x_9 = lean_ctor_get(x_1, 2); +x_10 = lean_ctor_get(x_1, 3); +x_11 = lean_ctor_get(x_1, 4); +x_12 = lean_ctor_get(x_1, 5); +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_dec(x_1); -return x_7; +x_13 = l_Lean_PersistentHashMap_insert___at___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___spec__1(x_12, x_2, x_3); +x_14 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_14, 0, x_7); +lean_ctor_set(x_14, 1, x_8); +lean_ctor_set(x_14, 2, x_9); +lean_ctor_set(x_14, 3, x_10); +lean_ctor_set(x_14, 4, x_11); +lean_ctor_set(x_14, 5, x_13); +return x_14; +} } } LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_SimpTheorems_erase___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { @@ -5947,7 +9343,7 @@ x_4 = lean_ctor_get(x_1, 0); lean_inc(x_4); lean_dec(x_1); x_5 = 5; -x_6 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__2; +x_6 = l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___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); @@ -6063,148 +9459,154 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase___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_5; lean_object* x_6; lean_object* x_17; uint8_t x_25; -lean_inc(x_4); -lean_inc(x_3); +lean_object* x_7; lean_object* x_8; lean_object* x_19; uint8_t x_27; +lean_inc(x_6); +lean_inc(x_5); lean_inc(x_1); -x_5 = lean_alloc_closure((void*)(l_Lean_Meta_SimpTheorems_erase___rarg___lambda__1___boxed), 4, 3); -lean_closure_set(x_5, 0, x_1); -lean_closure_set(x_5, 1, x_3); -lean_closure_set(x_5, 2, x_4); -lean_inc(x_4); -lean_inc(x_3); -x_25 = l_Lean_Meta_SimpTheorems_isLemma(x_3, x_4); -if (x_25 == 0) +x_7 = lean_alloc_closure((void*)(l_Lean_Meta_SimpTheorems_erase___rarg___lambda__1___boxed), 4, 3); +lean_closure_set(x_7, 0, x_1); +lean_closure_set(x_7, 1, x_5); +lean_closure_set(x_7, 2, x_6); +lean_inc(x_6); +lean_inc(x_5); +x_27 = l_Lean_Meta_SimpTheorems_isLemma(x_5, x_6); +if (x_27 == 0) { -if (lean_obj_tag(x_4) == 0) +if (lean_obj_tag(x_6) == 0) { -uint8_t x_26; -x_26 = lean_ctor_get_uint8(x_4, sizeof(void*)*1); -if (x_26 == 0) +uint8_t x_28; +x_28 = lean_ctor_get_uint8(x_6, sizeof(void*)*1); +if (x_28 == 0) { -lean_object* x_27; -lean_dec(x_3); -x_27 = lean_box(0); -x_6 = x_27; -goto block_16; +lean_object* x_29; +lean_dec(x_5); +x_29 = lean_box(0); +x_8 = x_29; +goto block_18; } else { -uint8_t x_28; -x_28 = lean_ctor_get_uint8(x_4, sizeof(void*)*1 + 1); -if (x_28 == 0) -{ -lean_object* x_29; uint8_t x_30; -x_29 = lean_ctor_get(x_4, 0); -lean_inc(x_29); -lean_inc(x_29); -lean_inc(x_3); -x_30 = l_Lean_Meta_SimpTheorems_isDeclToUnfold(x_3, x_29); +uint8_t x_30; +x_30 = lean_ctor_get_uint8(x_6, sizeof(void*)*1 + 1); if (x_30 == 0) { lean_object* x_31; uint8_t x_32; -x_31 = lean_ctor_get(x_3, 5); +x_31 = lean_ctor_get(x_6, 0); lean_inc(x_31); -lean_dec(x_3); -x_32 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_erase___spec__1(x_31, x_29); +lean_inc(x_31); +lean_inc(x_5); +x_32 = l_Lean_Meta_SimpTheorems_isDeclToUnfold(x_5, x_31); if (x_32 == 0) { -lean_object* x_33; -x_33 = lean_box(0); -x_6 = x_33; -goto block_16; +lean_object* x_33; uint8_t x_34; +x_33 = lean_ctor_get(x_5, 5); +lean_inc(x_33); +lean_dec(x_5); +x_34 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_erase___spec__1(x_33, x_31); +if (x_34 == 0) +{ +lean_object* x_35; +x_35 = lean_box(0); +x_8 = x_35; +goto block_18; } else { -lean_object* x_34; +lean_object* x_36; +lean_dec(x_6); lean_dec(x_4); +lean_dec(x_3); lean_dec(x_2); -x_34 = lean_box(0); -x_17 = x_34; -goto block_24; +x_36 = lean_box(0); +x_19 = x_36; +goto block_26; } } else { -lean_object* x_35; -lean_dec(x_29); +lean_object* x_37; +lean_dec(x_31); +lean_dec(x_6); +lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_35 = lean_box(0); -x_17 = x_35; -goto block_24; +x_37 = lean_box(0); +x_19 = x_37; +goto block_26; } } else { -lean_object* x_36; -lean_dec(x_3); -x_36 = lean_box(0); -x_6 = x_36; -goto block_16; +lean_object* x_38; +lean_dec(x_5); +x_38 = lean_box(0); +x_8 = x_38; +goto block_18; } } } else { -lean_object* x_37; -lean_dec(x_3); -x_37 = lean_box(0); -x_6 = x_37; -goto block_16; +lean_object* x_39; +lean_dec(x_5); +x_39 = lean_box(0); +x_8 = x_39; +goto block_18; } } else { -lean_object* x_38; +lean_object* x_40; +lean_dec(x_6); +lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_38 = lean_box(0); -x_17 = x_38; -goto block_24; +x_40 = lean_box(0); +x_19 = x_40; +goto block_26; } -block_16: +block_18: { -lean_object* x_7; lean_object* x_8; lean_object* x_9; 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_9; 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_dec(x_8); +x_9 = lean_ctor_get(x_1, 1); +lean_inc(x_9); +x_10 = l_Lean_Meta_Origin_key(x_6); lean_dec(x_6); -x_7 = lean_ctor_get(x_1, 1); -lean_inc(x_7); -x_8 = l_Lean_Meta_Origin_key(x_4); -lean_dec(x_4); -x_9 = l_Lean_MessageData_ofName(x_8); -x_10 = l_Lean_Meta_SimpTheorems_erase___rarg___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_Lean_Meta_SimpTheorems_erase___rarg___closed__4; +x_11 = l_Lean_MessageData_ofName(x_10); +x_12 = l_Lean_Meta_SimpTheorems_erase___rarg___closed__2; 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 = l_Lean_throwError___rarg(x_1, x_2, x_13); -x_15 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_14, x_5); -return x_15; +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_11); +x_14 = l_Lean_Meta_SimpTheorems_erase___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_logWarning___rarg(x_1, x_2, x_3, x_4, x_15); +x_17 = lean_apply_4(x_9, lean_box(0), lean_box(0), x_16, x_7); +return x_17; } -block_24: +block_26: { -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_17); -x_18 = lean_ctor_get(x_1, 1); -lean_inc(x_18); -x_19 = lean_ctor_get(x_1, 0); -lean_inc(x_19); -lean_dec(x_1); -x_20 = lean_ctor_get(x_19, 1); -lean_inc(x_20); +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_dec(x_19); -x_21 = lean_box(0); -x_22 = lean_apply_2(x_20, lean_box(0), x_21); -x_23 = lean_apply_4(x_18, lean_box(0), lean_box(0), x_22, x_5); -return x_23; +x_20 = lean_ctor_get(x_1, 1); +lean_inc(x_20); +x_21 = lean_ctor_get(x_1, 0); +lean_inc(x_21); +lean_dec(x_1); +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +lean_dec(x_21); +x_23 = lean_box(0); +x_24 = lean_apply_2(x_22, lean_box(0), x_23); +x_25 = lean_apply_4(x_20, lean_box(0), lean_box(0), x_24, x_7); +return x_25; } } } @@ -6212,7 +9614,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheorems_erase(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Lean_Meta_SimpTheorems_erase___rarg), 4, 0); +x_2 = lean_alloc_closure((void*)(l_Lean_Meta_SimpTheorems_erase___rarg), 6, 0); return x_2; } } @@ -11393,94 +14795,196 @@ x_1 = lean_mk_string_from_bytes("origin != .fvar ⟨.anonymous⟩\n ", 35); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__5() { -_start: +static lean_object* _init_l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__3; +x_2 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__4; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__6() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Lean.Meta.Tactic.Simp.SimpTheorems", 34); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("_private.Lean.Meta.Tactic.Simp.SimpTheorems.0.Lean.Meta.mkSimpTheoremCore", 73); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___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___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__6; +x_2 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__7; +x_3 = lean_unsigned_to_nat(368u); +x_4 = lean_unsigned_to_nat(2u); +x_5 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___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___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore(lean_object* x_1, 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, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +if (lean_obj_tag(x_1) == 0) +{ +uint8_t x_31; +x_31 = lean_ctor_get_uint8(x_1, sizeof(void*)*1); +if (x_31 == 0) +{ +lean_object* x_32; lean_object* x_33; uint8_t x_34; +x_32 = l_Lean_Meta_Origin_key(x_1); +x_33 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__2; +x_34 = lean_name_eq(x_32, x_33); +lean_dec(x_32); +if (x_34 == 0) +{ +lean_object* x_35; +x_35 = lean_box(0); +x_13 = x_35; +goto block_30; +} +else +{ +lean_object* x_36; lean_object* x_37; +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_36 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__8; +x_37 = l_panic___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___spec__2(x_36, x_8, x_9, x_10, x_11, x_12); +return x_37; +} +} +else +{ +uint8_t x_38; +x_38 = lean_ctor_get_uint8(x_1, sizeof(void*)*1 + 1); +if (x_38 == 0) +{ +lean_object* x_39; +x_39 = lean_box(0); +x_13 = x_39; +goto block_30; +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; +x_40 = lean_ctor_get(x_1, 0); +lean_inc(x_40); +x_41 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_41, 0, x_40); +lean_ctor_set_uint8(x_41, sizeof(void*)*1, x_38); +lean_ctor_set_uint8(x_41, sizeof(void*)*1 + 1, x_38); +x_42 = l_Lean_Meta_Origin_key(x_41); +lean_dec(x_41); +x_43 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__2; +x_44 = lean_name_eq(x_42, x_43); +lean_dec(x_42); +if (x_44 == 0) +{ +lean_object* x_45; +x_45 = lean_box(0); +x_13 = x_45; +goto block_30; +} +else { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__3; -x_2 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__4; -x_3 = lean_string_append(x_1, x_2); -return x_3; +lean_object* x_46; lean_object* x_47; +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_46 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__8; +x_47 = l_panic___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___spec__2(x_46, x_8, x_9, x_10, x_11, x_12); +return x_47; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__6() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Lean.Meta.Tactic.Simp.SimpTheorems", 34); -return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__7() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("_private.Lean.Meta.Tactic.Simp.SimpTheorems.0.Lean.Meta.mkSimpTheoremCore", 73); -return x_1; -} +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = l_Lean_Meta_Origin_key(x_1); +x_49 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__2; +x_50 = lean_name_eq(x_48, x_49); +lean_dec(x_48); +if (x_50 == 0) +{ +lean_object* x_51; +x_51 = lean_box(0); +x_13 = x_51; +goto block_30; } -static lean_object* _init_l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__8() { -_start: +else { -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_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__6; -x_2 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__7; -x_3 = lean_unsigned_to_nat(326u); -x_4 = lean_unsigned_to_nat(2u); -x_5 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__5; -x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); -return x_6; +lean_object* x_52; lean_object* x_53; +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_52 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__8; +x_53 = l_panic___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___spec__2(x_52, x_8, x_9, x_10, x_11, x_12); +return x_53; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore(lean_object* x_1, 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, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: +block_30: { -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = l_Lean_Meta_Origin_key(x_1); -x_14 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__2; -x_15 = lean_name_eq(x_13, x_14); +lean_object* x_14; lean_dec(x_13); -if (x_15 == 0) -{ -lean_object* x_16; lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_16 = lean_infer_type(x_2, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_16) == 0) +x_14 = lean_infer_type(x_2, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_14) == 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; uint8_t x_26; lean_object* x_27; -x_17 = lean_ctor_get(x_16, 0); -lean_inc(x_17); -x_18 = lean_ctor_get(x_16, 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_object* x_22; lean_object* x_23; uint8_t x_24; lean_object* x_25; +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_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(x_15, x_8, x_9, x_10, x_11, x_16); +x_18 = lean_ctor_get(x_17, 0); lean_inc(x_18); -lean_dec(x_16); -x_19 = l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(x_17, x_8, x_9, x_10, x_11, x_18); -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_box(x_5); -x_24 = lean_box(x_7); -x_25 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___lambda__2___boxed), 13, 8); -lean_closure_set(x_25, 0, x_20); -lean_closure_set(x_25, 1, x_22); -lean_closure_set(x_25, 2, x_4); -lean_closure_set(x_25, 3, x_3); -lean_closure_set(x_25, 4, x_6); -lean_closure_set(x_25, 5, x_23); -lean_closure_set(x_25, 6, x_1); -lean_closure_set(x_25, 7, x_24); -x_26 = 0; -x_27 = l_Lean_Meta_withNewMCtxDepth___at_Lean_Meta_matchesInstance___spec__1___rarg(x_25, x_26, x_8, x_9, x_10, x_11, x_21); -return x_27; +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_20 = lean_box(0); +x_21 = lean_box(x_5); +x_22 = lean_box(x_7); +x_23 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___lambda__2___boxed), 13, 8); +lean_closure_set(x_23, 0, x_18); +lean_closure_set(x_23, 1, x_20); +lean_closure_set(x_23, 2, x_4); +lean_closure_set(x_23, 3, x_3); +lean_closure_set(x_23, 4, x_6); +lean_closure_set(x_23, 5, x_21); +lean_closure_set(x_23, 6, x_1); +lean_closure_set(x_23, 7, x_22); +x_24 = 0; +x_25 = l_Lean_Meta_withNewMCtxDepth___at_Lean_Meta_matchesInstance___spec__1___rarg(x_23, x_24, x_8, x_9, x_10, x_11, x_19); +return x_25; } else { -uint8_t x_28; +uint8_t x_26; lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -11489,37 +14993,25 @@ lean_dec(x_6); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_28 = !lean_is_exclusive(x_16); -if (x_28 == 0) +x_26 = !lean_is_exclusive(x_14); +if (x_26 == 0) { -return x_16; +return x_14; } 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_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; } } -else -{ -lean_object* x_32; lean_object* x_33; -lean_dec(x_6); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_32 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___closed__8; -x_33 = l_panic___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore___spec__2(x_32, x_8, x_9, x_10, x_11, x_12); -return x_33; } } } @@ -11570,148 +15062,144 @@ x_15 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheorem return x_15; } } -LEAN_EXPORT lean_object* l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___spec__1(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_EXPORT lean_object* l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___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, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -if (lean_obj_tag(x_8) == 0) +if (lean_obj_tag(x_7) == 0) { -lean_object* x_15; -lean_dec(x_13); +lean_object* x_14; lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); -lean_dec(x_7); +lean_dec(x_9); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -lean_dec(x_1); -x_15 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_15, 0, x_9); -lean_ctor_set(x_15, 1, x_14); -return x_15; +lean_dec(x_3); +lean_dec(x_2); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_8); +lean_ctor_set(x_14, 1, x_13); +return x_14; } 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_8, 0); +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_7, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_7, 1); lean_inc(x_16); -x_17 = lean_ctor_get(x_8, 1); +lean_dec(x_7); +x_17 = lean_ctor_get(x_15, 0); lean_inc(x_17); -lean_dec(x_8); -x_18 = lean_ctor_get(x_16, 0); +x_18 = lean_ctor_get(x_15, 1); lean_inc(x_18); -x_19 = lean_ctor_get(x_16, 1); -lean_inc(x_19); -lean_dec(x_16); -lean_inc(x_13); +lean_dec(x_15); lean_inc(x_12); -lean_inc(x_5); -x_20 = l_Lean_Meta_mkAuxLemma(x_5, x_19, x_18, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_20) == 0) +lean_inc(x_11); +lean_inc(x_3); +x_19 = l_Lean_Meta_mkAuxLemma(x_3, x_18, x_17, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(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; uint8_t x_27; lean_object* x_28; -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_1); -x_23 = lean_alloc_ctor(0, 1, 2); -lean_ctor_set(x_23, 0, x_1); -lean_ctor_set_uint8(x_23, sizeof(void*)*1, x_2); -lean_ctor_set_uint8(x_23, sizeof(void*)*1 + 1, x_3); -lean_inc(x_7); +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; +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +x_21 = lean_ctor_get(x_19, 1); lean_inc(x_21); -x_24 = l_Lean_Expr_const___override(x_21, x_7); -lean_inc(x_6); -x_25 = l_Lean_Expr_const___override(x_21, x_6); -x_26 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -x_27 = 0; -lean_inc(x_13); +lean_dec(x_19); +lean_inc(x_5); +lean_inc(x_20); +x_22 = l_Lean_Expr_const___override(x_20, x_5); +lean_inc(x_4); +x_23 = l_Lean_Expr_const___override(x_20, x_4); +x_24 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; +x_25 = 0; lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_4); -x_28 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore(x_23, x_24, x_26, x_25, x_2, x_4, x_27, x_10, x_11, x_12, x_13, x_22); -if (lean_obj_tag(x_28) == 0) +lean_inc(x_9); +lean_inc(x_2); +lean_inc(x_6); +x_26 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore(x_6, x_22, x_24, x_23, x_1, x_2, x_25, x_9, x_10, x_11, x_12, x_21); +if (lean_obj_tag(x_26) == 0) { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -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_array_push(x_9, x_29); -x_8 = x_17; -x_9 = x_31; -x_14 = x_30; +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_array_push(x_8, x_27); +x_7 = x_16; +x_8 = x_29; +x_13 = x_28; goto _start; } else { -uint8_t x_33; -lean_dec(x_17); -lean_dec(x_13); +uint8_t x_31; +lean_dec(x_16); lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); -lean_dec(x_7); +lean_dec(x_8); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -lean_dec(x_1); -x_33 = !lean_is_exclusive(x_28); -if (x_33 == 0) +lean_dec(x_3); +lean_dec(x_2); +x_31 = !lean_is_exclusive(x_26); +if (x_31 == 0) { -return x_28; +return x_26; } 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; +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_26, 0); +x_33 = lean_ctor_get(x_26, 1); +lean_inc(x_33); +lean_inc(x_32); +lean_dec(x_26); +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_37; -lean_dec(x_17); -lean_dec(x_13); +uint8_t x_35; +lean_dec(x_16); lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); -lean_dec(x_7); +lean_dec(x_8); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -lean_dec(x_1); -x_37 = !lean_is_exclusive(x_20); -if (x_37 == 0) +lean_dec(x_3); +lean_dec(x_2); +x_35 = !lean_is_exclusive(x_19); +if (x_35 == 0) { -return x_20; +return x_19; } 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_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_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_19, 0); +x_37 = lean_ctor_get(x_19, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_19); +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; } } } @@ -11725,7 +15213,7 @@ lean_inc(x_1); x_10 = l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(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; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t 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_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); @@ -11736,81 +15224,81 @@ lean_dec(x_11); x_14 = lean_box(0); lean_inc(x_13); x_15 = l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(x_13, x_14); +lean_inc(x_1); +x_16 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_16, 0, x_1); +lean_ctor_set_uint8(x_16, sizeof(void*)*1, x_2); +lean_ctor_set_uint8(x_16, sizeof(void*)*1 + 1, x_3); lean_inc(x_15); lean_inc(x_1); -x_16 = l_Lean_Expr_const___override(x_1, x_15); -x_17 = !lean_is_exclusive(x_5); -if (x_17 == 0) +x_17 = l_Lean_Expr_const___override(x_1, x_15); +x_18 = !lean_is_exclusive(x_5); +if (x_18 == 0) { -lean_object* x_18; uint8_t x_19; -x_18 = lean_ctor_get(x_5, 0); -x_19 = !lean_is_exclusive(x_18); -if (x_19 == 0) +lean_object* x_19; uint8_t x_20; +x_19 = lean_ctor_get(x_5, 0); +x_20 = !lean_is_exclusive(x_19); +if (x_20 == 0) { -uint8_t x_20; lean_object* x_21; -x_20 = 2; -lean_ctor_set_uint8(x_18, 9, x_20); +uint8_t x_21; lean_object* x_22; +x_21 = 2; +lean_ctor_set_uint8(x_19, 9, x_21); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -lean_inc(x_16); -x_21 = lean_infer_type(x_16, x_5, x_6, x_7, x_8, x_12); -if (lean_obj_tag(x_21) == 0) +lean_inc(x_17); +x_22 = lean_infer_type(x_17, x_5, x_6, x_7, x_8, x_12); +if (lean_obj_tag(x_22) == 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_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_22, 0); lean_inc(x_23); -lean_dec(x_21); +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_22); -x_24 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_checkTypeIsProp(x_22, x_5, x_6, x_7, x_8, x_23); -if (lean_obj_tag(x_24) == 0) +lean_inc(x_23); +x_25 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_checkTypeIsProp(x_23, x_5, x_6, x_7, x_8, x_24); +if (lean_obj_tag(x_25) == 0) { -lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; -x_25 = lean_ctor_get(x_24, 1); -lean_inc(x_25); -lean_dec(x_24); -x_26 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_shouldPreprocess___closed__1; -x_27 = 0; +lean_object* x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_shouldPreprocess___closed__1; +x_28 = 0; lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -lean_inc(x_22); -x_28 = l_Lean_Meta_forallTelescopeReducing___at_Lean_Meta_getParamNames___spec__2___rarg(x_22, x_26, x_27, x_5, x_6, x_7, x_8, x_25); -if (lean_obj_tag(x_28) == 0) +lean_inc(x_23); +x_29 = l_Lean_Meta_forallTelescopeReducing___at_Lean_Meta_getParamNames___spec__2___rarg(x_23, x_27, x_28, x_5, x_6, x_7, x_8, x_26); +if (lean_obj_tag(x_29) == 0) { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -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; +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); if (x_3 == 0) { -uint8_t x_51; -x_51 = lean_unbox(x_29); -lean_dec(x_29); -if (x_51 == 0) +uint8_t x_52; +x_52 = lean_unbox(x_30); +lean_dec(x_30); +if (x_52 == 0) { -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -lean_dec(x_22); +lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_23); lean_dec(x_15); lean_dec(x_13); -lean_inc(x_1); -x_52 = lean_alloc_ctor(0, 1, 2); -lean_ctor_set(x_52, 0, x_1); -lean_ctor_set_uint8(x_52, sizeof(void*)*1, x_2); -lean_ctor_set_uint8(x_52, sizeof(void*)*1 + 1, x_3); x_53 = l_Lean_Expr_const___override(x_1, x_14); x_54 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -x_55 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore(x_52, x_16, x_54, x_53, x_2, x_4, x_27, x_5, x_6, x_7, x_8, x_30); +x_55 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore(x_16, x_17, x_54, x_53, x_2, x_4, x_28, x_5, x_6, x_7, x_8, x_31); if (lean_obj_tag(x_55) == 0) { uint8_t x_56; @@ -11866,112 +15354,114 @@ return x_68; else { lean_object* x_69; +lean_dec(x_1); x_69 = lean_box(0); -x_31 = x_69; -goto block_50; +x_32 = x_69; +goto block_51; } } else { lean_object* x_70; -lean_dec(x_29); +lean_dec(x_30); +lean_dec(x_1); x_70 = lean_box(0); -x_31 = x_70; -goto block_50; +x_32 = x_70; +goto block_51; } -block_50: +block_51: { -uint8_t x_32; lean_object* x_33; -lean_dec(x_31); -x_32 = 1; +uint8_t x_33; lean_object* x_34; +lean_dec(x_32); +x_33 = 1; lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -x_33 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go(x_3, x_32, x_16, x_22, x_5, x_6, x_7, x_8, x_30); -if (lean_obj_tag(x_33) == 0) +x_34 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go(x_3, x_33, x_17, x_23, x_5, x_6, x_7, x_8, x_31); +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_Meta_SimpTheorem_keys___default___closed__1; -x_37 = l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___spec__1(x_1, x_2, x_3, x_4, x_13, x_14, x_15, x_34, x_36, x_5, x_6, x_7, x_8, x_35); -if (lean_obj_tag(x_37) == 0) +x_36 = lean_ctor_get(x_34, 1); +lean_inc(x_36); +lean_dec(x_34); +x_37 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; +x_38 = l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___spec__1(x_2, x_4, x_13, x_14, x_15, x_16, x_35, x_37, x_5, x_6, x_7, x_8, x_36); +if (lean_obj_tag(x_38) == 0) { -uint8_t x_38; -x_38 = !lean_is_exclusive(x_37); -if (x_38 == 0) +uint8_t x_39; +x_39 = !lean_is_exclusive(x_38); +if (x_39 == 0) { -return x_37; +return x_38; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_39 = lean_ctor_get(x_37, 0); -x_40 = lean_ctor_get(x_37, 1); +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_38, 0); +x_41 = lean_ctor_get(x_38, 1); +lean_inc(x_41); lean_inc(x_40); -lean_inc(x_39); -lean_dec(x_37); -x_41 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_41, 0, x_39); -lean_ctor_set(x_41, 1, x_40); -return x_41; +lean_dec(x_38); +x_42 = lean_alloc_ctor(0, 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_42; -x_42 = !lean_is_exclusive(x_37); -if (x_42 == 0) +uint8_t x_43; +x_43 = !lean_is_exclusive(x_38); +if (x_43 == 0) { -return x_37; +return x_38; } else { -lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_43 = lean_ctor_get(x_37, 0); -x_44 = lean_ctor_get(x_37, 1); +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_38, 0); +x_45 = lean_ctor_get(x_38, 1); +lean_inc(x_45); lean_inc(x_44); -lean_inc(x_43); -lean_dec(x_37); -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_38); +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_46; +uint8_t x_47; lean_dec(x_5); +lean_dec(x_16); lean_dec(x_15); lean_dec(x_13); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); -lean_dec(x_1); -x_46 = !lean_is_exclusive(x_33); -if (x_46 == 0) +x_47 = !lean_is_exclusive(x_34); +if (x_47 == 0) { -return x_33; +return x_34; } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_47 = lean_ctor_get(x_33, 0); -x_48 = lean_ctor_get(x_33, 1); +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_34, 0); +x_49 = lean_ctor_get(x_34, 1); +lean_inc(x_49); lean_inc(x_48); -lean_inc(x_47); -lean_dec(x_33); -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_dec(x_34); +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; } } } @@ -11979,8 +15469,9 @@ return x_49; else { uint8_t x_71; -lean_dec(x_22); +lean_dec(x_23); lean_dec(x_5); +lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_13); @@ -11989,19 +15480,19 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); lean_dec(x_1); -x_71 = !lean_is_exclusive(x_28); +x_71 = !lean_is_exclusive(x_29); if (x_71 == 0) { -return x_28; +return x_29; } else { lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_72 = lean_ctor_get(x_28, 0); -x_73 = lean_ctor_get(x_28, 1); +x_72 = lean_ctor_get(x_29, 0); +x_73 = lean_ctor_get(x_29, 1); lean_inc(x_73); lean_inc(x_72); -lean_dec(x_28); +lean_dec(x_29); x_74 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_74, 0, x_72); lean_ctor_set(x_74, 1, x_73); @@ -12012,8 +15503,9 @@ return x_74; else { uint8_t x_75; -lean_dec(x_22); +lean_dec(x_23); lean_dec(x_5); +lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_13); @@ -12022,19 +15514,19 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); lean_dec(x_1); -x_75 = !lean_is_exclusive(x_24); +x_75 = !lean_is_exclusive(x_25); if (x_75 == 0) { -return x_24; +return x_25; } else { lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_76 = lean_ctor_get(x_24, 0); -x_77 = lean_ctor_get(x_24, 1); +x_76 = lean_ctor_get(x_25, 0); +x_77 = lean_ctor_get(x_25, 1); lean_inc(x_77); lean_inc(x_76); -lean_dec(x_24); +lean_dec(x_25); x_78 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_78, 0, x_76); lean_ctor_set(x_78, 1, x_77); @@ -12046,6 +15538,7 @@ else { uint8_t x_79; lean_dec(x_5); +lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_13); @@ -12054,19 +15547,19 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); lean_dec(x_1); -x_79 = !lean_is_exclusive(x_21); +x_79 = !lean_is_exclusive(x_22); if (x_79 == 0) { -return x_21; +return x_22; } else { lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_80 = lean_ctor_get(x_21, 0); -x_81 = lean_ctor_get(x_21, 1); +x_80 = lean_ctor_get(x_22, 0); +x_81 = lean_ctor_get(x_22, 1); lean_inc(x_81); lean_inc(x_80); -lean_dec(x_21); +lean_dec(x_22); x_82 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_82, 0, x_80); lean_ctor_set(x_82, 1, x_81); @@ -12077,19 +15570,19 @@ return x_82; else { 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; lean_object* x_96; lean_object* x_97; -x_83 = lean_ctor_get_uint8(x_18, 0); -x_84 = lean_ctor_get_uint8(x_18, 1); -x_85 = lean_ctor_get_uint8(x_18, 2); -x_86 = lean_ctor_get_uint8(x_18, 3); -x_87 = lean_ctor_get_uint8(x_18, 4); -x_88 = lean_ctor_get_uint8(x_18, 5); -x_89 = lean_ctor_get_uint8(x_18, 6); -x_90 = lean_ctor_get_uint8(x_18, 7); -x_91 = lean_ctor_get_uint8(x_18, 8); -x_92 = lean_ctor_get_uint8(x_18, 10); -x_93 = lean_ctor_get_uint8(x_18, 11); -x_94 = lean_ctor_get_uint8(x_18, 12); -lean_dec(x_18); +x_83 = lean_ctor_get_uint8(x_19, 0); +x_84 = lean_ctor_get_uint8(x_19, 1); +x_85 = lean_ctor_get_uint8(x_19, 2); +x_86 = lean_ctor_get_uint8(x_19, 3); +x_87 = lean_ctor_get_uint8(x_19, 4); +x_88 = lean_ctor_get_uint8(x_19, 5); +x_89 = lean_ctor_get_uint8(x_19, 6); +x_90 = lean_ctor_get_uint8(x_19, 7); +x_91 = lean_ctor_get_uint8(x_19, 8); +x_92 = lean_ctor_get_uint8(x_19, 10); +x_93 = lean_ctor_get_uint8(x_19, 11); +x_94 = lean_ctor_get_uint8(x_19, 12); +lean_dec(x_19); x_95 = 2; x_96 = lean_alloc_ctor(0, 0, 13); lean_ctor_set_uint8(x_96, 0, x_83); @@ -12110,8 +15603,8 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -lean_inc(x_16); -x_97 = lean_infer_type(x_16, x_5, x_6, x_7, x_8, x_12); +lean_inc(x_17); +x_97 = lean_infer_type(x_17, x_5, x_6, x_7, x_8, x_12); if (lean_obj_tag(x_97) == 0) { lean_object* x_98; lean_object* x_99; lean_object* x_100; @@ -12155,83 +15648,80 @@ x_127 = lean_unbox(x_105); lean_dec(x_105); if (x_127 == 0) { -lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; +lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_dec(x_98); lean_dec(x_15); lean_dec(x_13); -lean_inc(x_1); -x_128 = lean_alloc_ctor(0, 1, 2); -lean_ctor_set(x_128, 0, x_1); -lean_ctor_set_uint8(x_128, sizeof(void*)*1, x_2); -lean_ctor_set_uint8(x_128, sizeof(void*)*1 + 1, x_3); -x_129 = l_Lean_Expr_const___override(x_1, x_14); -x_130 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -x_131 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore(x_128, x_16, x_130, x_129, x_2, x_4, x_103, x_5, x_6, x_7, x_8, x_106); -if (lean_obj_tag(x_131) == 0) -{ -lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; -x_132 = lean_ctor_get(x_131, 0); +x_128 = l_Lean_Expr_const___override(x_1, x_14); +x_129 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; +x_130 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore(x_16, x_17, x_129, x_128, x_2, x_4, x_103, x_5, x_6, x_7, x_8, x_106); +if (lean_obj_tag(x_130) == 0) +{ +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_131 = lean_ctor_get(x_130, 0); +lean_inc(x_131); +x_132 = lean_ctor_get(x_130, 1); lean_inc(x_132); -x_133 = lean_ctor_get(x_131, 1); -lean_inc(x_133); -if (lean_is_exclusive(x_131)) { - lean_ctor_release(x_131, 0); - lean_ctor_release(x_131, 1); - x_134 = x_131; +if (lean_is_exclusive(x_130)) { + lean_ctor_release(x_130, 0); + lean_ctor_release(x_130, 1); + x_133 = x_130; } else { - lean_dec_ref(x_131); - x_134 = lean_box(0); + lean_dec_ref(x_130); + x_133 = lean_box(0); } -x_135 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__6; -x_136 = lean_array_push(x_135, x_132); -if (lean_is_scalar(x_134)) { - x_137 = lean_alloc_ctor(0, 2, 0); +x_134 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__6; +x_135 = lean_array_push(x_134, x_131); +if (lean_is_scalar(x_133)) { + x_136 = lean_alloc_ctor(0, 2, 0); } else { - x_137 = x_134; + x_136 = x_133; } -lean_ctor_set(x_137, 0, x_136); -lean_ctor_set(x_137, 1, x_133); -return x_137; +lean_ctor_set(x_136, 0, x_135); +lean_ctor_set(x_136, 1, x_132); +return x_136; } else { -lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; -x_138 = lean_ctor_get(x_131, 0); +lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; +x_137 = lean_ctor_get(x_130, 0); +lean_inc(x_137); +x_138 = lean_ctor_get(x_130, 1); lean_inc(x_138); -x_139 = lean_ctor_get(x_131, 1); -lean_inc(x_139); -if (lean_is_exclusive(x_131)) { - lean_ctor_release(x_131, 0); - lean_ctor_release(x_131, 1); - x_140 = x_131; +if (lean_is_exclusive(x_130)) { + lean_ctor_release(x_130, 0); + lean_ctor_release(x_130, 1); + x_139 = x_130; } else { - lean_dec_ref(x_131); - x_140 = lean_box(0); + lean_dec_ref(x_130); + x_139 = lean_box(0); } -if (lean_is_scalar(x_140)) { - x_141 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_139)) { + x_140 = lean_alloc_ctor(1, 2, 0); } else { - x_141 = x_140; + x_140 = x_139; } -lean_ctor_set(x_141, 0, x_138); -lean_ctor_set(x_141, 1, x_139); -return x_141; +lean_ctor_set(x_140, 0, x_137); +lean_ctor_set(x_140, 1, x_138); +return x_140; } } else { -lean_object* x_142; -x_142 = lean_box(0); -x_107 = x_142; +lean_object* x_141; +lean_dec(x_1); +x_141 = lean_box(0); +x_107 = x_141; goto block_126; } } else { -lean_object* x_143; +lean_object* x_142; lean_dec(x_105); -x_143 = lean_box(0); -x_107 = x_143; +lean_dec(x_1); +x_142 = lean_box(0); +x_107 = x_142; goto block_126; } block_126: @@ -12243,7 +15733,7 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -x_109 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go(x_3, x_108, x_16, x_98, x_5, x_6, x_7, x_8, x_106); +x_109 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go(x_3, x_108, x_17, x_98, x_5, x_6, x_7, x_8, 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; @@ -12253,7 +15743,7 @@ x_111 = lean_ctor_get(x_109, 1); lean_inc(x_111); lean_dec(x_109); x_112 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -x_113 = l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___spec__1(x_1, x_2, x_3, x_4, x_13, x_14, x_15, x_110, x_112, x_5, x_6, x_7, x_8, x_111); +x_113 = l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___spec__1(x_2, x_4, x_13, x_14, x_15, x_16, x_110, x_112, x_5, x_6, x_7, x_8, x_111); if (lean_obj_tag(x_113) == 0) { lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; @@ -12307,13 +15797,13 @@ else { lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_dec(x_5); +lean_dec(x_16); lean_dec(x_15); lean_dec(x_13); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); -lean_dec(x_1); x_122 = lean_ctor_get(x_109, 0); lean_inc(x_122); x_123 = lean_ctor_get(x_109, 1); @@ -12339,9 +15829,10 @@ return x_125; } else { -lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; +lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_dec(x_98); lean_dec(x_5); +lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_13); @@ -12350,33 +15841,34 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); lean_dec(x_1); -x_144 = lean_ctor_get(x_104, 0); +x_143 = lean_ctor_get(x_104, 0); +lean_inc(x_143); +x_144 = lean_ctor_get(x_104, 1); lean_inc(x_144); -x_145 = lean_ctor_get(x_104, 1); -lean_inc(x_145); if (lean_is_exclusive(x_104)) { lean_ctor_release(x_104, 0); lean_ctor_release(x_104, 1); - x_146 = x_104; + x_145 = x_104; } else { lean_dec_ref(x_104); - x_146 = lean_box(0); + x_145 = lean_box(0); } -if (lean_is_scalar(x_146)) { - x_147 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_145)) { + x_146 = lean_alloc_ctor(1, 2, 0); } else { - x_147 = x_146; + x_146 = x_145; } -lean_ctor_set(x_147, 0, x_144); -lean_ctor_set(x_147, 1, x_145); -return x_147; +lean_ctor_set(x_146, 0, x_143); +lean_ctor_set(x_146, 1, x_144); +return x_146; } } else { -lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; +lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_dec(x_98); lean_dec(x_5); +lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_13); @@ -12385,32 +15877,33 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); lean_dec(x_1); -x_148 = lean_ctor_get(x_100, 0); +x_147 = lean_ctor_get(x_100, 0); +lean_inc(x_147); +x_148 = lean_ctor_get(x_100, 1); lean_inc(x_148); -x_149 = lean_ctor_get(x_100, 1); -lean_inc(x_149); if (lean_is_exclusive(x_100)) { lean_ctor_release(x_100, 0); lean_ctor_release(x_100, 1); - x_150 = x_100; + x_149 = x_100; } else { lean_dec_ref(x_100); - x_150 = lean_box(0); + x_149 = lean_box(0); } -if (lean_is_scalar(x_150)) { - x_151 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_149)) { + x_150 = lean_alloc_ctor(1, 2, 0); } else { - x_151 = x_150; + x_150 = x_149; } -lean_ctor_set(x_151, 0, x_148); -lean_ctor_set(x_151, 1, x_149); -return x_151; +lean_ctor_set(x_150, 0, x_147); +lean_ctor_set(x_150, 1, x_148); +return x_150; } } else { -lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; +lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_dec(x_5); +lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_13); @@ -12419,329 +15912,327 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); lean_dec(x_1); -x_152 = lean_ctor_get(x_97, 0); +x_151 = lean_ctor_get(x_97, 0); +lean_inc(x_151); +x_152 = lean_ctor_get(x_97, 1); lean_inc(x_152); -x_153 = lean_ctor_get(x_97, 1); -lean_inc(x_153); if (lean_is_exclusive(x_97)) { lean_ctor_release(x_97, 0); lean_ctor_release(x_97, 1); - x_154 = x_97; + x_153 = x_97; } else { lean_dec_ref(x_97); - x_154 = lean_box(0); + x_153 = lean_box(0); } -if (lean_is_scalar(x_154)) { - x_155 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_153)) { + x_154 = lean_alloc_ctor(1, 2, 0); } else { - x_155 = x_154; + x_154 = x_153; } -lean_ctor_set(x_155, 0, x_152); -lean_ctor_set(x_155, 1, x_153); -return x_155; +lean_ctor_set(x_154, 0, x_151); +lean_ctor_set(x_154, 1, x_152); +return x_154; } } } 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; uint8_t x_163; uint8_t x_164; uint8_t x_165; uint8_t x_166; uint8_t x_167; uint8_t x_168; uint8_t x_169; uint8_t x_170; uint8_t x_171; uint8_t x_172; uint8_t x_173; uint8_t x_174; uint8_t x_175; lean_object* x_176; uint8_t x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; -x_156 = lean_ctor_get(x_5, 0); -x_157 = lean_ctor_get(x_5, 1); -x_158 = lean_ctor_get(x_5, 2); -x_159 = lean_ctor_get(x_5, 3); -x_160 = lean_ctor_get(x_5, 4); -x_161 = lean_ctor_get(x_5, 5); -x_162 = lean_ctor_get_uint8(x_5, sizeof(void*)*6); -x_163 = lean_ctor_get_uint8(x_5, sizeof(void*)*6 + 1); -lean_inc(x_161); +lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; uint8_t x_161; uint8_t x_162; uint8_t x_163; uint8_t x_164; uint8_t x_165; uint8_t x_166; uint8_t x_167; uint8_t x_168; uint8_t x_169; uint8_t x_170; uint8_t x_171; uint8_t x_172; uint8_t x_173; uint8_t x_174; lean_object* x_175; uint8_t x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; +x_155 = lean_ctor_get(x_5, 0); +x_156 = lean_ctor_get(x_5, 1); +x_157 = lean_ctor_get(x_5, 2); +x_158 = lean_ctor_get(x_5, 3); +x_159 = lean_ctor_get(x_5, 4); +x_160 = lean_ctor_get(x_5, 5); +x_161 = lean_ctor_get_uint8(x_5, sizeof(void*)*6); +x_162 = lean_ctor_get_uint8(x_5, sizeof(void*)*6 + 1); lean_inc(x_160); lean_inc(x_159); lean_inc(x_158); lean_inc(x_157); lean_inc(x_156); +lean_inc(x_155); lean_dec(x_5); -x_164 = lean_ctor_get_uint8(x_156, 0); -x_165 = lean_ctor_get_uint8(x_156, 1); -x_166 = lean_ctor_get_uint8(x_156, 2); -x_167 = lean_ctor_get_uint8(x_156, 3); -x_168 = lean_ctor_get_uint8(x_156, 4); -x_169 = lean_ctor_get_uint8(x_156, 5); -x_170 = lean_ctor_get_uint8(x_156, 6); -x_171 = lean_ctor_get_uint8(x_156, 7); -x_172 = lean_ctor_get_uint8(x_156, 8); -x_173 = lean_ctor_get_uint8(x_156, 10); -x_174 = lean_ctor_get_uint8(x_156, 11); -x_175 = lean_ctor_get_uint8(x_156, 12); -if (lean_is_exclusive(x_156)) { - x_176 = x_156; +x_163 = lean_ctor_get_uint8(x_155, 0); +x_164 = lean_ctor_get_uint8(x_155, 1); +x_165 = lean_ctor_get_uint8(x_155, 2); +x_166 = lean_ctor_get_uint8(x_155, 3); +x_167 = lean_ctor_get_uint8(x_155, 4); +x_168 = lean_ctor_get_uint8(x_155, 5); +x_169 = lean_ctor_get_uint8(x_155, 6); +x_170 = lean_ctor_get_uint8(x_155, 7); +x_171 = lean_ctor_get_uint8(x_155, 8); +x_172 = lean_ctor_get_uint8(x_155, 10); +x_173 = lean_ctor_get_uint8(x_155, 11); +x_174 = lean_ctor_get_uint8(x_155, 12); +if (lean_is_exclusive(x_155)) { + x_175 = x_155; } else { - lean_dec_ref(x_156); - x_176 = lean_box(0); + lean_dec_ref(x_155); + x_175 = lean_box(0); } -x_177 = 2; -if (lean_is_scalar(x_176)) { - x_178 = lean_alloc_ctor(0, 0, 13); +x_176 = 2; +if (lean_is_scalar(x_175)) { + x_177 = lean_alloc_ctor(0, 0, 13); } else { - x_178 = x_176; -} -lean_ctor_set_uint8(x_178, 0, x_164); -lean_ctor_set_uint8(x_178, 1, x_165); -lean_ctor_set_uint8(x_178, 2, x_166); -lean_ctor_set_uint8(x_178, 3, x_167); -lean_ctor_set_uint8(x_178, 4, x_168); -lean_ctor_set_uint8(x_178, 5, x_169); -lean_ctor_set_uint8(x_178, 6, x_170); -lean_ctor_set_uint8(x_178, 7, x_171); -lean_ctor_set_uint8(x_178, 8, x_172); -lean_ctor_set_uint8(x_178, 9, x_177); -lean_ctor_set_uint8(x_178, 10, x_173); -lean_ctor_set_uint8(x_178, 11, x_174); -lean_ctor_set_uint8(x_178, 12, x_175); -x_179 = lean_alloc_ctor(0, 6, 2); -lean_ctor_set(x_179, 0, x_178); -lean_ctor_set(x_179, 1, x_157); -lean_ctor_set(x_179, 2, x_158); -lean_ctor_set(x_179, 3, x_159); -lean_ctor_set(x_179, 4, x_160); -lean_ctor_set(x_179, 5, x_161); -lean_ctor_set_uint8(x_179, sizeof(void*)*6, x_162); -lean_ctor_set_uint8(x_179, sizeof(void*)*6 + 1, x_163); + x_177 = x_175; +} +lean_ctor_set_uint8(x_177, 0, x_163); +lean_ctor_set_uint8(x_177, 1, x_164); +lean_ctor_set_uint8(x_177, 2, x_165); +lean_ctor_set_uint8(x_177, 3, x_166); +lean_ctor_set_uint8(x_177, 4, x_167); +lean_ctor_set_uint8(x_177, 5, x_168); +lean_ctor_set_uint8(x_177, 6, x_169); +lean_ctor_set_uint8(x_177, 7, x_170); +lean_ctor_set_uint8(x_177, 8, x_171); +lean_ctor_set_uint8(x_177, 9, x_176); +lean_ctor_set_uint8(x_177, 10, x_172); +lean_ctor_set_uint8(x_177, 11, x_173); +lean_ctor_set_uint8(x_177, 12, x_174); +x_178 = lean_alloc_ctor(0, 6, 2); +lean_ctor_set(x_178, 0, x_177); +lean_ctor_set(x_178, 1, x_156); +lean_ctor_set(x_178, 2, x_157); +lean_ctor_set(x_178, 3, x_158); +lean_ctor_set(x_178, 4, x_159); +lean_ctor_set(x_178, 5, x_160); +lean_ctor_set_uint8(x_178, sizeof(void*)*6, x_161); +lean_ctor_set_uint8(x_178, sizeof(void*)*6 + 1, x_162); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -lean_inc(x_179); -lean_inc(x_16); -x_180 = lean_infer_type(x_16, x_179, x_6, x_7, x_8, x_12); -if (lean_obj_tag(x_180) == 0) +lean_inc(x_178); +lean_inc(x_17); +x_179 = lean_infer_type(x_17, x_178, x_6, x_7, x_8, x_12); +if (lean_obj_tag(x_179) == 0) { -lean_object* x_181; lean_object* x_182; lean_object* x_183; -x_181 = lean_ctor_get(x_180, 0); +lean_object* x_180; lean_object* x_181; lean_object* x_182; +x_180 = lean_ctor_get(x_179, 0); +lean_inc(x_180); +x_181 = lean_ctor_get(x_179, 1); lean_inc(x_181); -x_182 = lean_ctor_get(x_180, 1); -lean_inc(x_182); -lean_dec(x_180); +lean_dec(x_179); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -lean_inc(x_179); -lean_inc(x_181); -x_183 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_checkTypeIsProp(x_181, x_179, x_6, x_7, x_8, x_182); -if (lean_obj_tag(x_183) == 0) +lean_inc(x_178); +lean_inc(x_180); +x_182 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_checkTypeIsProp(x_180, x_178, x_6, x_7, x_8, x_181); +if (lean_obj_tag(x_182) == 0) { -lean_object* x_184; lean_object* x_185; uint8_t x_186; lean_object* x_187; -x_184 = lean_ctor_get(x_183, 1); -lean_inc(x_184); -lean_dec(x_183); -x_185 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_shouldPreprocess___closed__1; -x_186 = 0; +lean_object* x_183; lean_object* x_184; uint8_t x_185; lean_object* x_186; +x_183 = lean_ctor_get(x_182, 1); +lean_inc(x_183); +lean_dec(x_182); +x_184 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_shouldPreprocess___closed__1; +x_185 = 0; lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -lean_inc(x_179); -lean_inc(x_181); -x_187 = l_Lean_Meta_forallTelescopeReducing___at_Lean_Meta_getParamNames___spec__2___rarg(x_181, x_185, x_186, x_179, x_6, x_7, x_8, x_184); -if (lean_obj_tag(x_187) == 0) -{ -lean_object* x_188; lean_object* x_189; lean_object* x_190; -x_188 = lean_ctor_get(x_187, 0); +lean_inc(x_178); +lean_inc(x_180); +x_186 = l_Lean_Meta_forallTelescopeReducing___at_Lean_Meta_getParamNames___spec__2___rarg(x_180, x_184, x_185, x_178, x_6, x_7, x_8, x_183); +if (lean_obj_tag(x_186) == 0) +{ +lean_object* x_187; lean_object* x_188; lean_object* x_189; +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_187, 1); -lean_inc(x_189); -lean_dec(x_187); +lean_dec(x_186); if (x_3 == 0) { -uint8_t x_210; -x_210 = lean_unbox(x_188); -lean_dec(x_188); -if (x_210 == 0) +uint8_t x_209; +x_209 = lean_unbox(x_187); +lean_dec(x_187); +if (x_209 == 0) { -lean_object* x_211; lean_object* x_212; lean_object* x_213; lean_object* x_214; -lean_dec(x_181); +lean_object* x_210; lean_object* x_211; lean_object* x_212; +lean_dec(x_180); lean_dec(x_15); lean_dec(x_13); -lean_inc(x_1); -x_211 = lean_alloc_ctor(0, 1, 2); -lean_ctor_set(x_211, 0, x_1); -lean_ctor_set_uint8(x_211, sizeof(void*)*1, x_2); -lean_ctor_set_uint8(x_211, sizeof(void*)*1 + 1, x_3); -x_212 = l_Lean_Expr_const___override(x_1, x_14); -x_213 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -x_214 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore(x_211, x_16, x_213, x_212, x_2, x_4, x_186, x_179, x_6, x_7, x_8, x_189); -if (lean_obj_tag(x_214) == 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; -x_215 = lean_ctor_get(x_214, 0); -lean_inc(x_215); -x_216 = lean_ctor_get(x_214, 1); -lean_inc(x_216); -if (lean_is_exclusive(x_214)) { - lean_ctor_release(x_214, 0); - lean_ctor_release(x_214, 1); - x_217 = x_214; +x_210 = l_Lean_Expr_const___override(x_1, x_14); +x_211 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; +x_212 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremCore(x_16, x_17, x_211, x_210, x_2, x_4, x_185, x_178, x_6, x_7, x_8, x_188); +if (lean_obj_tag(x_212) == 0) +{ +lean_object* x_213; lean_object* x_214; lean_object* x_215; lean_object* x_216; lean_object* x_217; lean_object* x_218; +x_213 = lean_ctor_get(x_212, 0); +lean_inc(x_213); +x_214 = lean_ctor_get(x_212, 1); +lean_inc(x_214); +if (lean_is_exclusive(x_212)) { + lean_ctor_release(x_212, 0); + lean_ctor_release(x_212, 1); + x_215 = x_212; } else { - lean_dec_ref(x_214); - x_217 = lean_box(0); + lean_dec_ref(x_212); + x_215 = lean_box(0); } -x_218 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__6; -x_219 = lean_array_push(x_218, x_215); -if (lean_is_scalar(x_217)) { - x_220 = lean_alloc_ctor(0, 2, 0); +x_216 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go___lambda__3___closed__6; +x_217 = lean_array_push(x_216, x_213); +if (lean_is_scalar(x_215)) { + x_218 = lean_alloc_ctor(0, 2, 0); } else { - x_220 = x_217; + x_218 = x_215; } -lean_ctor_set(x_220, 0, x_219); -lean_ctor_set(x_220, 1, x_216); -return x_220; +lean_ctor_set(x_218, 0, x_217); +lean_ctor_set(x_218, 1, x_214); +return x_218; } else { -lean_object* x_221; lean_object* x_222; lean_object* x_223; lean_object* x_224; -x_221 = lean_ctor_get(x_214, 0); -lean_inc(x_221); -x_222 = lean_ctor_get(x_214, 1); -lean_inc(x_222); -if (lean_is_exclusive(x_214)) { - lean_ctor_release(x_214, 0); - lean_ctor_release(x_214, 1); - x_223 = x_214; +lean_object* x_219; lean_object* x_220; lean_object* x_221; lean_object* x_222; +x_219 = lean_ctor_get(x_212, 0); +lean_inc(x_219); +x_220 = lean_ctor_get(x_212, 1); +lean_inc(x_220); +if (lean_is_exclusive(x_212)) { + lean_ctor_release(x_212, 0); + lean_ctor_release(x_212, 1); + x_221 = x_212; } else { - lean_dec_ref(x_214); - x_223 = lean_box(0); + lean_dec_ref(x_212); + x_221 = lean_box(0); } -if (lean_is_scalar(x_223)) { - x_224 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_221)) { + x_222 = lean_alloc_ctor(1, 2, 0); } else { - x_224 = x_223; + x_222 = x_221; } -lean_ctor_set(x_224, 0, x_221); -lean_ctor_set(x_224, 1, x_222); -return x_224; +lean_ctor_set(x_222, 0, x_219); +lean_ctor_set(x_222, 1, x_220); +return x_222; } } else { -lean_object* x_225; -x_225 = lean_box(0); -x_190 = x_225; -goto block_209; +lean_object* x_223; +lean_dec(x_1); +x_223 = lean_box(0); +x_189 = x_223; +goto block_208; } } else { -lean_object* x_226; -lean_dec(x_188); -x_226 = lean_box(0); -x_190 = x_226; -goto block_209; +lean_object* x_224; +lean_dec(x_187); +lean_dec(x_1); +x_224 = lean_box(0); +x_189 = x_224; +goto block_208; } -block_209: +block_208: { -uint8_t x_191; lean_object* x_192; -lean_dec(x_190); -x_191 = 1; +uint8_t x_190; lean_object* x_191; +lean_dec(x_189); +x_190 = 1; lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -lean_inc(x_179); -x_192 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go(x_3, x_191, x_16, x_181, x_179, x_6, x_7, x_8, x_189); -if (lean_obj_tag(x_192) == 0) -{ -lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; -x_193 = lean_ctor_get(x_192, 0); +lean_inc(x_178); +x_191 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_preprocess_go(x_3, x_190, x_17, x_180, x_178, x_6, x_7, x_8, x_188); +if (lean_obj_tag(x_191) == 0) +{ +lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; +x_192 = lean_ctor_get(x_191, 0); +lean_inc(x_192); +x_193 = lean_ctor_get(x_191, 1); lean_inc(x_193); -x_194 = lean_ctor_get(x_192, 1); -lean_inc(x_194); -lean_dec(x_192); -x_195 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -x_196 = l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___spec__1(x_1, x_2, x_3, x_4, x_13, x_14, x_15, x_193, x_195, x_179, x_6, x_7, x_8, x_194); -if (lean_obj_tag(x_196) == 0) -{ -lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; -x_197 = lean_ctor_get(x_196, 0); +lean_dec(x_191); +x_194 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; +x_195 = l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___spec__1(x_2, x_4, x_13, x_14, x_15, x_16, x_192, x_194, x_178, x_6, x_7, x_8, x_193); +if (lean_obj_tag(x_195) == 0) +{ +lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* 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); -x_198 = lean_ctor_get(x_196, 1); -lean_inc(x_198); -if (lean_is_exclusive(x_196)) { - lean_ctor_release(x_196, 0); - lean_ctor_release(x_196, 1); - x_199 = x_196; +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_196); - x_199 = lean_box(0); + lean_dec_ref(x_195); + x_198 = lean_box(0); } -if (lean_is_scalar(x_199)) { - x_200 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_198)) { + x_199 = lean_alloc_ctor(0, 2, 0); } else { - x_200 = x_199; + x_199 = x_198; } -lean_ctor_set(x_200, 0, x_197); -lean_ctor_set(x_200, 1, x_198); -return x_200; +lean_ctor_set(x_199, 0, x_196); +lean_ctor_set(x_199, 1, x_197); +return x_199; } else { -lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; -x_201 = lean_ctor_get(x_196, 0); +lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; +x_200 = lean_ctor_get(x_195, 0); +lean_inc(x_200); +x_201 = lean_ctor_get(x_195, 1); lean_inc(x_201); -x_202 = lean_ctor_get(x_196, 1); -lean_inc(x_202); -if (lean_is_exclusive(x_196)) { - lean_ctor_release(x_196, 0); - lean_ctor_release(x_196, 1); - x_203 = x_196; +if (lean_is_exclusive(x_195)) { + lean_ctor_release(x_195, 0); + lean_ctor_release(x_195, 1); + x_202 = x_195; } else { - lean_dec_ref(x_196); - x_203 = lean_box(0); + lean_dec_ref(x_195); + x_202 = lean_box(0); } -if (lean_is_scalar(x_203)) { - x_204 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_202)) { + x_203 = lean_alloc_ctor(1, 2, 0); } else { - x_204 = x_203; + x_203 = x_202; } -lean_ctor_set(x_204, 0, x_201); -lean_ctor_set(x_204, 1, x_202); -return x_204; +lean_ctor_set(x_203, 0, x_200); +lean_ctor_set(x_203, 1, x_201); +return x_203; } } else { -lean_object* x_205; lean_object* x_206; lean_object* x_207; lean_object* x_208; -lean_dec(x_179); +lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; +lean_dec(x_178); +lean_dec(x_16); lean_dec(x_15); lean_dec(x_13); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); -lean_dec(x_1); -x_205 = lean_ctor_get(x_192, 0); +x_204 = lean_ctor_get(x_191, 0); +lean_inc(x_204); +x_205 = lean_ctor_get(x_191, 1); lean_inc(x_205); -x_206 = lean_ctor_get(x_192, 1); -lean_inc(x_206); -if (lean_is_exclusive(x_192)) { - lean_ctor_release(x_192, 0); - lean_ctor_release(x_192, 1); - x_207 = x_192; +if (lean_is_exclusive(x_191)) { + lean_ctor_release(x_191, 0); + lean_ctor_release(x_191, 1); + x_206 = x_191; } else { - lean_dec_ref(x_192); - x_207 = lean_box(0); + lean_dec_ref(x_191); + x_206 = lean_box(0); } -if (lean_is_scalar(x_207)) { - x_208 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_206)) { + x_207 = lean_alloc_ctor(1, 2, 0); } else { - x_208 = x_207; + x_207 = x_206; } -lean_ctor_set(x_208, 0, x_205); -lean_ctor_set(x_208, 1, x_206); -return x_208; +lean_ctor_set(x_207, 0, x_204); +lean_ctor_set(x_207, 1, x_205); +return x_207; } } } else { -lean_object* x_227; lean_object* x_228; lean_object* x_229; lean_object* x_230; -lean_dec(x_181); -lean_dec(x_179); +lean_object* x_225; lean_object* x_226; lean_object* x_227; lean_object* x_228; +lean_dec(x_180); +lean_dec(x_178); +lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_13); @@ -12750,33 +16241,34 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); lean_dec(x_1); -x_227 = lean_ctor_get(x_187, 0); -lean_inc(x_227); -x_228 = lean_ctor_get(x_187, 1); -lean_inc(x_228); -if (lean_is_exclusive(x_187)) { - lean_ctor_release(x_187, 0); - lean_ctor_release(x_187, 1); - x_229 = x_187; +x_225 = lean_ctor_get(x_186, 0); +lean_inc(x_225); +x_226 = lean_ctor_get(x_186, 1); +lean_inc(x_226); +if (lean_is_exclusive(x_186)) { + lean_ctor_release(x_186, 0); + lean_ctor_release(x_186, 1); + x_227 = x_186; } else { - lean_dec_ref(x_187); - x_229 = lean_box(0); + lean_dec_ref(x_186); + x_227 = lean_box(0); } -if (lean_is_scalar(x_229)) { - x_230 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_227)) { + x_228 = lean_alloc_ctor(1, 2, 0); } else { - x_230 = x_229; + x_228 = x_227; } -lean_ctor_set(x_230, 0, x_227); -lean_ctor_set(x_230, 1, x_228); -return x_230; +lean_ctor_set(x_228, 0, x_225); +lean_ctor_set(x_228, 1, x_226); +return x_228; } } else { -lean_object* x_231; lean_object* x_232; lean_object* x_233; lean_object* x_234; -lean_dec(x_181); -lean_dec(x_179); +lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; +lean_dec(x_180); +lean_dec(x_178); +lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_13); @@ -12785,32 +16277,33 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); lean_dec(x_1); -x_231 = lean_ctor_get(x_183, 0); -lean_inc(x_231); -x_232 = lean_ctor_get(x_183, 1); -lean_inc(x_232); -if (lean_is_exclusive(x_183)) { - lean_ctor_release(x_183, 0); - lean_ctor_release(x_183, 1); - x_233 = x_183; +x_229 = lean_ctor_get(x_182, 0); +lean_inc(x_229); +x_230 = lean_ctor_get(x_182, 1); +lean_inc(x_230); +if (lean_is_exclusive(x_182)) { + lean_ctor_release(x_182, 0); + lean_ctor_release(x_182, 1); + x_231 = x_182; } else { - lean_dec_ref(x_183); - x_233 = lean_box(0); + lean_dec_ref(x_182); + x_231 = lean_box(0); } -if (lean_is_scalar(x_233)) { - x_234 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_231)) { + x_232 = lean_alloc_ctor(1, 2, 0); } else { - x_234 = x_233; + x_232 = x_231; } -lean_ctor_set(x_234, 0, x_231); -lean_ctor_set(x_234, 1, x_232); -return x_234; +lean_ctor_set(x_232, 0, x_229); +lean_ctor_set(x_232, 1, x_230); +return x_232; } } else { -lean_object* x_235; lean_object* x_236; lean_object* x_237; lean_object* x_238; -lean_dec(x_179); +lean_object* x_233; lean_object* x_234; lean_object* x_235; lean_object* x_236; +lean_dec(x_178); +lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_13); @@ -12819,69 +16312,67 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); lean_dec(x_1); -x_235 = lean_ctor_get(x_180, 0); -lean_inc(x_235); -x_236 = lean_ctor_get(x_180, 1); -lean_inc(x_236); -if (lean_is_exclusive(x_180)) { - lean_ctor_release(x_180, 0); - lean_ctor_release(x_180, 1); - x_237 = x_180; +x_233 = lean_ctor_get(x_179, 0); +lean_inc(x_233); +x_234 = lean_ctor_get(x_179, 1); +lean_inc(x_234); +if (lean_is_exclusive(x_179)) { + lean_ctor_release(x_179, 0); + lean_ctor_release(x_179, 1); + x_235 = x_179; } else { - lean_dec_ref(x_180); - x_237 = lean_box(0); + lean_dec_ref(x_179); + x_235 = lean_box(0); } -if (lean_is_scalar(x_237)) { - x_238 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_235)) { + x_236 = lean_alloc_ctor(1, 2, 0); } else { - x_238 = x_237; + x_236 = x_235; } -lean_ctor_set(x_238, 0, x_235); -lean_ctor_set(x_238, 1, x_236); -return x_238; +lean_ctor_set(x_236, 0, x_233); +lean_ctor_set(x_236, 1, x_234); +return x_236; } } } else { -uint8_t x_239; +uint8_t x_237; 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_239 = !lean_is_exclusive(x_10); -if (x_239 == 0) +x_237 = !lean_is_exclusive(x_10); +if (x_237 == 0) { return x_10; } else { -lean_object* x_240; lean_object* x_241; lean_object* x_242; -x_240 = lean_ctor_get(x_10, 0); -x_241 = lean_ctor_get(x_10, 1); -lean_inc(x_241); -lean_inc(x_240); +lean_object* x_238; lean_object* x_239; lean_object* x_240; +x_238 = lean_ctor_get(x_10, 0); +x_239 = lean_ctor_get(x_10, 1); +lean_inc(x_239); +lean_inc(x_238); lean_dec(x_10); -x_242 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_242, 0, x_240); -lean_ctor_set(x_242, 1, x_241); -return x_242; +x_240 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_240, 0, x_238); +lean_ctor_set(x_240, 1, x_239); +return x_240; } } } } -LEAN_EXPORT lean_object* l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___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_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___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: { -uint8_t x_15; uint8_t x_16; lean_object* x_17; -x_15 = lean_unbox(x_2); -lean_dec(x_2); -x_16 = lean_unbox(x_3); -lean_dec(x_3); -x_17 = l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___spec__1(x_1, x_15, x_16, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -return x_17; +uint8_t x_14; lean_object* x_15; +x_14 = lean_unbox(x_1); +lean_dec(x_1); +x_15 = l_List_forIn_loop___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___spec__1(x_14, x_2, 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_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { @@ -13442,7 +16933,7 @@ x_15 = l_Lean_Meta_addSimpTheorem(x_1, x_2, x_12, x_13, x_14, x_6, x_7, x_8, x_9 return x_15; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__1() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__1() { _start: { lean_object* x_1; @@ -13450,7 +16941,7 @@ x_1 = lean_mk_string_from_bytes("Lean", 4); return x_1; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__2() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__2() { _start: { lean_object* x_1; @@ -13458,7 +16949,7 @@ x_1 = lean_mk_string_from_bytes("Parser", 6); return x_1; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__3() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__3() { _start: { lean_object* x_1; @@ -13466,7 +16957,7 @@ x_1 = lean_mk_string_from_bytes("Tactic", 6); return x_1; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__4() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__4() { _start: { lean_object* x_1; @@ -13474,19 +16965,19 @@ x_1 = lean_mk_string_from_bytes("tacticSeq", 9); return x_1; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__5() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____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_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__1; -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__2; -x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__3; -x_4 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__4; +x_1 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__1; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__2; +x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__3; +x_4 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____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_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__6() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__6() { _start: { lean_object* x_1; @@ -13494,19 +16985,19 @@ x_1 = lean_mk_string_from_bytes("tacticSeq1Indented", 18); return x_1; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__7() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____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___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__1; -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__2; -x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__3; -x_4 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__6; +x_1 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__1; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__2; +x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__3; +x_4 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__6; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__8() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__8() { _start: { lean_object* x_1; @@ -13514,17 +17005,17 @@ x_1 = lean_mk_string_from_bytes("null", 4); return x_1; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__9() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__8; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__8; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__10() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__10() { _start: { lean_object* x_1; @@ -13532,41 +17023,41 @@ x_1 = lean_mk_string_from_bytes("exact", 5); return x_1; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__11() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____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___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__1; -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__2; -x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__3; -x_4 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__10; +x_1 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__1; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__2; +x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__3; +x_4 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__10; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__12() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(2); -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__10; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__10; 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_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__13() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__12; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__12; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__14() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__14() { _start: { lean_object* x_1; @@ -13574,7 +17065,7 @@ x_1 = lean_mk_string_from_bytes("Term", 4); return x_1; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__15() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__15() { _start: { lean_object* x_1; @@ -13582,19 +17073,19 @@ x_1 = lean_mk_string_from_bytes("declName", 8); return x_1; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__16() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____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_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__1; -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__2; -x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__14; -x_4 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__15; +x_1 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__1; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__2; +x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__14; +x_4 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____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_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__17() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__17() { _start: { lean_object* x_1; @@ -13602,35 +17093,35 @@ x_1 = lean_mk_string_from_bytes("decl_name%", 10); return x_1; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__18() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(2); -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__17; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__17; 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_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__19() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__19() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__18; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__18; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__20() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__20() { _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_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__16; -x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__19; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__16; +x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__19; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -13638,23 +17129,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__21() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__13; -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__20; +x_1 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__13; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__20; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__22() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____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_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__11; -x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__21; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__11; +x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____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); @@ -13662,23 +17153,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__23() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__23() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__22; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__22; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__24() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__24() { _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_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__9; -x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__23; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__9; +x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__23; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -13686,23 +17177,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__25() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__25() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__24; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__24; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__26() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____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_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__7; -x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__25; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__7; +x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____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); @@ -13710,23 +17201,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__27() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__27() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Meta_SimpTheorem_keys___default___closed__1; -x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__26; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__26; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__28() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____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_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__5; -x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__27; +x_2 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__5; +x_3 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____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); @@ -13734,11 +17225,11 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959_() { +static lean_object* _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314_() { _start: { lean_object* x_1; -x_1 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__28; +x_1 = l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__28; return x_1; } } @@ -13784,7 +17275,7 @@ static lean_object* _init_l_Lean_Meta_mkSimpExt___closed__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_SimpTheorems_pre___default___closed__1; x_2 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1; -x_3 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Instances_erased___default___spec__1; +x_3 = l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; x_4 = l_Lean_Meta_SimpTheorems_toUnfoldThms___default___closed__1; x_5 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_5, 0, x_1); @@ -13828,7 +17319,7 @@ x_7 = l_Lean_registerSimpleScopedEnvExtension___rarg(x_6, x_2); return x_7; } } -LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5017____spec__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5372____spec__1(lean_object* x_1) { _start: { lean_object* x_2; @@ -13836,7 +17327,7 @@ x_2 = l_Lean_mkHashMapImp___rarg(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5017_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5372_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; uint8_t x_5; @@ -13863,11 +17354,11 @@ return x_8; } } } -LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5017____spec__1___boxed(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5372____spec__1___boxed(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Lean_mkHashMap___at_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5017____spec__1(x_1); +x_2 = l_Lean_mkHashMap___at_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5372____spec__1(x_1); lean_dec(x_1); return x_2; } @@ -14008,7 +17499,6 @@ lean_ctor_set(x_13, 0, x_2); lean_ctor_set_uint8(x_13, sizeof(void*)*1, x_3); lean_ctor_set_uint8(x_13, sizeof(void*)*1 + 1, x_4); x_14 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_SimpTheorems_eraseCore___spec__1(x_12, x_13); -lean_dec(x_13); lean_ctor_set(x_1, 4, x_14); x_15 = l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); if (lean_obj_tag(x_15) == 0) @@ -14150,7 +17640,6 @@ lean_ctor_set(x_47, 0, x_2); lean_ctor_set_uint8(x_47, sizeof(void*)*1, x_3); lean_ctor_set_uint8(x_47, sizeof(void*)*1 + 1, x_4); x_48 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_SimpTheorems_eraseCore___spec__1(x_45, x_47); -lean_dec(x_47); x_49 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_49, 0, x_41); lean_ctor_set(x_49, 1, x_42); @@ -16058,7 +19547,7 @@ x_7 = lean_ctor_get(x_6, 4); lean_inc(x_7); lean_dec(x_6); lean_inc(x_1); -x_8 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_SimpTheorems_isLemma___spec__1(x_7, x_1); +x_8 = l_Lean_PersistentHashMap_contains___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__1(x_7, x_1); if (x_8 == 0) { size_t x_9; size_t x_10; @@ -16316,6 +19805,7 @@ lean_object* initialize_Lean_Meta_AppBuilder(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Eqns(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_AuxLemma(uint8_t builtin, lean_object*); lean_object* initialize_Lean_DocString(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_PrettyPrinter(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Meta_Tactic_Simp_SimpTheorems(uint8_t builtin, lean_object* w) { lean_object * res; @@ -16342,6 +19832,9 @@ lean_dec_ref(res); res = initialize_Lean_DocString(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_PrettyPrinter(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); l_Lean_Meta_instInhabitedOrigin___closed__1 = _init_l_Lean_Meta_instInhabitedOrigin___closed__1(); lean_mark_persistent(l_Lean_Meta_instInhabitedOrigin___closed__1); l_Lean_Meta_instInhabitedOrigin = _init_l_Lean_Meta_instInhabitedOrigin(); @@ -16490,10 +19983,10 @@ l_Lean_Meta_simpDtConfig___closed__1 = _init_l_Lean_Meta_simpDtConfig___closed__ lean_mark_persistent(l_Lean_Meta_simpDtConfig___closed__1); l_Lean_Meta_simpDtConfig = _init_l_Lean_Meta_simpDtConfig(); lean_mark_persistent(l_Lean_Meta_simpDtConfig); -l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__1 = _init_l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__1(); -l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__2 = _init_l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__2(); -l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__3 = _init_l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__3(); -lean_mark_persistent(l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_addSimpTheoremEntry_updateLemmaNames___spec__2___closed__3); +l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__1 = _init_l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__1(); +l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__2 = _init_l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__2___closed__2(); +l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5___closed__1 = _init_l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5___closed__1(); +lean_mark_persistent(l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_SimpTheorems_eraseCore___spec__5___closed__1); l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___closed__1 = _init_l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___closed__1(); lean_mark_persistent(l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_addSimpTheoremEntry___spec__9___closed__1); l_panic___at_Lean_Meta_addSimpTheoremEntry___spec__13___closed__1 = _init_l_panic___at_Lean_Meta_addSimpTheoremEntry___spec__13___closed__1(); @@ -16626,71 +20119,71 @@ l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__1___closed__ lean_mark_persistent(l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__1___closed__9); l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__1___closed__10 = _init_l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__1___closed__10(); lean_mark_persistent(l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__1___closed__10); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__1 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__1(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__1); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__2 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__2(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__2); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__3 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__3(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__3); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__4 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__4(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__4); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__5 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__5(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__5); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__6 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__6(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__6); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__7 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__7(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__7); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__8 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__8(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__8); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__9 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__9(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__9); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__10 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__10(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__10); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__11 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__11(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__11); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__12 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__12(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__12); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__13 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__13(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__13); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__14 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__14(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__14); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__15 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__15(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__15); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__16 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__16(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__16); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__17 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__17(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__17); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__18 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__18(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__18); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__19 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__19(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__19); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__20 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__20(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__20); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__21 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__21(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__21); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__22 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__22(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__22); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__23 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__23(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__23); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__24 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__24(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__24); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__25 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__25(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__25); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__26 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__26(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__26); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__27 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__27(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__27); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__28 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__28(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959____closed__28); -l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959_ = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959_(); -lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_4959_); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__1 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__1(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__1); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__2 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__2(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__2); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__3 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__3(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__3); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__4 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__4(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__4); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__5 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__5(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__5); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__6 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__6(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__6); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__7 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__7(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__7); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__8 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__8(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__8); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__9 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__9(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__9); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__10 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__10(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__10); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__11 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__11(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__11); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__12 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__12(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__12); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__13 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__13(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__13); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__14 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__14(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__14); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__15 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__15(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__15); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__16 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__16(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__16); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__17 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__17(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__17); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__18 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__18(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__18); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__19 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__19(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__19); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__20 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__20(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__20); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__21 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__21(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__21); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__22 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__22(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__22); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__23 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__23(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__23); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__24 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__24(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__24); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__25 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__25(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__25); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__26 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__26(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__26); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__27 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__27(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__27); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__28 = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__28(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314____closed__28); +l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314_ = _init_l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314_(); +lean_mark_persistent(l___auto____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5314_); l_Lean_Meta_mkSimpExt___closed__1 = _init_l_Lean_Meta_mkSimpExt___closed__1(); lean_mark_persistent(l_Lean_Meta_mkSimpExt___closed__1); l_Lean_Meta_mkSimpExt___closed__2 = _init_l_Lean_Meta_mkSimpExt___closed__2(); lean_mark_persistent(l_Lean_Meta_mkSimpExt___closed__2); l_Lean_Meta_mkSimpExt___closed__3 = _init_l_Lean_Meta_mkSimpExt___closed__3(); lean_mark_persistent(l_Lean_Meta_mkSimpExt___closed__3); -if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5017_(lean_io_mk_world()); +if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_5372_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Meta_simpExtensionMapRef = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Meta_simpExtensionMapRef); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Simp/Simproc.c b/stage0/stdlib/Lean/Meta/Tactic/Simp/Simproc.c index 90c991eb672b..4db011237603 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Simp/Simproc.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Simp/Simproc.c @@ -67,6 +67,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_Simp_Si static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Simproc___hyg_5705____closed__21; static lean_object* l_Lean_Meta_Simp_initFn____x40_Lean_Meta_Tactic_Simp_Simproc___hyg_6541____closed__12; uint8_t l_Lean_Exception_isInterrupt(lean_object*); +lean_object* l_Lean_PersistentHashMap_erase___at_Lean_KeyedDeclsAttribute_ExtensionState_insert___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_simprocArrayCore(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_Meta_Simp_dsimprocCore___boxed(lean_object*, lean_object*, lean_object*, 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_Simp_Simprocs_addCore___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -94,6 +95,7 @@ static lean_object* l_Lean_Meta_Simp_initFn____x40_Lean_Meta_Tactic_Simp_Simproc LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_dsimprocArrayCore___spec__1(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*); uint8_t lean_usize_dec_eq(size_t, size_t); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_simprocCore___spec__1___lambda__3___boxed(lean_object**); +extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; lean_object* l___private_Init_GetElem_0__outOfBounds___rarg(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_Simproc_0__Lean_Meta_Simp_addBuiltin___closed__8; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_getSimprocs___rarg___boxed(lean_object*, lean_object*); @@ -152,6 +154,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_userPostDSimprocs___boxed(lean_object* static lean_object* l_Lean_Meta_Simp_initFn____x40_Lean_Meta_Tactic_Simp_Simproc___hyg_179____closed__10; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_simprocCore___spec__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_registerSimproc(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_7____spec__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Simp_addSimprocAttrCore___closed__3; lean_object* l_instBEqProd___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_simprocArrayCore___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*); @@ -467,7 +470,6 @@ static lean_object* l___auto____x40_Lean_Meta_Tactic_Simp_Simproc___hyg_5705____ LEAN_EXPORT uint8_t l_Lean_HashMapImp_contains___at_Lean_Meta_Simp_isBuiltinSimproc___spec__1(lean_object*, 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*); -lean_object* l_Lean_Option_register___at_Lean_initFn____x40_Lean_Util_Profile___hyg_6____spec__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Simp_initFn____x40_Lean_Meta_Tactic_Simp_Simproc___hyg_5376____closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_initFn____x40_Lean_Meta_Tactic_Simp_Simproc___hyg_6541_(lean_object*); lean_object* l_Lean_ScopedEnvExtension_getState___rarg(lean_object*, lean_object*, lean_object*); @@ -583,7 +585,6 @@ static lean_object* l_Lean_Meta_Simp_simprocCore___closed__2; uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT uint8_t l_Lean_AssocList_contains___at_Lean_Meta_Simp_isBuiltinSimproc___spec__2(lean_object*, lean_object*); lean_object* l_Lean_Meta_Simp_getConfig___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_PersistentHashMap_erase___at_Lean_Meta_addInstanceEntry___spec__18(lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_getSimprocExtension_x3f(lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(lean_object*); @@ -598,7 +599,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_initFn____x40_Lean_Meta_Tactic_Simp_Si LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Simp_Simprocs_addCore___spec__8(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Simp_registerBuiltinSimprocCore___closed__2; static lean_object* l_Lean_Meta_Simp_addSimprocAttr___closed__6; -extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_Instances_erased___default___spec__1; static lean_object* l_Lean_Meta_Simp_initFn____x40_Lean_Meta_Tactic_Simp_Simproc___hyg_6541____closed__5; LEAN_EXPORT lean_object* l_Lean_HashMapImp_contains___at_Lean_Meta_Simp_isBuiltinSimproc___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_throwError___at___private_Lean_ReducibilityAttrs_0__Lean_validate___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); @@ -4119,7 +4119,7 @@ if (x_3 == 0) 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_1, 2); x_5 = lean_ctor_get(x_1, 3); -x_6 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_addInstanceEntry___spec__18(x_4, x_2); +x_6 = l_Lean_PersistentHashMap_erase___at_Lean_KeyedDeclsAttribute_ExtensionState_insert___spec__1(x_4, x_2); x_7 = lean_box(0); x_8 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_5, x_2, x_7); lean_ctor_set(x_1, 3, x_8); @@ -4138,7 +4138,7 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_dec(x_1); -x_13 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_addInstanceEntry___spec__18(x_11, x_2); +x_13 = l_Lean_PersistentHashMap_erase___at_Lean_KeyedDeclsAttribute_ExtensionState_insert___spec__1(x_11, x_2); x_14 = lean_box(0); x_15 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_12, x_2, x_14); x_16 = lean_alloc_ctor(0, 4, 0); @@ -4163,7 +4163,7 @@ static lean_object* _init_l_Lean_Meta_Simp_initFn____x40_Lean_Meta_Tactic_Simp_S { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Meta_Simp_initFn____x40_Lean_Meta_Tactic_Simp_Simproc___hyg_1121____closed__1; -x_2 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Instances_erased___default___spec__1; +x_2 = l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; x_3 = lean_alloc_ctor(0, 4, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_1); @@ -7272,7 +7272,7 @@ x_10 = lean_ctor_get(x_1, 3); x_11 = lean_box(0); lean_inc(x_3); x_12 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_9, x_3, x_11); -x_13 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_addInstanceEntry___spec__18(x_10, x_3); +x_13 = l_Lean_PersistentHashMap_erase___at_Lean_KeyedDeclsAttribute_ExtensionState_insert___spec__1(x_10, x_3); if (x_4 == 0) { lean_object* x_14; lean_object* x_15; lean_object* x_16; @@ -7323,7 +7323,7 @@ lean_dec(x_1); x_24 = lean_box(0); lean_inc(x_3); x_25 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_22, x_3, x_24); -x_26 = l_Lean_PersistentHashMap_erase___at_Lean_Meta_addInstanceEntry___spec__18(x_23, x_3); +x_26 = l_Lean_PersistentHashMap_erase___at_Lean_KeyedDeclsAttribute_ExtensionState_insert___spec__1(x_23, x_3); if (x_4 == 0) { lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; @@ -19347,7 +19347,7 @@ lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_2 = l_Lean_Meta_Simp_initFn____x40_Lean_Meta_Tactic_Simp_Simproc___hyg_5376____closed__2; x_3 = l_Lean_Meta_Simp_initFn____x40_Lean_Meta_Tactic_Simp_Simproc___hyg_5376____closed__5; x_4 = l_Lean_Meta_Simp_initFn____x40_Lean_Meta_Tactic_Simp_Simproc___hyg_5376____closed__6; -x_5 = l_Lean_Option_register___at_Lean_initFn____x40_Lean_Util_Profile___hyg_6____spec__1(x_2, x_3, x_4, x_1); +x_5 = l_Lean_Option_register___at_Lean_Elab_initFn____x40_Lean_Elab_AutoBound___hyg_7____spec__1(x_2, x_3, x_4, x_1); return x_5; } } diff --git a/stage0/stdlib/Lean/Meta/Tactic/Simp/Types.c b/stage0/stdlib/Lean/Meta/Tactic/Simp/Types.c index 8334611b5439..4f357a0d9939 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Simp/Types.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Simp/Types.c @@ -22,7 +22,6 @@ static lean_object* l_Lean_Meta_Simp_Context_congrTheorems___default___closed__2 LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Meta_Simp_State_congrCache___default___spec__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Simprocs_erased___default; static lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__5___closed__3; -static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__4; lean_object* l_Lean_MVarId_replaceTargetDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_mkImpCongr(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*); @@ -50,6 +49,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Context_simpTheorems___default; lean_object* l_Lean_Meta_mkEqSymm(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_HashMapImp_moveEntries___at_Lean_Meta_Simp_mkCongrSimp_x3f___spec__6(lean_object*, lean_object*, 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*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Meta_mkCongrSimpCore_x3f(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -84,6 +84,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_dandThen(lean_object*, lean_object*, l LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Context_lctxInitIndices___default; static lean_object* l_Lean_Meta_Simp_withFreshCache___rarg___closed__1; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__8; +extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; lean_object* l___private_Init_GetElem_0__outOfBounds___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_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_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -109,12 +110,13 @@ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at_Lean_Meta_Simp_r LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Meta_Simp_State_congrCache___default___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Simprocs_pre___default; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_instInhabitedMethods; -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, 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_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, uint8_t, uint8_t, 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_Simp_SimprocOLeanEntry_post___default; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; LEAN_EXPORT lean_object* l_Lean_mkHashMap___at_Lean_Meta_Simp_State_cache___default___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_DStep_addExtraArgs(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Context_congrTheorems___default; +static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Std_Range_forIn_loop___at_Lean_Meta_Simp_removeUnnecessaryCasts___spec__1(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_isAppOf(lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__7; @@ -131,6 +133,7 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheore LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Stats_usedTheorems___default; lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__10; +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, 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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_Result_addExtraArgs___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l___private_Lean_Util_Trace_0__Lean_checkTraceOption(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_HashMapImp_expand___at_Lean_Meta_Simp_mkCongrSimp_x3f___spec__5(lean_object*, lean_object*); @@ -156,7 +159,7 @@ static lean_object* l_Lean_Meta_Simp_Methods_dpre___default___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_withParent___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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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_EXPORT lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__2(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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_ptr_addr(lean_object*); LEAN_EXPORT lean_object* l_Lean_SMap_switch___at_Lean_Meta_Simp_withPreservedCache___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Result_proof_x3f___default; @@ -173,7 +176,7 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCon LEAN_EXPORT lean_object* l_Lean_Meta_Simp_getConfig(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_State_diag___default; lean_object* lean_st_ref_take(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_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*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_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*, 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_expr_eqv(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2(lean_object*, size_t, lean_object*); @@ -189,7 +192,8 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__1(ui lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__5___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_instInhabitedMethods___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_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, 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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__2; +LEAN_EXPORT lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, 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_TransformStep_toStep(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Methods_post___default(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Meta_simpDtConfig; @@ -197,7 +201,7 @@ static lean_object* l_Lean_Meta_Simp_removeUnnecessaryCasts_isDummyEqRec___close lean_object* l_Lean_Meta_Origin_key(lean_object*); uint8_t l_Lean_Meta_SimpTheoremsArray_isDeclToUnfold(lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofFormat(lean_object*); -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Methods_toMethodsRefImpl(lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, 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_HashMapImp_find_x3f___at_Lean_Meta_Simp_mkCongrSimp_x3f___spec__1(lean_object*, lean_object*); @@ -218,6 +222,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Methods_dpost___default___boxed(lean_o LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at_Lean_Meta_Simp_recordSimpTheorem___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___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_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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__4; lean_object* l_Lean_Meta_mkCongrArg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_removeUnnecessaryCasts_isDummyEqRec___boxed(lean_object*); static lean_object* l_Lean_Meta_Simp_Context_simpTheorems___default___closed__1; @@ -244,7 +249,6 @@ lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__2___boxed(lean_object*, lean_object*); lean_object* l_Lean_Meta_isEqnThm_x3f(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Simp_mkImpCongr___closed__1; -static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__3; static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_getContext___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordTheoremWithBadKeys(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -273,6 +277,7 @@ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_M size_t lean_hashmap_mk_idx(lean_object*, uint64_t); lean_object* l_Lean_Meta_instBEqOrigin___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___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_object*, lean_object*); +static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_getSimpTheorems___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Simp_Context_congrTheorems___default___closed__5; LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___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*); @@ -280,7 +285,7 @@ extern lean_object* l_Lean_inheritedTraceOptions; lean_object* l_Lean_MessageData_ofExpr(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_instInhabitedSimprocs; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_State_congrCache___default; -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_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_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_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_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_mkEqTransOptProofResult(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_instInhabitedStats; static lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1___closed__1; @@ -301,7 +306,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordTriedSimpTheorem(lean_object*, l lean_object* l_Lean_Meta_mkImpCongr(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordCongrTheorem___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_mkHashMap___at_Lean_Meta_Simp_State_cache___default___spec__1___boxed(lean_object*); -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, 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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__2(lean_object*, lean_object*, lean_object*, uint8_t, 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_Meta_applySimpResultToTarget___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_getDtConfig___boxed(lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__5; @@ -330,7 +335,6 @@ static lean_object* l_Lean_Meta_Simp_instInhabitedMethods___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__4___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_instInhabitedSimprocOLeanEntry; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_withPreservedCache___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_399_(uint8_t, uint8_t); lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); @@ -372,7 +376,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_withFreshCache___rarg(lean_object*, le LEAN_EXPORT lean_object* l_Lean_Meta_Simp_mkCongr(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_mul(lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__2; -static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_State_usedTheorems___default; LEAN_EXPORT lean_object* l_Lean_Meta_isMatcher___at_Lean_Meta_Simp_mkCongrSimp_x3f___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_Lean_Meta_Simp_State_numSteps___default; @@ -396,6 +399,7 @@ LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCon size_t lean_usize_add(size_t, size_t); lean_object* l_Lean_Meta_instHashableOrigin___boxed(lean_object*); extern lean_object* l_Lean_Meta_Simp_defaultMaxSteps; +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Context_isDeclToUnfold___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Result_mkEqTrans(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_withPreservedCache(lean_object*); @@ -416,7 +420,7 @@ LEAN_EXPORT uint8_t l_Lean_Meta_Simp_Context_isDeclToUnfold(lean_object*, lean_o LEAN_EXPORT lean_object* l_Lean_Meta_Simp_simp___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_getAppArgsAux(lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__2; -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, 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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, 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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___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*); static lean_object* l_Lean_Meta_Simp_Diagnostics_thmsWithBadKeys___default___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_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_object*); @@ -442,7 +446,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Context_parent_x3f___default; lean_object* l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_applySimpResultToTarget(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isConst(lean_object*); -extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_Instances_erased___default___spec__1; lean_object* l_Lean_isDiagnosticsEnabled(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Simp_getMethods___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_AssocList_contains___at_Lean_Meta_Simp_mkCongrSimp_x3f___spec__4(lean_object*, lean_object*); @@ -3216,7 +3219,7 @@ static lean_object* _init_l_Lean_Meta_Simp_Simprocs_simprocNames___default() { _start: { lean_object* x_1; -x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Instances_erased___default___spec__1; +x_1 = l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; return x_1; } } @@ -3224,7 +3227,7 @@ static lean_object* _init_l_Lean_Meta_Simp_Simprocs_erased___default() { _start: { lean_object* x_1; -x_1 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Instances_erased___default___spec__1; +x_1 = l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; return x_1; } } @@ -3245,7 +3248,7 @@ static lean_object* _init_l_Lean_Meta_Simp_instInhabitedSimprocs___closed__2() { { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Meta_Simp_instInhabitedSimprocs___closed__1; -x_2 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Instances_erased___default___spec__1; +x_2 = l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; x_3 = lean_alloc_ctor(0, 4, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_1); @@ -5422,2490 +5425,2545 @@ return x_13; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___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_6; lean_object* x_13; uint8_t x_14; +x_13 = lean_array_get_size(x_1); +x_14 = lean_nat_dec_lt(x_4, x_13); +lean_dec(x_13); +if (x_14 == 0) { -lean_object* x_8; +lean_object* x_15; lean_dec(x_4); -x_8 = lean_box(0); -return x_8; +x_15 = lean_box(0); +return x_15; } else { -lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_9 = lean_array_fget(x_1, x_4); -x_10 = l_Lean_Meta_Origin_key(x_5); -x_11 = l_Lean_Meta_Origin_key(x_9); -lean_dec(x_9); -x_12 = lean_name_eq(x_10, x_11); -lean_dec(x_11); -lean_dec(x_10); -if (x_12 == 0) +lean_object* x_16; +x_16 = lean_array_fget(x_1, x_4); +if (lean_obj_tag(x_5) == 0) { -lean_object* x_13; lean_object* x_14; -x_13 = lean_unsigned_to_nat(1u); -x_14 = lean_nat_add(x_4, x_13); -lean_dec(x_4); -x_3 = lean_box(0); -x_4 = x_14; -goto _start; +uint8_t x_17; +x_17 = lean_ctor_get_uint8(x_5, sizeof(void*)*1); +if (x_17 == 0) +{ +if (lean_obj_tag(x_16) == 0) +{ +uint8_t x_18; +x_18 = lean_ctor_get_uint8(x_16, sizeof(void*)*1); +if (x_18 == 0) +{ +lean_object* x_19; uint8_t x_20; lean_object* x_21; uint8_t x_22; uint8_t x_23; +x_19 = lean_ctor_get(x_5, 0); +x_20 = lean_ctor_get_uint8(x_5, sizeof(void*)*1 + 1); +x_21 = lean_ctor_get(x_16, 0); +lean_inc(x_21); +x_22 = lean_ctor_get_uint8(x_16, sizeof(void*)*1 + 1); +lean_dec(x_16); +x_23 = lean_name_eq(x_19, x_21); +lean_dec(x_21); +if (x_23 == 0) +{ +uint8_t x_24; +x_24 = 0; +x_6 = x_24; +goto block_12; } else { -lean_object* x_16; lean_object* x_17; -x_16 = lean_array_fget(x_2, x_4); -lean_dec(x_4); -x_17 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_17, 0, x_16); -return x_17; +if (x_20 == 0) +{ +if (x_22 == 0) +{ +uint8_t x_25; +x_25 = 1; +x_6 = x_25; +goto block_12; } +else +{ +uint8_t x_26; +x_26 = 0; +x_6 = x_26; +goto block_12; } } +else +{ +if (x_22 == 0) +{ +uint8_t x_27; +x_27 = 0; +x_6 = x_27; +goto block_12; } -static size_t _init_l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___closed__1() { -_start: +else { -size_t x_1; size_t x_2; size_t x_3; -x_1 = 1; -x_2 = 5; -x_3 = lean_usize_shift_left(x_1, x_2); -return x_3; +uint8_t x_28; +x_28 = 1; +x_6 = x_28; +goto block_12; } } -static size_t _init_l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___closed__2() { -_start: -{ -size_t x_1; size_t x_2; size_t x_3; -x_1 = 1; -x_2 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___closed__1; -x_3 = lean_usize_sub(x_2, x_1); -return x_3; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2(lean_object* x_1, size_t x_2, lean_object* x_3) { -_start: +else { -if (lean_obj_tag(x_1) == 0) +uint8_t x_29; +x_29 = lean_ctor_get_uint8(x_16, sizeof(void*)*1 + 1); +if (x_29 == 0) { -uint8_t x_4; -x_4 = !lean_is_exclusive(x_1); -if (x_4 == 0) +lean_object* x_30; uint8_t x_31; lean_object* x_32; uint8_t x_33; +x_30 = lean_ctor_get(x_5, 0); +x_31 = lean_ctor_get_uint8(x_5, sizeof(void*)*1 + 1); +x_32 = lean_ctor_get(x_16, 0); +lean_inc(x_32); +lean_dec(x_16); +x_33 = lean_name_eq(x_30, x_32); +lean_dec(x_32); +if (x_33 == 0) { -lean_object* x_5; size_t x_6; size_t x_7; size_t x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_5 = lean_ctor_get(x_1, 0); -x_6 = 5; -x_7 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___closed__2; -x_8 = lean_usize_land(x_2, x_7); -x_9 = lean_usize_to_nat(x_8); -x_10 = lean_box(2); -x_11 = lean_array_get(x_10, x_5, x_9); -lean_dec(x_9); -lean_dec(x_5); -switch (lean_obj_tag(x_11)) { -case 0: +uint8_t x_34; +x_34 = 0; +x_6 = x_34; +goto block_12; +} +else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -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_Origin_key(x_3); -x_15 = l_Lean_Meta_Origin_key(x_12); -lean_dec(x_12); -x_16 = lean_name_eq(x_14, x_15); -lean_dec(x_15); -lean_dec(x_14); -if (x_16 == 0) +if (x_31 == 0) { -lean_object* x_17; -lean_dec(x_13); -lean_free_object(x_1); -x_17 = lean_box(0); -return x_17; +uint8_t x_35; +x_35 = 1; +x_6 = x_35; +goto block_12; } else { -lean_ctor_set_tag(x_1, 1); -lean_ctor_set(x_1, 0, x_13); -return x_1; +uint8_t x_36; +x_36 = 0; +x_6 = x_36; +goto block_12; } } -case 1: +} +else { -lean_object* x_18; size_t x_19; -lean_free_object(x_1); -x_18 = lean_ctor_get(x_11, 0); -lean_inc(x_18); -lean_dec(x_11); -x_19 = lean_usize_shift_right(x_2, x_6); -x_1 = x_18; -x_2 = x_19; -goto _start; +lean_object* x_37; uint8_t x_38; lean_object* x_39; uint8_t x_40; +x_37 = lean_ctor_get(x_5, 0); +x_38 = lean_ctor_get_uint8(x_5, sizeof(void*)*1 + 1); +x_39 = lean_ctor_get(x_16, 0); +lean_inc(x_39); +lean_dec(x_16); +x_40 = lean_name_eq(x_37, x_39); +lean_dec(x_39); +if (x_40 == 0) +{ +uint8_t x_41; +x_41 = 0; +x_6 = x_41; +goto block_12; } -default: +else { -lean_object* x_21; -lean_free_object(x_1); -x_21 = lean_box(0); -return x_21; +if (x_38 == 0) +{ +uint8_t x_42; +x_42 = 0; +x_6 = x_42; +goto block_12; +} +else +{ +uint8_t x_43; +x_43 = 1; +x_6 = x_43; +goto block_12; +} +} } } } else { -lean_object* x_22; size_t x_23; size_t x_24; size_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_22 = lean_ctor_get(x_1, 0); -lean_inc(x_22); -lean_dec(x_1); -x_23 = 5; -x_24 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___closed__2; -x_25 = lean_usize_land(x_2, x_24); -x_26 = lean_usize_to_nat(x_25); -x_27 = lean_box(2); -x_28 = lean_array_get(x_27, x_22, x_26); -lean_dec(x_26); -lean_dec(x_22); -switch (lean_obj_tag(x_28)) { -case 0: +lean_object* x_44; lean_object* x_45; uint8_t x_46; +x_44 = l_Lean_Meta_Origin_key(x_5); +x_45 = l_Lean_Meta_Origin_key(x_16); +lean_dec(x_16); +x_46 = lean_name_eq(x_44, x_45); +lean_dec(x_45); +lean_dec(x_44); +x_6 = x_46; +goto block_12; +} +} +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_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_Meta_Origin_key(x_3); -x_32 = l_Lean_Meta_Origin_key(x_29); -lean_dec(x_29); -x_33 = lean_name_eq(x_31, x_32); -lean_dec(x_32); -lean_dec(x_31); -if (x_33 == 0) +uint8_t x_47; +x_47 = lean_ctor_get_uint8(x_5, sizeof(void*)*1 + 1); +if (x_47 == 0) { -lean_object* x_34; -lean_dec(x_30); -x_34 = lean_box(0); -return x_34; +if (lean_obj_tag(x_16) == 0) +{ +uint8_t x_48; +x_48 = lean_ctor_get_uint8(x_16, sizeof(void*)*1); +if (x_48 == 0) +{ +lean_object* x_49; lean_object* x_50; uint8_t x_51; uint8_t x_52; +x_49 = lean_ctor_get(x_5, 0); +x_50 = lean_ctor_get(x_16, 0); +lean_inc(x_50); +x_51 = lean_ctor_get_uint8(x_16, sizeof(void*)*1 + 1); +lean_dec(x_16); +x_52 = lean_name_eq(x_49, x_50); +lean_dec(x_50); +if (x_52 == 0) +{ +uint8_t x_53; +x_53 = 0; +x_6 = x_53; +goto block_12; } else { -lean_object* x_35; -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_30); -return x_35; -} -} -case 1: +if (x_51 == 0) { -lean_object* x_36; size_t x_37; -x_36 = lean_ctor_get(x_28, 0); -lean_inc(x_36); -lean_dec(x_28); -x_37 = lean_usize_shift_right(x_2, x_23); -x_1 = x_36; -x_2 = x_37; -goto _start; +uint8_t x_54; +x_54 = 1; +x_6 = x_54; +goto block_12; } -default: +else { -lean_object* x_39; -x_39 = lean_box(0); -return x_39; +uint8_t x_55; +x_55 = 0; +x_6 = x_55; +goto block_12; } } } +else +{ +uint8_t x_56; +x_56 = lean_ctor_get_uint8(x_16, sizeof(void*)*1 + 1); +if (x_56 == 0) +{ +lean_object* x_57; lean_object* x_58; uint8_t x_59; +x_57 = lean_ctor_get(x_5, 0); +x_58 = lean_ctor_get(x_16, 0); +lean_inc(x_58); +lean_dec(x_16); +x_59 = lean_name_eq(x_57, x_58); +lean_dec(x_58); +if (x_59 == 0) +{ +uint8_t x_60; +x_60 = 0; +x_6 = x_60; +goto block_12; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_40 = lean_ctor_get(x_1, 0); -lean_inc(x_40); -x_41 = lean_ctor_get(x_1, 1); -lean_inc(x_41); -lean_dec(x_1); -x_42 = lean_unsigned_to_nat(0u); -x_43 = l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__3(x_40, x_41, lean_box(0), x_42, x_3); -lean_dec(x_41); -lean_dec(x_40); -return x_43; +uint8_t x_61; +x_61 = 1; +x_6 = x_61; +goto block_12; +} +} +else +{ +uint8_t x_62; +lean_dec(x_16); +x_62 = 0; +x_6 = x_62; +goto block_12; } } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(lean_object* x_1, lean_object* x_2) { -_start: +else { -lean_object* x_3; lean_object* x_4; uint64_t x_5; size_t x_6; lean_object* x_7; -x_3 = lean_ctor_get(x_1, 0); -lean_inc(x_3); -lean_dec(x_1); -x_4 = l_Lean_Meta_Origin_key(x_2); -x_5 = l_Lean_Name_hash___override(x_4); -lean_dec(x_4); -x_6 = lean_uint64_to_usize(x_5); -x_7 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2(x_3, x_6, x_2); -lean_dec(x_2); -return x_7; +uint8_t x_63; +lean_dec(x_16); +x_63 = 0; +x_6 = x_63; +goto block_12; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__6(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: +else { -lean_object* x_7; uint8_t x_8; -x_7 = lean_array_get_size(x_2); -x_8 = lean_nat_dec_lt(x_5, x_7); -lean_dec(x_7); -if (x_8 == 0) +if (lean_obj_tag(x_16) == 0) { -lean_dec(x_5); -return x_6; +uint8_t x_64; +x_64 = lean_ctor_get_uint8(x_16, sizeof(void*)*1); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; uint8_t x_67; uint8_t x_68; +x_65 = lean_ctor_get(x_5, 0); +x_66 = lean_ctor_get(x_16, 0); +lean_inc(x_66); +x_67 = lean_ctor_get_uint8(x_16, sizeof(void*)*1 + 1); +lean_dec(x_16); +x_68 = lean_name_eq(x_65, x_66); +lean_dec(x_66); +if (x_68 == 0) +{ +uint8_t x_69; +x_69 = 0; +x_6 = x_69; +goto block_12; } else { -lean_object* x_9; lean_object* x_10; lean_object* x_11; uint64_t x_12; size_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; lean_object* x_21; -x_9 = lean_array_fget(x_2, x_5); -x_10 = lean_array_fget(x_3, x_5); -x_11 = l_Lean_Meta_Origin_key(x_9); -x_12 = l_Lean_Name_hash___override(x_11); -lean_dec(x_11); -x_13 = lean_uint64_to_usize(x_12); -x_14 = 1; -x_15 = lean_usize_sub(x_1, x_14); -x_16 = 5; -x_17 = lean_usize_mul(x_16, x_15); -x_18 = lean_usize_shift_right(x_13, x_17); -x_19 = lean_unsigned_to_nat(1u); -x_20 = lean_nat_add(x_5, x_19); -lean_dec(x_5); -x_21 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_6, x_18, x_1, x_9, x_10); -x_4 = lean_box(0); -x_5 = x_20; -x_6 = x_21; -goto _start; -} -} -} -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__7(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, 0); -lean_inc(x_5); -x_6 = lean_ctor_get(x_1, 1); -lean_inc(x_6); -x_7 = lean_array_get_size(x_5); -x_8 = lean_nat_dec_lt(x_2, x_7); -lean_dec(x_7); -if (x_8 == 0) -{ -uint8_t x_9; -lean_dec(x_2); -x_9 = !lean_is_exclusive(x_1); -if (x_9 == 0) +if (x_67 == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = lean_ctor_get(x_1, 1); -lean_dec(x_10); -x_11 = lean_ctor_get(x_1, 0); -lean_dec(x_11); -x_12 = lean_array_push(x_5, x_3); -x_13 = lean_array_push(x_6, x_4); -lean_ctor_set(x_1, 1, x_13); -lean_ctor_set(x_1, 0, x_12); -return x_1; +uint8_t x_70; +x_70 = 0; +x_6 = x_70; +goto block_12; } else { -lean_object* x_14; lean_object* x_15; lean_object* x_16; -lean_dec(x_1); -x_14 = lean_array_push(x_5, x_3); -x_15 = lean_array_push(x_6, x_4); -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; +uint8_t x_71; +x_71 = 1; +x_6 = x_71; +goto block_12; +} } } else { -lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_17 = lean_array_fget(x_5, x_2); -x_18 = l_Lean_Meta_Origin_key(x_3); -x_19 = l_Lean_Meta_Origin_key(x_17); -lean_dec(x_17); -x_20 = lean_name_eq(x_18, x_19); -lean_dec(x_19); -lean_dec(x_18); -if (x_20 == 0) +uint8_t x_72; +x_72 = lean_ctor_get_uint8(x_16, sizeof(void*)*1 + 1); +if (x_72 == 0) { -lean_object* x_21; lean_object* x_22; -lean_dec(x_6); -lean_dec(x_5); -x_21 = lean_unsigned_to_nat(1u); -x_22 = lean_nat_add(x_2, x_21); -lean_dec(x_2); -x_2 = x_22; -goto _start; +uint8_t x_73; +lean_dec(x_16); +x_73 = 0; +x_6 = x_73; +goto block_12; } else { -uint8_t x_24; -x_24 = !lean_is_exclusive(x_1); -if (x_24 == 0) +lean_object* x_74; lean_object* x_75; uint8_t x_76; +x_74 = lean_ctor_get(x_5, 0); +x_75 = lean_ctor_get(x_16, 0); +lean_inc(x_75); +lean_dec(x_16); +x_76 = lean_name_eq(x_74, x_75); +lean_dec(x_75); +if (x_76 == 0) { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_25 = lean_ctor_get(x_1, 1); -lean_dec(x_25); -x_26 = lean_ctor_get(x_1, 0); -lean_dec(x_26); -x_27 = lean_array_fset(x_5, x_2, x_3); -x_28 = lean_array_fset(x_6, x_2, x_4); -lean_dec(x_2); -lean_ctor_set(x_1, 1, x_28); -lean_ctor_set(x_1, 0, x_27); -return x_1; +uint8_t x_77; +x_77 = 0; +x_6 = x_77; +goto block_12; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -lean_dec(x_1); -x_29 = lean_array_fset(x_5, x_2, x_3); -x_30 = lean_array_fset(x_6, x_2, x_4); -lean_dec(x_2); -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; +uint8_t x_78; +x_78 = 1; +x_6 = x_78; +goto block_12; } } } } -} -static lean_object* _init_l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5___closed__1() { -_start: +else { -lean_object* x_1; -x_1 = l_Lean_PersistentHashMap_mkEmptyEntries(lean_box(0), lean_box(0)); -return x_1; +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_5, 0); +lean_inc(x_79); +x_80 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_80, 0, x_79); +lean_ctor_set_uint8(x_80, sizeof(void*)*1, x_47); +lean_ctor_set_uint8(x_80, sizeof(void*)*1 + 1, x_47); +x_81 = l_Lean_Meta_Origin_key(x_80); +lean_dec(x_80); +x_82 = l_Lean_Meta_Origin_key(x_16); +lean_dec(x_16); +x_83 = lean_name_eq(x_81, x_82); +lean_dec(x_82); +lean_dec(x_81); +x_6 = x_83; +goto block_12; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -if (lean_obj_tag(x_1) == 0) +} +} +else { -uint8_t x_6; -x_6 = !lean_is_exclusive(x_1); -if (x_6 == 0) +if (lean_obj_tag(x_16) == 0) { -lean_object* x_7; size_t x_8; size_t x_9; size_t x_10; size_t x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_7 = lean_ctor_get(x_1, 0); -x_8 = 1; -x_9 = 5; -x_10 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___closed__2; -x_11 = lean_usize_land(x_2, x_10); -x_12 = lean_usize_to_nat(x_11); -x_13 = lean_array_get_size(x_7); -x_14 = lean_nat_dec_lt(x_12, x_13); -lean_dec(x_13); -if (x_14 == 0) +uint8_t x_84; +x_84 = lean_ctor_get_uint8(x_16, sizeof(void*)*1); +if (x_84 == 0) { -lean_dec(x_12); -lean_dec(x_5); -lean_dec(x_4); -return x_1; +lean_object* x_85; lean_object* x_86; uint8_t x_87; +x_85 = l_Lean_Meta_Origin_key(x_5); +x_86 = l_Lean_Meta_Origin_key(x_16); +lean_dec(x_16); +x_87 = lean_name_eq(x_85, x_86); +lean_dec(x_86); +lean_dec(x_85); +x_6 = x_87; +goto block_12; } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_array_fget(x_7, x_12); -x_16 = lean_box(0); -x_17 = lean_array_fset(x_7, x_12, x_16); -switch (lean_obj_tag(x_15)) { -case 0: +uint8_t x_88; +x_88 = lean_ctor_get_uint8(x_16, sizeof(void*)*1 + 1); +if (x_88 == 0) { -uint8_t x_18; -x_18 = !lean_is_exclusive(x_15); -if (x_18 == 0) +uint8_t x_89; +lean_dec(x_16); +x_89 = 0; +x_6 = x_89; +goto block_12; +} +else { -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_15, 0); -x_20 = lean_ctor_get(x_15, 1); -x_21 = l_Lean_Meta_Origin_key(x_4); -x_22 = l_Lean_Meta_Origin_key(x_19); -x_23 = lean_name_eq(x_21, x_22); -lean_dec(x_22); -lean_dec(x_21); -if (x_23 == 0) +uint8_t x_90; +x_90 = !lean_is_exclusive(x_16); +if (x_90 == 0) { -lean_object* x_24; lean_object* x_25; lean_object* x_26; -lean_free_object(x_15); -x_24 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_19, x_20, x_4, x_5); -x_25 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_25, 0, x_24); -x_26 = lean_array_fset(x_17, x_12, x_25); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_26); -return x_1; +lean_object* x_91; lean_object* x_92; uint8_t x_93; +lean_ctor_set_uint8(x_16, sizeof(void*)*1, x_88); +x_91 = l_Lean_Meta_Origin_key(x_5); +x_92 = l_Lean_Meta_Origin_key(x_16); +lean_dec(x_16); +x_93 = lean_name_eq(x_91, x_92); +lean_dec(x_92); +lean_dec(x_91); +x_6 = x_93; +goto block_12; } else { -lean_object* x_27; -lean_dec(x_20); -lean_dec(x_19); -lean_ctor_set(x_15, 1, x_5); -lean_ctor_set(x_15, 0, x_4); -x_27 = lean_array_fset(x_17, x_12, x_15); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_27); -return x_1; +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; uint8_t x_98; +x_94 = lean_ctor_get(x_16, 0); +lean_inc(x_94); +lean_dec(x_16); +x_95 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_95, 0, x_94); +lean_ctor_set_uint8(x_95, sizeof(void*)*1, x_88); +lean_ctor_set_uint8(x_95, sizeof(void*)*1 + 1, x_88); +x_96 = l_Lean_Meta_Origin_key(x_5); +x_97 = l_Lean_Meta_Origin_key(x_95); +lean_dec(x_95); +x_98 = lean_name_eq(x_96, x_97); +lean_dec(x_97); +lean_dec(x_96); +x_6 = x_98; +goto block_12; +} } } -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_15, 0); -x_29 = lean_ctor_get(x_15, 1); -lean_inc(x_29); -lean_inc(x_28); -lean_dec(x_15); -x_30 = l_Lean_Meta_Origin_key(x_4); -x_31 = l_Lean_Meta_Origin_key(x_28); -x_32 = lean_name_eq(x_30, x_31); -lean_dec(x_31); -lean_dec(x_30); -if (x_32 == 0) -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_33 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_28, x_29, x_4, x_5); -x_34 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_34, 0, x_33); -x_35 = lean_array_fset(x_17, x_12, x_34); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_35); -return x_1; } else { -lean_object* x_36; lean_object* x_37; -lean_dec(x_29); -lean_dec(x_28); -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 = lean_array_fset(x_17, x_12, x_36); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_37); -return x_1; +lean_object* x_99; lean_object* x_100; uint8_t x_101; +x_99 = l_Lean_Meta_Origin_key(x_5); +x_100 = l_Lean_Meta_Origin_key(x_16); +lean_dec(x_16); +x_101 = lean_name_eq(x_99, x_100); +lean_dec(x_100); +lean_dec(x_99); +x_6 = x_101; +goto block_12; } } } -case 1: +block_12: { -uint8_t x_38; -x_38 = !lean_is_exclusive(x_15); -if (x_38 == 0) +if (x_6 == 0) { -lean_object* x_39; size_t x_40; size_t x_41; lean_object* x_42; lean_object* x_43; -x_39 = lean_ctor_get(x_15, 0); -x_40 = lean_usize_shift_right(x_2, x_9); -x_41 = lean_usize_add(x_3, x_8); -x_42 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_39, x_40, x_41, x_4, x_5); -lean_ctor_set(x_15, 0, x_42); -x_43 = lean_array_fset(x_17, x_12, x_15); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_43); -return x_1; +lean_object* x_7; lean_object* x_8; +x_7 = lean_unsigned_to_nat(1u); +x_8 = lean_nat_add(x_4, x_7); +lean_dec(x_4); +x_3 = lean_box(0); +x_4 = x_8; +goto _start; } else { -lean_object* x_44; size_t x_45; size_t x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_44 = lean_ctor_get(x_15, 0); -lean_inc(x_44); -lean_dec(x_15); -x_45 = lean_usize_shift_right(x_2, x_9); -x_46 = lean_usize_add(x_3, x_8); -x_47 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_44, x_45, x_46, x_4, x_5); -x_48 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_48, 0, x_47); -x_49 = lean_array_fset(x_17, x_12, x_48); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_49); -return x_1; +lean_object* x_10; lean_object* x_11; +x_10 = lean_array_fget(x_2, x_4); +lean_dec(x_4); +x_11 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_11, 0, x_10); +return x_11; } } -default: -{ -lean_object* x_50; lean_object* x_51; -x_50 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_50, 0, x_4); -lean_ctor_set(x_50, 1, x_5); -x_51 = lean_array_fset(x_17, x_12, x_50); -lean_dec(x_12); -lean_ctor_set(x_1, 0, x_51); -return x_1; } } +static size_t _init_l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___closed__1() { +_start: +{ +size_t x_1; size_t x_2; size_t x_3; +x_1 = 1; +x_2 = 5; +x_3 = lean_usize_shift_left(x_1, x_2); +return x_3; } } -else -{ -lean_object* x_52; size_t x_53; size_t x_54; size_t x_55; size_t x_56; lean_object* x_57; lean_object* x_58; uint8_t x_59; -x_52 = lean_ctor_get(x_1, 0); -lean_inc(x_52); -lean_dec(x_1); -x_53 = 1; -x_54 = 5; -x_55 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___closed__2; -x_56 = lean_usize_land(x_2, x_55); -x_57 = lean_usize_to_nat(x_56); -x_58 = lean_array_get_size(x_52); -x_59 = lean_nat_dec_lt(x_57, x_58); -lean_dec(x_58); -if (x_59 == 0) +static size_t _init_l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___closed__2() { +_start: { -lean_object* x_60; -lean_dec(x_57); -lean_dec(x_5); -lean_dec(x_4); -x_60 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_60, 0, x_52); -return x_60; +size_t x_1; size_t x_2; size_t x_3; +x_1 = 1; +x_2 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___closed__1; +x_3 = lean_usize_sub(x_2, x_1); +return x_3; } -else +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2(lean_object* x_1, size_t x_2, lean_object* x_3) { +_start: { -lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_61 = lean_array_fget(x_52, x_57); -x_62 = lean_box(0); -x_63 = lean_array_fset(x_52, x_57, x_62); -switch (lean_obj_tag(x_61)) { -case 0: +if (lean_obj_tag(x_1) == 0) { -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; uint8_t x_69; -x_64 = lean_ctor_get(x_61, 0); -lean_inc(x_64); -x_65 = lean_ctor_get(x_61, 1); -lean_inc(x_65); -if (lean_is_exclusive(x_61)) { - lean_ctor_release(x_61, 0); - lean_ctor_release(x_61, 1); - x_66 = x_61; +lean_object* x_4; lean_object* x_5; size_t x_6; size_t x_7; size_t x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +if (lean_is_exclusive(x_1)) { + lean_ctor_release(x_1, 0); + x_5 = x_1; } else { - lean_dec_ref(x_61); - x_66 = lean_box(0); + lean_dec_ref(x_1); + x_5 = lean_box(0); } -x_67 = l_Lean_Meta_Origin_key(x_4); -x_68 = l_Lean_Meta_Origin_key(x_64); -x_69 = lean_name_eq(x_67, x_68); -lean_dec(x_68); -lean_dec(x_67); -if (x_69 == 0) +x_6 = 5; +x_7 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___closed__2; +x_8 = lean_usize_land(x_2, x_7); +x_9 = lean_usize_to_nat(x_8); +x_10 = lean_box(2); +x_11 = lean_array_get(x_10, x_4, x_9); +lean_dec(x_9); +lean_dec(x_4); +switch (lean_obj_tag(x_11)) { +case 0: { -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; -lean_dec(x_66); -x_70 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_64, x_65, x_4, x_5); -x_71 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_71, 0, x_70); -x_72 = lean_array_fset(x_63, x_57, x_71); -lean_dec(x_57); -x_73 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_73, 0, x_72); -return x_73; +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); +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_18; +x_18 = lean_ctor_get_uint8(x_3, sizeof(void*)*1); +if (x_18 == 0) +{ +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_19; +x_19 = lean_ctor_get_uint8(x_12, sizeof(void*)*1); +if (x_19 == 0) +{ +lean_object* x_20; uint8_t x_21; lean_object* x_22; uint8_t x_23; uint8_t x_24; +x_20 = lean_ctor_get(x_3, 0); +lean_inc(x_20); +x_21 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +lean_dec(x_3); +x_22 = lean_ctor_get(x_12, 0); +lean_inc(x_22); +x_23 = lean_ctor_get_uint8(x_12, sizeof(void*)*1 + 1); +lean_dec(x_12); +x_24 = lean_name_eq(x_20, x_22); +lean_dec(x_22); +lean_dec(x_20); +if (x_24 == 0) +{ +uint8_t x_25; +x_25 = 0; +x_14 = x_25; +goto block_17; } else { -lean_object* x_74; lean_object* x_75; lean_object* x_76; -lean_dec(x_65); -lean_dec(x_64); -if (lean_is_scalar(x_66)) { - x_74 = lean_alloc_ctor(0, 2, 0); -} else { - x_74 = x_66; +if (x_21 == 0) +{ +if (x_23 == 0) +{ +uint8_t x_26; +x_26 = 1; +x_14 = x_26; +goto block_17; } -lean_ctor_set(x_74, 0, x_4); -lean_ctor_set(x_74, 1, x_5); -x_75 = lean_array_fset(x_63, x_57, x_74); -lean_dec(x_57); -x_76 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_76, 0, x_75); -return x_76; +else +{ +uint8_t x_27; +x_27 = 0; +x_14 = x_27; +goto block_17; } } -case 1: +else { -lean_object* x_77; lean_object* x_78; size_t x_79; size_t x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; -x_77 = lean_ctor_get(x_61, 0); -lean_inc(x_77); -if (lean_is_exclusive(x_61)) { - lean_ctor_release(x_61, 0); - x_78 = x_61; -} else { - lean_dec_ref(x_61); - x_78 = lean_box(0); +if (x_23 == 0) +{ +uint8_t x_28; +x_28 = 0; +x_14 = x_28; +goto block_17; } -x_79 = lean_usize_shift_right(x_2, x_54); -x_80 = lean_usize_add(x_3, x_53); -x_81 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_77, x_79, x_80, x_4, x_5); -if (lean_is_scalar(x_78)) { - x_82 = lean_alloc_ctor(1, 1, 0); -} else { - x_82 = x_78; +else +{ +uint8_t x_29; +x_29 = 1; +x_14 = x_29; +goto block_17; } -lean_ctor_set(x_82, 0, x_81); -x_83 = lean_array_fset(x_63, x_57, x_82); -lean_dec(x_57); -x_84 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_84, 0, x_83); -return x_84; } -default: +} +} +else { -lean_object* x_85; lean_object* x_86; lean_object* x_87; -x_85 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_85, 0, x_4); -lean_ctor_set(x_85, 1, x_5); -x_86 = lean_array_fset(x_63, x_57, x_85); -lean_dec(x_57); -x_87 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_87, 0, x_86); -return x_87; +uint8_t x_30; +x_30 = lean_ctor_get_uint8(x_12, sizeof(void*)*1 + 1); +if (x_30 == 0) +{ +lean_object* x_31; uint8_t x_32; lean_object* x_33; uint8_t x_34; +x_31 = lean_ctor_get(x_3, 0); +lean_inc(x_31); +x_32 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +lean_dec(x_3); +x_33 = lean_ctor_get(x_12, 0); +lean_inc(x_33); +lean_dec(x_12); +x_34 = lean_name_eq(x_31, x_33); +lean_dec(x_33); +lean_dec(x_31); +if (x_34 == 0) +{ +uint8_t x_35; +x_35 = 0; +x_14 = x_35; +goto block_17; } +else +{ +if (x_32 == 0) +{ +uint8_t x_36; +x_36 = 1; +x_14 = x_36; +goto block_17; } +else +{ +uint8_t x_37; +x_37 = 0; +x_14 = x_37; +goto block_17; } } } else { -uint8_t x_88; -x_88 = !lean_is_exclusive(x_1); -if (x_88 == 0) +lean_object* x_38; uint8_t x_39; lean_object* x_40; uint8_t x_41; +x_38 = lean_ctor_get(x_3, 0); +lean_inc(x_38); +x_39 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +lean_dec(x_3); +x_40 = lean_ctor_get(x_12, 0); +lean_inc(x_40); +lean_dec(x_12); +x_41 = lean_name_eq(x_38, x_40); +lean_dec(x_40); +lean_dec(x_38); +if (x_41 == 0) { -lean_object* x_89; lean_object* x_90; size_t x_91; uint8_t x_92; -x_89 = lean_unsigned_to_nat(0u); -x_90 = l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__7(x_1, x_89, x_4, x_5); -x_91 = 7; -x_92 = lean_usize_dec_le(x_91, x_3); -if (x_92 == 0) +uint8_t x_42; +x_42 = 0; +x_14 = x_42; +goto block_17; +} +else { -lean_object* x_93; lean_object* x_94; uint8_t x_95; -x_93 = l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(x_90); -x_94 = lean_unsigned_to_nat(4u); -x_95 = lean_nat_dec_lt(x_93, x_94); -lean_dec(x_93); -if (x_95 == 0) +if (x_39 == 0) { -lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; -x_96 = lean_ctor_get(x_90, 0); -lean_inc(x_96); -x_97 = lean_ctor_get(x_90, 1); -lean_inc(x_97); -lean_dec(x_90); -x_98 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5___closed__1; -x_99 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__6(x_3, x_96, x_97, lean_box(0), x_89, x_98); -lean_dec(x_97); -lean_dec(x_96); -return x_99; +uint8_t x_43; +x_43 = 0; +x_14 = x_43; +goto block_17; } else { -return x_90; +uint8_t x_44; +x_44 = 1; +x_14 = x_44; +goto block_17; +} +} +} } } else { -return x_90; +lean_object* x_45; lean_object* x_46; uint8_t x_47; +x_45 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_46 = l_Lean_Meta_Origin_key(x_12); +lean_dec(x_12); +x_47 = lean_name_eq(x_45, x_46); +lean_dec(x_46); +lean_dec(x_45); +x_14 = x_47; +goto block_17; } } else { -lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; size_t x_105; uint8_t x_106; -x_100 = lean_ctor_get(x_1, 0); -x_101 = lean_ctor_get(x_1, 1); -lean_inc(x_101); -lean_inc(x_100); -lean_dec(x_1); -x_102 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_102, 0, x_100); -lean_ctor_set(x_102, 1, x_101); -x_103 = lean_unsigned_to_nat(0u); -x_104 = l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__7(x_102, x_103, x_4, x_5); -x_105 = 7; -x_106 = lean_usize_dec_le(x_105, x_3); -if (x_106 == 0) -{ -lean_object* x_107; lean_object* x_108; uint8_t x_109; -x_107 = l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(x_104); -x_108 = lean_unsigned_to_nat(4u); -x_109 = lean_nat_dec_lt(x_107, x_108); -lean_dec(x_107); -if (x_109 == 0) +uint8_t x_48; +x_48 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +if (x_48 == 0) { -lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; -x_110 = lean_ctor_get(x_104, 0); -lean_inc(x_110); -x_111 = lean_ctor_get(x_104, 1); -lean_inc(x_111); -lean_dec(x_104); -x_112 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5___closed__1; -x_113 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__6(x_3, x_110, x_111, lean_box(0), x_103, x_112); -lean_dec(x_111); -lean_dec(x_110); -return x_113; +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_49; +x_49 = lean_ctor_get_uint8(x_12, sizeof(void*)*1); +if (x_49 == 0) +{ +lean_object* x_50; lean_object* x_51; uint8_t x_52; uint8_t x_53; +x_50 = lean_ctor_get(x_3, 0); +lean_inc(x_50); +lean_dec(x_3); +x_51 = lean_ctor_get(x_12, 0); +lean_inc(x_51); +x_52 = lean_ctor_get_uint8(x_12, sizeof(void*)*1 + 1); +lean_dec(x_12); +x_53 = lean_name_eq(x_50, x_51); +lean_dec(x_51); +lean_dec(x_50); +if (x_53 == 0) +{ +uint8_t x_54; +x_54 = 0; +x_14 = x_54; +goto block_17; } else { -return x_104; -} +if (x_52 == 0) +{ +uint8_t x_55; +x_55 = 1; +x_14 = x_55; +goto block_17; } else { -return x_104; -} -} +uint8_t x_56; +x_56 = 0; +x_14 = x_56; +goto block_17; } } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: +else { -uint8_t x_4; -x_4 = !lean_is_exclusive(x_1); -if (x_4 == 0) +uint8_t x_57; +x_57 = lean_ctor_get_uint8(x_12, sizeof(void*)*1 + 1); +if (x_57 == 0) { -lean_object* x_5; lean_object* x_6; lean_object* x_7; uint64_t x_8; size_t x_9; size_t x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_5 = lean_ctor_get(x_1, 0); -x_6 = lean_ctor_get(x_1, 1); -x_7 = l_Lean_Meta_Origin_key(x_2); -x_8 = l_Lean_Name_hash___override(x_7); -lean_dec(x_7); -x_9 = lean_uint64_to_usize(x_8); -x_10 = 1; -x_11 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_5, x_9, x_10, x_2, x_3); -x_12 = lean_unsigned_to_nat(1u); -x_13 = lean_nat_add(x_6, x_12); -lean_dec(x_6); -lean_ctor_set(x_1, 1, x_13); -lean_ctor_set(x_1, 0, x_11); -return x_1; +lean_object* x_58; lean_object* x_59; uint8_t x_60; +x_58 = lean_ctor_get(x_3, 0); +lean_inc(x_58); +lean_dec(x_3); +x_59 = lean_ctor_get(x_12, 0); +lean_inc(x_59); +lean_dec(x_12); +x_60 = lean_name_eq(x_58, x_59); +lean_dec(x_59); +lean_dec(x_58); +if (x_60 == 0) +{ +uint8_t x_61; +x_61 = 0; +x_14 = x_61; +goto block_17; } else { -lean_object* x_14; lean_object* x_15; lean_object* x_16; uint64_t x_17; size_t x_18; size_t x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_14 = lean_ctor_get(x_1, 0); -x_15 = lean_ctor_get(x_1, 1); -lean_inc(x_15); -lean_inc(x_14); -lean_dec(x_1); -x_16 = l_Lean_Meta_Origin_key(x_2); -x_17 = l_Lean_Name_hash___override(x_16); -lean_dec(x_16); -x_18 = lean_uint64_to_usize(x_17); -x_19 = 1; -x_20 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_14, x_18, x_19, x_2, x_3); -x_21 = lean_unsigned_to_nat(1u); -x_22 = lean_nat_add(x_15, x_21); -lean_dec(x_15); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_20); -lean_ctor_set(x_23, 1, x_22); -return x_23; +uint8_t x_62; +x_62 = 1; +x_14 = x_62; +goto block_17; +} +} +else +{ +uint8_t x_63; +lean_dec(x_12); +lean_dec(x_3); +x_63 = 0; +x_14 = x_63; +goto block_17; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordTriedSimpTheorem(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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: +else { -lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_10 = l_Lean_isDiagnosticsEnabled(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) +uint8_t x_64; +lean_dec(x_12); +lean_dec(x_3); +x_64 = 0; +x_14 = x_64; +goto block_17; +} +} +else { -uint8_t x_13; -lean_dec(x_1); -x_13 = !lean_is_exclusive(x_10); -if (x_13 == 0) +if (lean_obj_tag(x_12) == 0) { -lean_object* x_14; lean_object* x_15; -x_14 = lean_ctor_get(x_10, 0); -lean_dec(x_14); -x_15 = lean_box(0); -lean_ctor_set(x_10, 0, x_15); -return x_10; +uint8_t x_65; +x_65 = lean_ctor_get_uint8(x_12, sizeof(void*)*1); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; uint8_t x_69; +x_66 = lean_ctor_get(x_3, 0); +lean_inc(x_66); +lean_dec(x_3); +x_67 = lean_ctor_get(x_12, 0); +lean_inc(x_67); +x_68 = lean_ctor_get_uint8(x_12, sizeof(void*)*1 + 1); +lean_dec(x_12); +x_69 = lean_name_eq(x_66, x_67); +lean_dec(x_67); +lean_dec(x_66); +if (x_69 == 0) +{ +uint8_t x_70; +x_70 = 0; +x_14 = x_70; +goto block_17; } else { -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_10, 1); -lean_inc(x_16); -lean_dec(x_10); -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_16); -return x_18; +if (x_68 == 0) +{ +uint8_t x_71; +x_71 = 0; +x_14 = x_71; +goto block_17; +} +else +{ +uint8_t x_72; +x_72 = 1; +x_14 = x_72; +goto block_17; +} } } else { -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_19 = lean_ctor_get(x_10, 1); -lean_inc(x_19); -lean_dec(x_10); -x_20 = lean_st_ref_take(x_4, x_19); -x_21 = lean_ctor_get(x_20, 0); -lean_inc(x_21); -x_22 = lean_ctor_get(x_21, 4); -lean_inc(x_22); -x_23 = lean_ctor_get(x_20, 1); -lean_inc(x_23); -lean_dec(x_20); -x_24 = !lean_is_exclusive(x_21); -if (x_24 == 0) -{ -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_21, 4); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_22); -if (x_26 == 0) +uint8_t x_73; +x_73 = lean_ctor_get_uint8(x_12, sizeof(void*)*1 + 1); +if (x_73 == 0) { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_22, 1); -lean_inc(x_1); -lean_inc(x_27); -x_28 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(x_27, x_1); -if (lean_obj_tag(x_28) == 0) +uint8_t x_74; +lean_dec(x_12); +lean_dec(x_3); +x_74 = 0; +x_14 = x_74; +goto block_17; +} +else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; -x_29 = lean_unsigned_to_nat(1u); -x_30 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_27, x_1, x_29); -lean_ctor_set(x_22, 1, x_30); -x_31 = lean_st_ref_set(x_4, x_21, x_23); -x_32 = !lean_is_exclusive(x_31); -if (x_32 == 0) +lean_object* x_75; lean_object* x_76; uint8_t x_77; +x_75 = lean_ctor_get(x_3, 0); +lean_inc(x_75); +lean_dec(x_3); +x_76 = lean_ctor_get(x_12, 0); +lean_inc(x_76); +lean_dec(x_12); +x_77 = lean_name_eq(x_75, x_76); +lean_dec(x_76); +lean_dec(x_75); +if (x_77 == 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; +uint8_t x_78; +x_78 = 0; +x_14 = x_78; +goto block_17; } 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; +uint8_t x_79; +x_79 = 1; +x_14 = x_79; +goto block_17; +} +} } } 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_28, 0); -lean_inc(x_38); -lean_dec(x_28); -x_39 = lean_unsigned_to_nat(1u); -x_40 = lean_nat_add(x_38, x_39); -lean_dec(x_38); -x_41 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_27, x_1, x_40); -lean_ctor_set(x_22, 1, x_41); -x_42 = lean_st_ref_set(x_4, x_21, x_23); -x_43 = !lean_is_exclusive(x_42); -if (x_43 == 0) +uint8_t x_80; +x_80 = !lean_is_exclusive(x_3); +if (x_80 == 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; +lean_object* x_81; lean_object* x_82; uint8_t x_83; +lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_48); +x_81 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_82 = l_Lean_Meta_Origin_key(x_12); +lean_dec(x_12); +x_83 = lean_name_eq(x_81, x_82); +lean_dec(x_82); +lean_dec(x_81); +x_14 = x_83; +goto block_17; } 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; +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; uint8_t x_88; +x_84 = lean_ctor_get(x_3, 0); +lean_inc(x_84); +lean_dec(x_3); +x_85 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_85, 0, x_84); +lean_ctor_set_uint8(x_85, sizeof(void*)*1, x_48); +lean_ctor_set_uint8(x_85, sizeof(void*)*1 + 1, x_48); +x_86 = l_Lean_Meta_Origin_key(x_85); +lean_dec(x_85); +x_87 = l_Lean_Meta_Origin_key(x_12); +lean_dec(x_12); +x_88 = lean_name_eq(x_86, x_87); +lean_dec(x_87); +lean_dec(x_86); +x_14 = x_88; +goto block_17; +} +} } } } 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_22, 0); -x_50 = lean_ctor_get(x_22, 1); -x_51 = lean_ctor_get(x_22, 2); -x_52 = lean_ctor_get(x_22, 3); -lean_inc(x_52); -lean_inc(x_51); -lean_inc(x_50); -lean_inc(x_49); -lean_dec(x_22); -lean_inc(x_1); -lean_inc(x_50); -x_53 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(x_50, x_1); -if (lean_obj_tag(x_53) == 0) +if (lean_obj_tag(x_12) == 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; -x_54 = lean_unsigned_to_nat(1u); -x_55 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_50, x_1, x_54); -x_56 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_56, 0, x_49); -lean_ctor_set(x_56, 1, x_55); -lean_ctor_set(x_56, 2, x_51); -lean_ctor_set(x_56, 3, x_52); -lean_ctor_set(x_21, 4, x_56); -x_57 = lean_st_ref_set(x_4, x_21, x_23); -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); +uint8_t x_89; +x_89 = lean_ctor_get_uint8(x_12, sizeof(void*)*1); +if (x_89 == 0) +{ +lean_object* x_90; lean_object* x_91; uint8_t x_92; +x_90 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_91 = l_Lean_Meta_Origin_key(x_12); +lean_dec(x_12); +x_92 = lean_name_eq(x_90, x_91); +lean_dec(x_91); +lean_dec(x_90); +x_14 = x_92; +goto block_17; } -x_60 = lean_box(0); -if (lean_is_scalar(x_59)) { - x_61 = lean_alloc_ctor(0, 2, 0); -} else { - x_61 = x_59; +else +{ +uint8_t x_93; +x_93 = lean_ctor_get_uint8(x_12, sizeof(void*)*1 + 1); +if (x_93 == 0) +{ +uint8_t x_94; +lean_dec(x_12); +lean_dec(x_3); +x_94 = 0; +x_14 = x_94; +goto block_17; } -lean_ctor_set(x_61, 0, x_60); -lean_ctor_set(x_61, 1, x_58); -return x_61; +else +{ +uint8_t x_95; +x_95 = !lean_is_exclusive(x_12); +if (x_95 == 0) +{ +lean_object* x_96; lean_object* x_97; uint8_t x_98; +lean_ctor_set_uint8(x_12, sizeof(void*)*1, x_93); +x_96 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_97 = l_Lean_Meta_Origin_key(x_12); +lean_dec(x_12); +x_98 = lean_name_eq(x_96, x_97); +lean_dec(x_97); +lean_dec(x_96); +x_14 = x_98; +goto block_17; } 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; -x_62 = lean_ctor_get(x_53, 0); -lean_inc(x_62); -lean_dec(x_53); -x_63 = lean_unsigned_to_nat(1u); -x_64 = lean_nat_add(x_62, x_63); -lean_dec(x_62); -x_65 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_50, x_1, x_64); -x_66 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_66, 0, x_49); -lean_ctor_set(x_66, 1, x_65); -lean_ctor_set(x_66, 2, x_51); -lean_ctor_set(x_66, 3, x_52); -lean_ctor_set(x_21, 4, x_66); -x_67 = lean_st_ref_set(x_4, x_21, x_23); -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); -if (lean_is_exclusive(x_67)) { - lean_ctor_release(x_67, 0); - lean_ctor_release(x_67, 1); - x_69 = x_67; -} else { - lean_dec_ref(x_67); - x_69 = lean_box(0); +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; uint8_t x_103; +x_99 = lean_ctor_get(x_12, 0); +lean_inc(x_99); +lean_dec(x_12); +x_100 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_100, 0, x_99); +lean_ctor_set_uint8(x_100, sizeof(void*)*1, x_93); +lean_ctor_set_uint8(x_100, sizeof(void*)*1 + 1, x_93); +x_101 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_102 = l_Lean_Meta_Origin_key(x_100); +lean_dec(x_100); +x_103 = lean_name_eq(x_101, x_102); +lean_dec(x_102); +lean_dec(x_101); +x_14 = x_103; +goto block_17; } -x_70 = lean_box(0); -if (lean_is_scalar(x_69)) { - x_71 = lean_alloc_ctor(0, 2, 0); -} else { - x_71 = x_69; } -lean_ctor_set(x_71, 0, x_70); -lean_ctor_set(x_71, 1, x_68); -return x_71; } } +else +{ +lean_object* x_104; lean_object* x_105; uint8_t x_106; +x_104 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_105 = l_Lean_Meta_Origin_key(x_12); +lean_dec(x_12); +x_106 = lean_name_eq(x_104, x_105); +lean_dec(x_105); +lean_dec(x_104); +x_14 = x_106; +goto block_17; +} +} +block_17: +{ +if (x_14 == 0) +{ +lean_object* x_15; +lean_dec(x_13); +lean_dec(x_5); +x_15 = lean_box(0); +return x_15; } else { -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_72 = lean_ctor_get(x_21, 0); -x_73 = lean_ctor_get(x_21, 1); -x_74 = lean_ctor_get(x_21, 2); -x_75 = lean_ctor_get(x_21, 3); -lean_inc(x_75); -lean_inc(x_74); -lean_inc(x_73); -lean_inc(x_72); -lean_dec(x_21); -x_76 = lean_ctor_get(x_22, 0); -lean_inc(x_76); -x_77 = lean_ctor_get(x_22, 1); -lean_inc(x_77); -x_78 = lean_ctor_get(x_22, 2); -lean_inc(x_78); -x_79 = lean_ctor_get(x_22, 3); -lean_inc(x_79); -if (lean_is_exclusive(x_22)) { - lean_ctor_release(x_22, 0); - lean_ctor_release(x_22, 1); - lean_ctor_release(x_22, 2); - lean_ctor_release(x_22, 3); - x_80 = x_22; +lean_object* x_16; +if (lean_is_scalar(x_5)) { + x_16 = lean_alloc_ctor(1, 1, 0); } else { - lean_dec_ref(x_22); - x_80 = lean_box(0); + x_16 = x_5; + lean_ctor_set_tag(x_16, 1); } -lean_inc(x_1); -lean_inc(x_77); -x_81 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(x_77, x_1); -if (lean_obj_tag(x_81) == 0) +lean_ctor_set(x_16, 0, x_13); +return x_16; +} +} +} +case 1: { -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; -x_82 = lean_unsigned_to_nat(1u); -x_83 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_77, x_1, x_82); -if (lean_is_scalar(x_80)) { - x_84 = lean_alloc_ctor(0, 4, 0); -} else { - x_84 = x_80; +lean_object* x_107; size_t x_108; +lean_dec(x_5); +x_107 = lean_ctor_get(x_11, 0); +lean_inc(x_107); +lean_dec(x_11); +x_108 = lean_usize_shift_right(x_2, x_6); +x_1 = x_107; +x_2 = x_108; +goto _start; } -lean_ctor_set(x_84, 0, x_76); -lean_ctor_set(x_84, 1, x_83); -lean_ctor_set(x_84, 2, x_78); -lean_ctor_set(x_84, 3, x_79); -x_85 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_85, 0, x_72); -lean_ctor_set(x_85, 1, x_73); -lean_ctor_set(x_85, 2, x_74); -lean_ctor_set(x_85, 3, x_75); -lean_ctor_set(x_85, 4, x_84); -x_86 = lean_st_ref_set(x_4, x_85, x_23); -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_86); - x_88 = lean_box(0); +default: +{ +lean_object* x_110; +lean_dec(x_5); +lean_dec(x_3); +x_110 = lean_box(0); +return x_110; } -x_89 = lean_box(0); -if (lean_is_scalar(x_88)) { - x_90 = lean_alloc_ctor(0, 2, 0); -} else { - x_90 = x_88; } -lean_ctor_set(x_90, 0, x_89); -lean_ctor_set(x_90, 1, x_87); -return x_90; } else { -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_91 = lean_ctor_get(x_81, 0); -lean_inc(x_91); -lean_dec(x_81); -x_92 = lean_unsigned_to_nat(1u); -x_93 = lean_nat_add(x_91, x_92); -lean_dec(x_91); -x_94 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_77, x_1, x_93); -if (lean_is_scalar(x_80)) { - x_95 = lean_alloc_ctor(0, 4, 0); -} else { - x_95 = x_80; -} -lean_ctor_set(x_95, 0, x_76); -lean_ctor_set(x_95, 1, x_94); -lean_ctor_set(x_95, 2, x_78); -lean_ctor_set(x_95, 3, x_79); -x_96 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_96, 0, x_72); -lean_ctor_set(x_96, 1, x_73); -lean_ctor_set(x_96, 2, x_74); -lean_ctor_set(x_96, 3, x_75); -lean_ctor_set(x_96, 4, x_95); -x_97 = lean_st_ref_set(x_4, x_96, x_23); -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(0); -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; -} -} +lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; +x_111 = lean_ctor_get(x_1, 0); +lean_inc(x_111); +x_112 = lean_ctor_get(x_1, 1); +lean_inc(x_112); +lean_dec(x_1); +x_113 = lean_unsigned_to_nat(0u); +x_114 = l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__3(x_111, x_112, lean_box(0), x_113, x_3); +lean_dec(x_3); +lean_dec(x_112); +lean_dec(x_111); +return x_114; } } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__3___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_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_6; -x_6 = l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__3(x_1, x_2, x_3, x_4, x_5); -lean_dec(x_5); -lean_dec(x_2); +if (lean_obj_tag(x_2) == 0) +{ +uint8_t x_3; +x_3 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_3 == 0) +{ +lean_object* x_4; lean_object* x_5; uint64_t x_6; uint64_t x_7; uint64_t x_8; size_t x_9; lean_object* x_10; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); lean_dec(x_1); -return x_6; -} +x_5 = lean_ctor_get(x_2, 0); +lean_inc(x_5); +x_6 = l_Lean_Name_hash___override(x_5); +lean_dec(x_5); +x_7 = 13; +x_8 = lean_uint64_mix_hash(x_6, x_7); +x_9 = lean_uint64_to_usize(x_8); +x_10 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2(x_4, x_9, x_2); +return x_10; } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: +else { -size_t x_4; lean_object* x_5; -x_4 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_5 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2(x_1, x_4, x_3); -lean_dec(x_3); -return x_5; +lean_object* x_11; lean_object* x_12; uint64_t x_13; uint64_t x_14; uint64_t x_15; size_t x_16; lean_object* x_17; +x_11 = lean_ctor_get(x_1, 0); +lean_inc(x_11); +lean_dec(x_1); +x_12 = lean_ctor_get(x_2, 0); +lean_inc(x_12); +x_13 = l_Lean_Name_hash___override(x_12); +lean_dec(x_12); +x_14 = 11; +x_15 = lean_uint64_mix_hash(x_13, x_14); +x_16 = lean_uint64_to_usize(x_15); +x_17 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2(x_11, x_16, x_2); +return x_17; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Simp_recordTriedSimpTheorem___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) { -_start: +else { -size_t x_7; lean_object* x_8; -x_7 = lean_unbox_usize(x_1); +lean_object* x_18; lean_object* x_19; uint64_t x_20; size_t x_21; lean_object* x_22; +x_18 = lean_ctor_get(x_1, 0); +lean_inc(x_18); lean_dec(x_1); -x_8 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__6(x_7, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_3); -lean_dec(x_2); -return x_8; -} +x_19 = l_Lean_Meta_Origin_key(x_2); +x_20 = l_Lean_Name_hash___override(x_19); +lean_dec(x_19); +x_21 = lean_uint64_to_usize(x_20); +x_22 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2(x_18, x_21, x_2); +return x_22; } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5___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_2); -lean_dec(x_2); -x_7 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_8 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_1, x_6, x_7, x_4, x_5); -return x_8; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordTriedSimpTheorem___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_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_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__6(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: { -lean_object* x_10; -x_10 = l_Lean_Meta_Simp_recordTriedSimpTheorem(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_8); +lean_object* x_7; uint8_t x_8; +x_7 = lean_array_get_size(x_2); +x_8 = lean_nat_dec_lt(x_5, x_7); lean_dec(x_7); -lean_dec(x_6); +if (x_8 == 0) +{ lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_10; -} +return x_6; } -LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: +else { -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) +lean_object* x_9; lean_object* x_10; size_t x_11; size_t x_12; size_t x_13; size_t x_14; lean_object* x_15; lean_object* x_16; +x_9 = lean_array_fget(x_2, x_5); +x_10 = lean_array_fget(x_3, x_5); +x_11 = 1; +x_12 = lean_usize_sub(x_1, x_11); +x_13 = 5; +x_14 = lean_usize_mul(x_13, x_12); +x_15 = lean_unsigned_to_nat(1u); +x_16 = lean_nat_add(x_5, x_15); +lean_dec(x_5); +if (lean_obj_tag(x_9) == 0) { -uint8_t x_8; -lean_dec(x_4); -x_8 = 0; -return x_8; +uint8_t x_17; +x_17 = lean_ctor_get_uint8(x_9, sizeof(void*)*1 + 1); +if (x_17 == 0) +{ +lean_object* x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; size_t x_22; size_t x_23; lean_object* x_24; +x_18 = lean_ctor_get(x_9, 0); +lean_inc(x_18); +x_19 = l_Lean_Name_hash___override(x_18); +lean_dec(x_18); +x_20 = 13; +x_21 = lean_uint64_mix_hash(x_19, x_20); +x_22 = lean_uint64_to_usize(x_21); +x_23 = lean_usize_shift_right(x_22, x_14); +x_24 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_6, x_23, x_1, x_9, x_10); +x_4 = lean_box(0); +x_5 = x_16; +x_6 = x_24; +goto _start; } else { -lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_9 = lean_array_fget(x_1, x_4); -x_10 = l_Lean_Meta_Origin_key(x_5); -x_11 = l_Lean_Meta_Origin_key(x_9); -lean_dec(x_9); -x_12 = lean_name_eq(x_10, x_11); -lean_dec(x_11); -lean_dec(x_10); -if (x_12 == 0) -{ -lean_object* x_13; lean_object* x_14; -x_13 = lean_unsigned_to_nat(1u); -x_14 = lean_nat_add(x_4, x_13); -lean_dec(x_4); -x_3 = lean_box(0); -x_4 = x_14; +lean_object* x_26; uint64_t x_27; uint64_t x_28; uint64_t x_29; size_t x_30; size_t x_31; lean_object* x_32; +x_26 = lean_ctor_get(x_9, 0); +lean_inc(x_26); +x_27 = l_Lean_Name_hash___override(x_26); +lean_dec(x_26); +x_28 = 11; +x_29 = lean_uint64_mix_hash(x_27, x_28); +x_30 = lean_uint64_to_usize(x_29); +x_31 = lean_usize_shift_right(x_30, x_14); +x_32 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_6, x_31, x_1, x_9, x_10); +x_4 = lean_box(0); +x_5 = x_16; +x_6 = x_32; goto _start; } +} else { -uint8_t x_16; -lean_dec(x_4); -x_16 = 1; -return x_16; +lean_object* x_34; uint64_t x_35; size_t x_36; size_t x_37; lean_object* x_38; +x_34 = l_Lean_Meta_Origin_key(x_9); +x_35 = l_Lean_Name_hash___override(x_34); +lean_dec(x_34); +x_36 = lean_uint64_to_usize(x_35); +x_37 = lean_usize_shift_right(x_36, x_14); +x_38 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_6, x_37, x_1, x_9, x_10); +x_4 = lean_box(0); +x_5 = x_16; +x_6 = x_38; +goto _start; } } } } -LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__2(lean_object* x_1, size_t x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -if (lean_obj_tag(x_1) == 0) +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); +x_7 = lean_array_get_size(x_5); +x_8 = lean_nat_dec_lt(x_2, x_7); +lean_dec(x_7); +if (x_8 == 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_Simp_recordTriedSimpTheorem___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: +uint8_t x_9; +lean_dec(x_2); +x_9 = !lean_is_exclusive(x_1); +if (x_9 == 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); +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_10 = lean_ctor_get(x_1, 1); lean_dec(x_10); -x_12 = l_Lean_Meta_Origin_key(x_3); -x_13 = l_Lean_Meta_Origin_key(x_11); +x_11 = lean_ctor_get(x_1, 0); lean_dec(x_11); -x_14 = lean_name_eq(x_12, x_13); -lean_dec(x_13); -lean_dec(x_12); -return x_14; +x_12 = lean_array_push(x_5, x_3); +x_13 = lean_array_push(x_6, x_4); +lean_ctor_set(x_1, 1, x_13); +lean_ctor_set(x_1, 0, x_12); +return x_1; } -case 1: +else { -lean_object* x_15; size_t x_16; -x_15 = lean_ctor_get(x_10, 0); -lean_inc(x_15); -lean_dec(x_10); -x_16 = lean_usize_shift_right(x_2, x_5); -x_1 = x_15; -x_2 = x_16; -goto _start; +lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_dec(x_1); +x_14 = lean_array_push(x_5, x_3); +x_15 = lean_array_push(x_6, x_4); +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; } -default: -{ -uint8_t x_18; -x_18 = 0; -return x_18; } +else +{ +uint8_t x_17; lean_object* x_30; +x_30 = lean_array_fget(x_5, x_2); +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_31; +x_31 = lean_ctor_get_uint8(x_3, sizeof(void*)*1); +if (x_31 == 0) +{ +if (lean_obj_tag(x_30) == 0) +{ +uint8_t x_32; +x_32 = lean_ctor_get_uint8(x_30, sizeof(void*)*1); +if (x_32 == 0) +{ +lean_object* x_33; uint8_t x_34; lean_object* x_35; uint8_t x_36; uint8_t x_37; +x_33 = lean_ctor_get(x_3, 0); +lean_inc(x_33); +x_34 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +x_35 = lean_ctor_get(x_30, 0); +lean_inc(x_35); +x_36 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +lean_dec(x_30); +x_37 = lean_name_eq(x_33, x_35); +lean_dec(x_35); +lean_dec(x_33); +if (x_37 == 0) +{ +uint8_t x_38; +x_38 = 0; +x_17 = x_38; +goto block_29; } +else +{ +if (x_34 == 0) +{ +if (x_36 == 0) +{ +uint8_t x_39; +x_39 = 1; +x_17 = x_39; +goto block_29; } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_19 = lean_ctor_get(x_1, 0); -lean_inc(x_19); -x_20 = lean_ctor_get(x_1, 1); -lean_inc(x_20); -lean_dec(x_1); -x_21 = lean_unsigned_to_nat(0u); -x_22 = l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__3(x_19, x_20, lean_box(0), x_21, x_3); -lean_dec(x_20); -lean_dec(x_19); -return x_22; +uint8_t x_40; +x_40 = 0; +x_17 = x_40; +goto block_29; } } +else +{ +if (x_36 == 0) +{ +uint8_t x_41; +x_41 = 0; +x_17 = x_41; +goto block_29; } -LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at_Lean_Meta_Simp_recordSimpTheorem___spec__1(lean_object* x_1, lean_object* x_2) { -_start: +else { -lean_object* x_3; lean_object* x_4; uint64_t x_5; size_t x_6; uint8_t x_7; -x_3 = lean_ctor_get(x_1, 0); -lean_inc(x_3); -lean_dec(x_1); -x_4 = l_Lean_Meta_Origin_key(x_2); -x_5 = l_Lean_Name_hash___override(x_4); -lean_dec(x_4); -x_6 = lean_uint64_to_usize(x_5); -x_7 = l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__2(x_3, x_6, x_2); -lean_dec(x_2); -return x_7; +uint8_t x_42; +x_42 = 1; +x_17 = x_42; +goto block_29; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordSimpTheorem___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; uint8_t x_18; -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_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_ctor_get(x_11, 3); -lean_inc(x_16); -x_17 = lean_ctor_get(x_11, 4); -lean_inc(x_17); -lean_inc(x_1); -lean_inc(x_15); -x_18 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_Simp_recordSimpTheorem___spec__1(x_15, x_1); -if (x_18 == 0) +} +} +else { -uint8_t x_19; -x_19 = !lean_is_exclusive(x_11); -if (x_19 == 0) +uint8_t x_43; +x_43 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +if (x_43 == 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; uint8_t x_28; -x_20 = lean_ctor_get(x_11, 4); -lean_dec(x_20); -x_21 = lean_ctor_get(x_11, 3); -lean_dec(x_21); -x_22 = lean_ctor_get(x_11, 2); -lean_dec(x_22); -x_23 = lean_ctor_get(x_11, 1); -lean_dec(x_23); -x_24 = lean_ctor_get(x_11, 0); -lean_dec(x_24); -x_25 = lean_ctor_get(x_15, 1); -lean_inc(x_25); -x_26 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_15, x_1, x_25); -lean_ctor_set(x_11, 2, x_26); -x_27 = lean_st_ref_set(x_4, x_11, x_12); -x_28 = !lean_is_exclusive(x_27); -if (x_28 == 0) +lean_object* x_44; uint8_t x_45; lean_object* x_46; uint8_t x_47; +x_44 = lean_ctor_get(x_3, 0); +lean_inc(x_44); +x_45 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +x_46 = lean_ctor_get(x_30, 0); +lean_inc(x_46); +lean_dec(x_30); +x_47 = lean_name_eq(x_44, x_46); +lean_dec(x_46); +lean_dec(x_44); +if (x_47 == 0) { -lean_object* x_29; lean_object* x_30; -x_29 = lean_ctor_get(x_27, 0); -lean_dec(x_29); -x_30 = lean_box(0); -lean_ctor_set(x_27, 0, x_30); -return x_27; +uint8_t x_48; +x_48 = 0; +x_17 = x_48; +goto block_29; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_27, 1); -lean_inc(x_31); -lean_dec(x_27); -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; -} +if (x_45 == 0) +{ +uint8_t x_49; +x_49 = 1; +x_17 = x_49; +goto block_29; } 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_dec(x_11); -x_34 = lean_ctor_get(x_15, 1); -lean_inc(x_34); -x_35 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_15, x_1, x_34); -x_36 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_36, 0, x_13); -lean_ctor_set(x_36, 1, x_14); -lean_ctor_set(x_36, 2, x_35); -lean_ctor_set(x_36, 3, x_16); -lean_ctor_set(x_36, 4, x_17); -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; -} else { - lean_dec_ref(x_37); - x_39 = lean_box(0); +uint8_t x_50; +x_50 = 0; +x_17 = x_50; +goto block_29; } -x_40 = lean_box(0); -if (lean_is_scalar(x_39)) { - x_41 = lean_alloc_ctor(0, 2, 0); -} else { - x_41 = x_39; } -lean_ctor_set(x_41, 0, x_40); -lean_ctor_set(x_41, 1, x_38); -return x_41; } +else +{ +lean_object* x_51; uint8_t x_52; lean_object* x_53; uint8_t x_54; +x_51 = lean_ctor_get(x_3, 0); +lean_inc(x_51); +x_52 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +x_53 = lean_ctor_get(x_30, 0); +lean_inc(x_53); +lean_dec(x_30); +x_54 = lean_name_eq(x_51, x_53); +lean_dec(x_53); +lean_dec(x_51); +if (x_54 == 0) +{ +uint8_t x_55; +x_55 = 0; +x_17 = x_55; +goto block_29; } else { -lean_object* x_42; uint8_t x_43; -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_1); -x_42 = lean_st_ref_set(x_4, x_11, x_12); -x_43 = !lean_is_exclusive(x_42); -if (x_43 == 0) +if (x_52 == 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; +uint8_t x_56; +x_56 = 0; +x_17 = x_56; +goto block_29; } 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; +uint8_t x_57; +x_57 = 1; +x_17 = x_57; +goto block_29; } } } } -static lean_object* _init_l_Lean_Meta_Simp_recordSimpTheorem___closed__1() { -_start: +} +else { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Simp_recordSimpTheorem___lambda__1___boxed), 9, 0); -return x_1; +lean_object* x_58; lean_object* x_59; uint8_t x_60; +x_58 = l_Lean_Meta_Origin_key(x_3); +x_59 = l_Lean_Meta_Origin_key(x_30); +lean_dec(x_30); +x_60 = lean_name_eq(x_58, x_59); +lean_dec(x_59); +lean_dec(x_58); +x_17 = x_60; +goto block_29; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordSimpTheorem(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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: +else { -lean_object* x_10; lean_object* x_33; lean_object* x_34; uint8_t x_35; -x_33 = l_Lean_isDiagnosticsEnabled(x_7, x_8, x_9); -x_34 = lean_ctor_get(x_33, 0); -lean_inc(x_34); -x_35 = lean_unbox(x_34); -lean_dec(x_34); -if (x_35 == 0) +uint8_t x_61; +x_61 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +if (x_61 == 0) { -lean_object* x_36; -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); -lean_dec(x_33); -x_10 = x_36; -goto block_32; +if (lean_obj_tag(x_30) == 0) +{ +uint8_t x_62; +x_62 = lean_ctor_get_uint8(x_30, sizeof(void*)*1); +if (x_62 == 0) +{ +lean_object* x_63; lean_object* x_64; uint8_t x_65; uint8_t x_66; +x_63 = lean_ctor_get(x_3, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_30, 0); +lean_inc(x_64); +x_65 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +lean_dec(x_30); +x_66 = lean_name_eq(x_63, x_64); +lean_dec(x_64); +lean_dec(x_63); +if (x_66 == 0) +{ +uint8_t x_67; +x_67 = 0; +x_17 = x_67; +goto block_29; } else { -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_37 = lean_ctor_get(x_33, 1); -lean_inc(x_37); -lean_dec(x_33); -x_38 = lean_st_ref_take(x_4, x_37); -x_39 = lean_ctor_get(x_38, 0); -lean_inc(x_39); -x_40 = lean_ctor_get(x_39, 4); -lean_inc(x_40); -x_41 = lean_ctor_get(x_38, 1); -lean_inc(x_41); -lean_dec(x_38); -x_42 = !lean_is_exclusive(x_39); -if (x_42 == 0) -{ -lean_object* x_43; uint8_t x_44; -x_43 = lean_ctor_get(x_39, 4); -lean_dec(x_43); -x_44 = !lean_is_exclusive(x_40); -if (x_44 == 0) -{ -lean_object* x_45; lean_object* x_46; -x_45 = lean_ctor_get(x_40, 0); -lean_inc(x_1); -lean_inc(x_45); -x_46 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(x_45, x_1); -if (lean_obj_tag(x_46) == 0) +if (x_65 == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_47 = lean_unsigned_to_nat(1u); -lean_inc(x_1); -x_48 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_45, x_1, x_47); -lean_ctor_set(x_40, 0, x_48); -x_49 = lean_st_ref_set(x_4, x_39, x_41); -x_50 = lean_ctor_get(x_49, 1); -lean_inc(x_50); -lean_dec(x_49); -x_10 = x_50; -goto block_32; +uint8_t x_68; +x_68 = 1; +x_17 = x_68; +goto block_29; } 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; -x_51 = lean_ctor_get(x_46, 0); -lean_inc(x_51); -lean_dec(x_46); -x_52 = lean_unsigned_to_nat(1u); -x_53 = lean_nat_add(x_51, x_52); -lean_dec(x_51); -lean_inc(x_1); -x_54 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_45, x_1, x_53); -lean_ctor_set(x_40, 0, x_54); -x_55 = lean_st_ref_set(x_4, x_39, x_41); -x_56 = lean_ctor_get(x_55, 1); -lean_inc(x_56); -lean_dec(x_55); -x_10 = x_56; -goto block_32; +uint8_t x_69; +x_69 = 0; +x_17 = x_69; +goto block_29; +} } } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_57 = lean_ctor_get(x_40, 0); -x_58 = lean_ctor_get(x_40, 1); -x_59 = lean_ctor_get(x_40, 2); -x_60 = lean_ctor_get(x_40, 3); -lean_inc(x_60); -lean_inc(x_59); -lean_inc(x_58); -lean_inc(x_57); -lean_dec(x_40); -lean_inc(x_1); -lean_inc(x_57); -x_61 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(x_57, x_1); -if (lean_obj_tag(x_61) == 0) +uint8_t x_70; +x_70 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +if (x_70 == 0) { -lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_62 = lean_unsigned_to_nat(1u); -lean_inc(x_1); -x_63 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_57, x_1, x_62); -x_64 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_64, 0, x_63); -lean_ctor_set(x_64, 1, x_58); -lean_ctor_set(x_64, 2, x_59); -lean_ctor_set(x_64, 3, x_60); -lean_ctor_set(x_39, 4, x_64); -x_65 = lean_st_ref_set(x_4, x_39, x_41); -x_66 = lean_ctor_get(x_65, 1); -lean_inc(x_66); -lean_dec(x_65); -x_10 = x_66; -goto block_32; +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_3, 0); +lean_inc(x_71); +x_72 = lean_ctor_get(x_30, 0); +lean_inc(x_72); +lean_dec(x_30); +x_73 = lean_name_eq(x_71, x_72); +lean_dec(x_72); +lean_dec(x_71); +if (x_73 == 0) +{ +uint8_t x_74; +x_74 = 0; +x_17 = x_74; +goto block_29; } 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; -x_67 = lean_ctor_get(x_61, 0); -lean_inc(x_67); -lean_dec(x_61); -x_68 = lean_unsigned_to_nat(1u); -x_69 = lean_nat_add(x_67, x_68); -lean_dec(x_67); -lean_inc(x_1); -x_70 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_57, x_1, x_69); -x_71 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_71, 0, x_70); -lean_ctor_set(x_71, 1, x_58); -lean_ctor_set(x_71, 2, x_59); -lean_ctor_set(x_71, 3, x_60); -lean_ctor_set(x_39, 4, x_71); -x_72 = lean_st_ref_set(x_4, x_39, x_41); -x_73 = lean_ctor_get(x_72, 1); -lean_inc(x_73); -lean_dec(x_72); -x_10 = x_73; -goto block_32; +uint8_t x_75; +x_75 = 1; +x_17 = x_75; +goto block_29; +} +} +else +{ +uint8_t x_76; +lean_dec(x_30); +x_76 = 0; +x_17 = x_76; +goto block_29; } } } else { -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; -x_74 = lean_ctor_get(x_39, 0); -x_75 = lean_ctor_get(x_39, 1); -x_76 = lean_ctor_get(x_39, 2); -x_77 = lean_ctor_get(x_39, 3); -lean_inc(x_77); -lean_inc(x_76); -lean_inc(x_75); -lean_inc(x_74); -lean_dec(x_39); -x_78 = lean_ctor_get(x_40, 0); -lean_inc(x_78); -x_79 = lean_ctor_get(x_40, 1); +uint8_t x_77; +lean_dec(x_30); +x_77 = 0; +x_17 = x_77; +goto block_29; +} +} +else +{ +if (lean_obj_tag(x_30) == 0) +{ +uint8_t x_78; +x_78 = lean_ctor_get_uint8(x_30, sizeof(void*)*1); +if (x_78 == 0) +{ +lean_object* x_79; lean_object* x_80; uint8_t x_81; uint8_t x_82; +x_79 = lean_ctor_get(x_3, 0); lean_inc(x_79); -x_80 = lean_ctor_get(x_40, 2); +x_80 = lean_ctor_get(x_30, 0); lean_inc(x_80); -x_81 = lean_ctor_get(x_40, 3); -lean_inc(x_81); -if (lean_is_exclusive(x_40)) { - lean_ctor_release(x_40, 0); - lean_ctor_release(x_40, 1); - lean_ctor_release(x_40, 2); - lean_ctor_release(x_40, 3); - x_82 = x_40; -} else { - lean_dec_ref(x_40); - x_82 = lean_box(0); +x_81 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +lean_dec(x_30); +x_82 = lean_name_eq(x_79, x_80); +lean_dec(x_80); +lean_dec(x_79); +if (x_82 == 0) +{ +uint8_t x_83; +x_83 = 0; +x_17 = x_83; +goto block_29; } -lean_inc(x_1); -lean_inc(x_78); -x_83 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(x_78, x_1); -if (lean_obj_tag(x_83) == 0) +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; -x_84 = lean_unsigned_to_nat(1u); -lean_inc(x_1); -x_85 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_78, x_1, x_84); -if (lean_is_scalar(x_82)) { - x_86 = lean_alloc_ctor(0, 4, 0); -} else { - x_86 = x_82; +if (x_81 == 0) +{ +uint8_t x_84; +x_84 = 0; +x_17 = x_84; +goto block_29; } -lean_ctor_set(x_86, 0, x_85); -lean_ctor_set(x_86, 1, x_79); -lean_ctor_set(x_86, 2, x_80); -lean_ctor_set(x_86, 3, x_81); -x_87 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_87, 0, x_74); -lean_ctor_set(x_87, 1, x_75); -lean_ctor_set(x_87, 2, x_76); -lean_ctor_set(x_87, 3, x_77); -lean_ctor_set(x_87, 4, x_86); -x_88 = lean_st_ref_set(x_4, x_87, x_41); -x_89 = lean_ctor_get(x_88, 1); +else +{ +uint8_t x_85; +x_85 = 1; +x_17 = x_85; +goto block_29; +} +} +} +else +{ +uint8_t x_86; +x_86 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +if (x_86 == 0) +{ +uint8_t x_87; +lean_dec(x_30); +x_87 = 0; +x_17 = x_87; +goto block_29; +} +else +{ +lean_object* x_88; lean_object* x_89; uint8_t x_90; +x_88 = lean_ctor_get(x_3, 0); +lean_inc(x_88); +x_89 = lean_ctor_get(x_30, 0); lean_inc(x_89); +lean_dec(x_30); +x_90 = lean_name_eq(x_88, x_89); +lean_dec(x_89); lean_dec(x_88); -x_10 = x_89; -goto block_32; +if (x_90 == 0) +{ +uint8_t x_91; +x_91 = 0; +x_17 = x_91; +goto block_29; } 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; -x_90 = lean_ctor_get(x_83, 0); -lean_inc(x_90); -lean_dec(x_83); -x_91 = lean_unsigned_to_nat(1u); -x_92 = lean_nat_add(x_90, x_91); -lean_dec(x_90); -lean_inc(x_1); -x_93 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_78, x_1, x_92); -if (lean_is_scalar(x_82)) { - x_94 = lean_alloc_ctor(0, 4, 0); -} else { - x_94 = x_82; +uint8_t x_92; +x_92 = 1; +x_17 = x_92; +goto block_29; } +} +} +} +else +{ +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; uint8_t x_97; +x_93 = lean_ctor_get(x_3, 0); +lean_inc(x_93); +x_94 = lean_alloc_ctor(0, 1, 2); lean_ctor_set(x_94, 0, x_93); -lean_ctor_set(x_94, 1, x_79); -lean_ctor_set(x_94, 2, x_80); -lean_ctor_set(x_94, 3, x_81); -x_95 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_95, 0, x_74); -lean_ctor_set(x_95, 1, x_75); -lean_ctor_set(x_95, 2, x_76); -lean_ctor_set(x_95, 3, x_77); -lean_ctor_set(x_95, 4, x_94); -x_96 = lean_st_ref_set(x_4, x_95, x_41); -x_97 = lean_ctor_get(x_96, 1); -lean_inc(x_97); +lean_ctor_set_uint8(x_94, sizeof(void*)*1, x_61); +lean_ctor_set_uint8(x_94, sizeof(void*)*1 + 1, x_61); +x_95 = l_Lean_Meta_Origin_key(x_94); +lean_dec(x_94); +x_96 = l_Lean_Meta_Origin_key(x_30); +lean_dec(x_30); +x_97 = lean_name_eq(x_95, x_96); lean_dec(x_96); -x_10 = x_97; -goto block_32; +lean_dec(x_95); +x_17 = x_97; +goto block_29; } } } -block_32: +} +else { -lean_object* x_11; -x_11 = l_Lean_Meta_Simp_recordSimpTheorem___closed__1; -if (lean_obj_tag(x_1) == 0) +if (lean_obj_tag(x_30) == 0) { -uint8_t x_12; -x_12 = lean_ctor_get_uint8(x_1, sizeof(void*)*1 + 1); -if (x_12 == 0) +uint8_t x_98; +x_98 = lean_ctor_get_uint8(x_30, sizeof(void*)*1); +if (x_98 == 0) { -lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; -x_13 = lean_ctor_get(x_1, 0); -lean_inc(x_13); -x_14 = lean_ctor_get_uint8(x_1, sizeof(void*)*1); -x_15 = l_Lean_Meta_isEqnThm_x3f(x_13, x_7, x_8, x_10); -x_16 = lean_ctor_get(x_15, 0); -lean_inc(x_16); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); -lean_dec(x_15); -x_18 = lean_apply_9(x_11, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_17); -return x_18; +lean_object* x_99; lean_object* x_100; uint8_t x_101; +x_99 = l_Lean_Meta_Origin_key(x_3); +x_100 = l_Lean_Meta_Origin_key(x_30); +lean_dec(x_30); +x_101 = lean_name_eq(x_99, x_100); +lean_dec(x_100); +lean_dec(x_99); +x_17 = x_101; +goto block_29; } else { -uint8_t x_19; -x_19 = !lean_is_exclusive(x_1); -if (x_19 == 0) +uint8_t x_102; +x_102 = lean_ctor_get_uint8(x_30, sizeof(void*)*1 + 1); +if (x_102 == 0) { -lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_object* x_24; -x_20 = lean_ctor_get(x_1, 0); -lean_dec(x_20); -x_21 = lean_ctor_get(x_15, 1); -lean_inc(x_21); -lean_dec(x_15); -x_22 = lean_ctor_get(x_16, 0); -lean_inc(x_22); -lean_dec(x_16); -x_23 = 0; -lean_ctor_set(x_1, 0, x_22); -lean_ctor_set_uint8(x_1, sizeof(void*)*1 + 1, x_23); -x_24 = lean_apply_9(x_11, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_21); -return x_24; +uint8_t x_103; +lean_dec(x_30); +x_103 = 0; +x_17 = x_103; +goto block_29; } else { -lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_1); -x_25 = lean_ctor_get(x_15, 1); -lean_inc(x_25); -lean_dec(x_15); -x_26 = lean_ctor_get(x_16, 0); -lean_inc(x_26); -lean_dec(x_16); -x_27 = 0; -x_28 = lean_alloc_ctor(0, 1, 2); -lean_ctor_set(x_28, 0, x_26); -lean_ctor_set_uint8(x_28, sizeof(void*)*1, x_14); -lean_ctor_set_uint8(x_28, sizeof(void*)*1 + 1, x_27); -x_29 = lean_apply_9(x_11, x_28, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_25); -return x_29; -} -} +uint8_t x_104; +x_104 = !lean_is_exclusive(x_30); +if (x_104 == 0) +{ +lean_object* x_105; lean_object* x_106; uint8_t x_107; +lean_ctor_set_uint8(x_30, sizeof(void*)*1, x_102); +x_105 = l_Lean_Meta_Origin_key(x_3); +x_106 = l_Lean_Meta_Origin_key(x_30); +lean_dec(x_30); +x_107 = lean_name_eq(x_105, x_106); +lean_dec(x_106); +lean_dec(x_105); +x_17 = x_107; +goto block_29; } else { -lean_object* x_30; -x_30 = lean_apply_9(x_11, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10); -return x_30; +lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; uint8_t x_112; +x_108 = lean_ctor_get(x_30, 0); +lean_inc(x_108); +lean_dec(x_30); +x_109 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_109, 0, x_108); +lean_ctor_set_uint8(x_109, sizeof(void*)*1, x_102); +lean_ctor_set_uint8(x_109, sizeof(void*)*1 + 1, x_102); +x_110 = l_Lean_Meta_Origin_key(x_3); +x_111 = l_Lean_Meta_Origin_key(x_109); +lean_dec(x_109); +x_112 = lean_name_eq(x_110, x_111); +lean_dec(x_111); +lean_dec(x_110); +x_17 = x_112; +goto block_29; } } -else -{ -lean_object* x_31; -x_31 = lean_apply_9(x_11, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10); -return x_31; } } +else +{ +lean_object* x_113; lean_object* x_114; uint8_t x_115; +x_113 = l_Lean_Meta_Origin_key(x_3); +x_114 = l_Lean_Meta_Origin_key(x_30); +lean_dec(x_30); +x_115 = lean_name_eq(x_113, x_114); +lean_dec(x_114); +lean_dec(x_113); +x_17 = x_115; +goto block_29; } } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: +block_29: { -uint8_t x_6; lean_object* x_7; -x_6 = l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__3(x_1, x_2, x_3, x_4, x_5); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_6); lean_dec(x_5); +x_18 = lean_unsigned_to_nat(1u); +x_19 = lean_nat_add(x_2, x_18); lean_dec(x_2); -lean_dec(x_1); -x_7 = lean_box(x_6); -return x_7; +x_2 = x_19; +goto _start; } +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_1); +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_dec(x_22); +x_23 = lean_ctor_get(x_1, 0); +lean_dec(x_23); +x_24 = lean_array_fset(x_5, x_2, x_3); +x_25 = lean_array_fset(x_6, x_2, x_4); +lean_dec(x_2); +lean_ctor_set(x_1, 1, x_25); +lean_ctor_set(x_1, 0, x_24); +return x_1; } -LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: +else { -size_t x_4; uint8_t x_5; lean_object* x_6; -x_4 = lean_unbox_usize(x_2); +lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_1); +x_26 = lean_array_fset(x_5, x_2, x_3); +x_27 = lean_array_fset(x_6, x_2, x_4); lean_dec(x_2); -x_5 = l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__2(x_1, x_4, x_3); -lean_dec(x_3); -x_6 = lean_box(x_5); -return x_6; +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_Lean_PersistentHashMap_contains___at_Lean_Meta_Simp_recordSimpTheorem___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_Simp_recordSimpTheorem___spec__1(x_1, x_2); -x_4 = lean_box(x_3); -return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordSimpTheorem___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) { +} +} +static lean_object* _init_l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5___closed__1() { _start: { -lean_object* x_10; -x_10 = l_Lean_Meta_Simp_recordSimpTheorem___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_object* x_1; +x_1 = l_Lean_PersistentHashMap_mkEmptyEntries(lean_box(0), lean_box(0)); +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordCongrTheorem(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_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_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5) { _start: { -lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_10 = l_Lean_isDiagnosticsEnabled(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) +if (lean_obj_tag(x_1) == 0) { -uint8_t x_13; -lean_dec(x_1); -x_13 = !lean_is_exclusive(x_10); -if (x_13 == 0) +lean_object* x_6; lean_object* x_7; size_t x_8; size_t x_9; size_t x_10; size_t x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_6 = lean_ctor_get(x_1, 0); +lean_inc(x_6); +if (lean_is_exclusive(x_1)) { + lean_ctor_release(x_1, 0); + x_7 = x_1; +} else { + lean_dec_ref(x_1); + x_7 = lean_box(0); +} +x_8 = 1; +x_9 = 5; +x_10 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___closed__2; +x_11 = lean_usize_land(x_2, x_10); +x_12 = lean_usize_to_nat(x_11); +x_13 = lean_array_get_size(x_6); +x_14 = lean_nat_dec_lt(x_12, x_13); +lean_dec(x_13); +if (x_14 == 0) { -lean_object* x_14; lean_object* x_15; -x_14 = lean_ctor_get(x_10, 0); -lean_dec(x_14); -x_15 = lean_box(0); -lean_ctor_set(x_10, 0, x_15); -return x_10; +lean_object* x_15; +lean_dec(x_12); +lean_dec(x_5); +lean_dec(x_4); +if (lean_is_scalar(x_7)) { + x_15 = lean_alloc_ctor(0, 1, 0); +} else { + x_15 = x_7; +} +lean_ctor_set(x_15, 0, x_6); +return x_15; } else { lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = lean_ctor_get(x_10, 1); -lean_inc(x_16); -lean_dec(x_10); +x_16 = lean_array_fget(x_6, x_12); 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_16); -return x_18; -} -} -else +x_18 = lean_array_fset(x_6, x_12, x_17); +switch (lean_obj_tag(x_16)) { +case 0: { -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_19 = lean_ctor_get(x_10, 1); +lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_19 = lean_ctor_get(x_16, 0); lean_inc(x_19); -lean_dec(x_10); -x_20 = lean_st_ref_take(x_4, x_19); -x_21 = lean_ctor_get(x_20, 0); -lean_inc(x_21); -x_22 = lean_ctor_get(x_21, 4); -lean_inc(x_22); -x_23 = lean_ctor_get(x_20, 1); -lean_inc(x_23); -lean_dec(x_20); -x_24 = !lean_is_exclusive(x_21); -if (x_24 == 0) +x_20 = lean_ctor_get(x_16, 1); +lean_inc(x_20); +if (lean_is_exclusive(x_16)) { + lean_ctor_release(x_16, 0); + lean_ctor_release(x_16, 1); + x_21 = x_16; +} else { + lean_dec_ref(x_16); + x_21 = lean_box(0); +} +if (lean_obj_tag(x_4) == 0) { -lean_object* x_25; uint8_t x_26; -x_25 = lean_ctor_get(x_21, 4); -lean_dec(x_25); -x_26 = !lean_is_exclusive(x_22); -if (x_26 == 0) +uint8_t x_31; +x_31 = lean_ctor_get_uint8(x_4, sizeof(void*)*1); +if (x_31 == 0) { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_22, 2); -lean_inc(x_1); -lean_inc(x_27); -x_28 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Kernel_Diagnostics_recordUnfold___spec__1(x_27, x_1); -if (lean_obj_tag(x_28) == 0) +if (lean_obj_tag(x_19) == 0) { -lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; -x_29 = lean_unsigned_to_nat(1u); -x_30 = l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(x_27, x_1, x_29); -lean_ctor_set(x_22, 2, x_30); -x_31 = lean_st_ref_set(x_4, x_21, x_23); -x_32 = !lean_is_exclusive(x_31); +uint8_t x_32; +x_32 = lean_ctor_get_uint8(x_19, sizeof(void*)*1); if (x_32 == 0) { -lean_object* x_33; lean_object* x_34; -x_33 = lean_ctor_get(x_31, 0); +lean_object* x_33; uint8_t x_34; lean_object* x_35; uint8_t x_36; uint8_t x_37; +x_33 = lean_ctor_get(x_4, 0); +lean_inc(x_33); +x_34 = lean_ctor_get_uint8(x_4, sizeof(void*)*1 + 1); +x_35 = lean_ctor_get(x_19, 0); +lean_inc(x_35); +x_36 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +x_37 = lean_name_eq(x_33, x_35); +lean_dec(x_35); lean_dec(x_33); -x_34 = lean_box(0); -lean_ctor_set(x_31, 0, x_34); -return x_31; +if (x_37 == 0) +{ +uint8_t x_38; +x_38 = 0; +x_22 = x_38; +goto block_30; } 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; +if (x_34 == 0) +{ +if (x_36 == 0) +{ +uint8_t x_39; +x_39 = 1; +x_22 = x_39; +goto block_30; +} +else +{ +uint8_t x_40; +x_40 = 0; +x_22 = x_40; +goto block_30; } } 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_28, 0); -lean_inc(x_38); -lean_dec(x_28); -x_39 = lean_unsigned_to_nat(1u); -x_40 = lean_nat_add(x_38, x_39); -lean_dec(x_38); -x_41 = l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(x_27, x_1, x_40); -lean_ctor_set(x_22, 2, x_41); -x_42 = lean_st_ref_set(x_4, x_21, x_23); -x_43 = !lean_is_exclusive(x_42); +if (x_36 == 0) +{ +uint8_t x_41; +x_41 = 0; +x_22 = x_41; +goto block_30; +} +else +{ +uint8_t x_42; +x_42 = 1; +x_22 = x_42; +goto block_30; +} +} +} +} +else +{ +uint8_t x_43; +x_43 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); if (x_43 == 0) { -lean_object* x_44; lean_object* x_45; -x_44 = lean_ctor_get(x_42, 0); +lean_object* x_44; uint8_t x_45; lean_object* x_46; uint8_t x_47; +x_44 = lean_ctor_get(x_4, 0); +lean_inc(x_44); +x_45 = lean_ctor_get_uint8(x_4, sizeof(void*)*1 + 1); +x_46 = lean_ctor_get(x_19, 0); +lean_inc(x_46); +x_47 = lean_name_eq(x_44, x_46); +lean_dec(x_46); lean_dec(x_44); -x_45 = lean_box(0); -lean_ctor_set(x_42, 0, x_45); -return x_42; +if (x_47 == 0) +{ +uint8_t x_48; +x_48 = 0; +x_22 = x_48; +goto block_30; } 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; +if (x_45 == 0) +{ +uint8_t x_49; +x_49 = 1; +x_22 = x_49; +goto block_30; +} +else +{ +uint8_t x_50; +x_50 = 0; +x_22 = x_50; +goto block_30; } } } 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_22, 0); -x_50 = lean_ctor_get(x_22, 1); -x_51 = lean_ctor_get(x_22, 2); -x_52 = lean_ctor_get(x_22, 3); -lean_inc(x_52); -lean_inc(x_51); -lean_inc(x_50); -lean_inc(x_49); -lean_dec(x_22); -lean_inc(x_1); +lean_object* x_51; uint8_t x_52; lean_object* x_53; uint8_t x_54; +x_51 = lean_ctor_get(x_4, 0); lean_inc(x_51); -x_53 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Kernel_Diagnostics_recordUnfold___spec__1(x_51, x_1); -if (lean_obj_tag(x_53) == 0) +x_52 = lean_ctor_get_uint8(x_4, sizeof(void*)*1 + 1); +x_53 = lean_ctor_get(x_19, 0); +lean_inc(x_53); +x_54 = lean_name_eq(x_51, x_53); +lean_dec(x_53); +lean_dec(x_51); +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_60; lean_object* x_61; -x_54 = lean_unsigned_to_nat(1u); -x_55 = l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(x_51, x_1, x_54); -x_56 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_56, 0, x_49); -lean_ctor_set(x_56, 1, x_50); -lean_ctor_set(x_56, 2, x_55); -lean_ctor_set(x_56, 3, x_52); -lean_ctor_set(x_21, 4, x_56); -x_57 = lean_st_ref_set(x_4, x_21, x_23); -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); +uint8_t x_55; +x_55 = 0; +x_22 = x_55; +goto block_30; +} +else +{ +if (x_52 == 0) +{ +uint8_t x_56; +x_56 = 0; +x_22 = x_56; +goto block_30; +} +else +{ +uint8_t x_57; +x_57 = 1; +x_22 = x_57; +goto block_30; +} +} } -x_60 = lean_box(0); -if (lean_is_scalar(x_59)) { - x_61 = lean_alloc_ctor(0, 2, 0); -} else { - x_61 = x_59; } -lean_ctor_set(x_61, 0, x_60); -lean_ctor_set(x_61, 1, x_58); -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; -x_62 = lean_ctor_get(x_53, 0); -lean_inc(x_62); -lean_dec(x_53); -x_63 = lean_unsigned_to_nat(1u); -x_64 = lean_nat_add(x_62, x_63); -lean_dec(x_62); -x_65 = l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(x_51, x_1, x_64); -x_66 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_66, 0, x_49); -lean_ctor_set(x_66, 1, x_50); -lean_ctor_set(x_66, 2, x_65); -lean_ctor_set(x_66, 3, x_52); -lean_ctor_set(x_21, 4, x_66); -x_67 = lean_st_ref_set(x_4, x_21, x_23); -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); -if (lean_is_exclusive(x_67)) { - lean_ctor_release(x_67, 0); - lean_ctor_release(x_67, 1); - x_69 = x_67; -} else { - lean_dec_ref(x_67); - x_69 = lean_box(0); +lean_object* x_58; lean_object* x_59; uint8_t x_60; +x_58 = l_Lean_Meta_Origin_key(x_4); +x_59 = l_Lean_Meta_Origin_key(x_19); +x_60 = lean_name_eq(x_58, x_59); +lean_dec(x_59); +lean_dec(x_58); +x_22 = x_60; +goto block_30; } -x_70 = lean_box(0); -if (lean_is_scalar(x_69)) { - x_71 = lean_alloc_ctor(0, 2, 0); -} else { - x_71 = x_69; } -lean_ctor_set(x_71, 0, x_70); -lean_ctor_set(x_71, 1, x_68); -return x_71; +else +{ +uint8_t x_61; +x_61 = lean_ctor_get_uint8(x_4, sizeof(void*)*1 + 1); +if (x_61 == 0) +{ +if (lean_obj_tag(x_19) == 0) +{ +uint8_t x_62; +x_62 = lean_ctor_get_uint8(x_19, sizeof(void*)*1); +if (x_62 == 0) +{ +lean_object* x_63; lean_object* x_64; uint8_t x_65; uint8_t x_66; +x_63 = lean_ctor_get(x_4, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_19, 0); +lean_inc(x_64); +x_65 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +x_66 = lean_name_eq(x_63, x_64); +lean_dec(x_64); +lean_dec(x_63); +if (x_66 == 0) +{ +uint8_t x_67; +x_67 = 0; +x_22 = x_67; +goto block_30; +} +else +{ +if (x_65 == 0) +{ +uint8_t x_68; +x_68 = 1; +x_22 = x_68; +goto block_30; +} +else +{ +uint8_t x_69; +x_69 = 0; +x_22 = x_69; +goto block_30; } } } else { -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_72 = lean_ctor_get(x_21, 0); -x_73 = lean_ctor_get(x_21, 1); -x_74 = lean_ctor_get(x_21, 2); -x_75 = lean_ctor_get(x_21, 3); -lean_inc(x_75); -lean_inc(x_74); -lean_inc(x_73); +uint8_t x_70; +x_70 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +if (x_70 == 0) +{ +lean_object* x_71; lean_object* x_72; uint8_t x_73; +x_71 = lean_ctor_get(x_4, 0); +lean_inc(x_71); +x_72 = lean_ctor_get(x_19, 0); lean_inc(x_72); -lean_dec(x_21); -x_76 = lean_ctor_get(x_22, 0); -lean_inc(x_76); -x_77 = lean_ctor_get(x_22, 1); -lean_inc(x_77); -x_78 = lean_ctor_get(x_22, 2); -lean_inc(x_78); -x_79 = lean_ctor_get(x_22, 3); -lean_inc(x_79); -if (lean_is_exclusive(x_22)) { - lean_ctor_release(x_22, 0); - lean_ctor_release(x_22, 1); - lean_ctor_release(x_22, 2); - lean_ctor_release(x_22, 3); - x_80 = x_22; -} else { - lean_dec_ref(x_22); - x_80 = lean_box(0); +x_73 = lean_name_eq(x_71, x_72); +lean_dec(x_72); +lean_dec(x_71); +if (x_73 == 0) +{ +uint8_t x_74; +x_74 = 0; +x_22 = x_74; +goto block_30; } -lean_inc(x_1); -lean_inc(x_78); -x_81 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Kernel_Diagnostics_recordUnfold___spec__1(x_78, x_1); -if (lean_obj_tag(x_81) == 0) +else { -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; -x_82 = lean_unsigned_to_nat(1u); -x_83 = l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(x_78, x_1, x_82); -if (lean_is_scalar(x_80)) { - x_84 = lean_alloc_ctor(0, 4, 0); -} else { - x_84 = x_80; +uint8_t x_75; +x_75 = 1; +x_22 = x_75; +goto block_30; } -lean_ctor_set(x_84, 0, x_76); -lean_ctor_set(x_84, 1, x_77); -lean_ctor_set(x_84, 2, x_83); -lean_ctor_set(x_84, 3, x_79); -x_85 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_85, 0, x_72); -lean_ctor_set(x_85, 1, x_73); -lean_ctor_set(x_85, 2, x_74); -lean_ctor_set(x_85, 3, x_75); -lean_ctor_set(x_85, 4, x_84); -x_86 = lean_st_ref_set(x_4, x_85, x_23); -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_86); - x_88 = lean_box(0); } -x_89 = lean_box(0); -if (lean_is_scalar(x_88)) { - x_90 = lean_alloc_ctor(0, 2, 0); -} else { - x_90 = x_88; +else +{ +uint8_t x_76; +x_76 = 0; +x_22 = x_76; +goto block_30; +} } -lean_ctor_set(x_90, 0, x_89); -lean_ctor_set(x_90, 1, x_87); -return x_90; } else { -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_91 = lean_ctor_get(x_81, 0); -lean_inc(x_91); -lean_dec(x_81); -x_92 = lean_unsigned_to_nat(1u); -x_93 = lean_nat_add(x_91, x_92); -lean_dec(x_91); -x_94 = l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(x_78, x_1, x_93); -if (lean_is_scalar(x_80)) { - x_95 = lean_alloc_ctor(0, 4, 0); -} else { - x_95 = x_80; -} -lean_ctor_set(x_95, 0, x_76); -lean_ctor_set(x_95, 1, x_77); -lean_ctor_set(x_95, 2, x_94); -lean_ctor_set(x_95, 3, x_79); -x_96 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_96, 0, x_72); -lean_ctor_set(x_96, 1, x_73); -lean_ctor_set(x_96, 2, x_74); -lean_ctor_set(x_96, 3, x_75); -lean_ctor_set(x_96, 4, x_95); -x_97 = lean_st_ref_set(x_4, x_96, x_23); -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); +uint8_t x_77; +x_77 = 0; +x_22 = x_77; +goto block_30; } -x_100 = lean_box(0); -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 +{ +if (lean_obj_tag(x_19) == 0) +{ +uint8_t x_78; +x_78 = lean_ctor_get_uint8(x_19, sizeof(void*)*1); +if (x_78 == 0) +{ +lean_object* x_79; lean_object* x_80; uint8_t x_81; uint8_t x_82; +x_79 = lean_ctor_get(x_4, 0); +lean_inc(x_79); +x_80 = lean_ctor_get(x_19, 0); +lean_inc(x_80); +x_81 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +x_82 = lean_name_eq(x_79, x_80); +lean_dec(x_80); +lean_dec(x_79); +if (x_82 == 0) +{ +uint8_t x_83; +x_83 = 0; +x_22 = x_83; +goto block_30; } +else +{ +if (x_81 == 0) +{ +uint8_t x_84; +x_84 = 0; +x_22 = x_84; +goto block_30; } +else +{ +uint8_t x_85; +x_85 = 1; +x_22 = x_85; +goto block_30; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordCongrTheorem___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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: +else { -lean_object* x_10; -x_10 = l_Lean_Meta_Simp_recordCongrTheorem(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 uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__3(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4) { -_start: +uint8_t x_86; +x_86 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +if (x_86 == 0) { -uint8_t x_5; -x_5 = lean_usize_dec_eq(x_3, x_4); -if (x_5 == 0) +uint8_t x_87; +x_87 = 0; +x_22 = x_87; +goto block_30; +} +else { -lean_object* x_6; uint8_t x_7; -x_6 = lean_array_uget(x_2, x_3); -x_7 = l_Lean_PersistentArray_anyMAux___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__2(x_1, x_6); -if (x_7 == 0) +lean_object* x_88; lean_object* x_89; uint8_t x_90; +x_88 = lean_ctor_get(x_4, 0); +lean_inc(x_88); +x_89 = lean_ctor_get(x_19, 0); +lean_inc(x_89); +x_90 = lean_name_eq(x_88, x_89); +lean_dec(x_89); +lean_dec(x_88); +if (x_90 == 0) { -size_t x_8; size_t x_9; -x_8 = 1; -x_9 = lean_usize_add(x_3, x_8); -x_3 = x_9; -goto _start; +uint8_t x_91; +x_91 = 0; +x_22 = x_91; +goto block_30; } else { -uint8_t x_11; -x_11 = 1; -return x_11; +uint8_t x_92; +x_92 = 1; +x_22 = x_92; +goto block_30; +} +} } } else { -uint8_t x_12; -x_12 = 0; -return x_12; +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; uint8_t x_97; +x_93 = lean_ctor_get(x_4, 0); +lean_inc(x_93); +x_94 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_94, 0, x_93); +lean_ctor_set_uint8(x_94, sizeof(void*)*1, x_61); +lean_ctor_set_uint8(x_94, sizeof(void*)*1 + 1, x_61); +x_95 = l_Lean_Meta_Origin_key(x_94); +lean_dec(x_94); +x_96 = l_Lean_Meta_Origin_key(x_19); +x_97 = lean_name_eq(x_95, x_96); +lean_dec(x_96); +lean_dec(x_95); +x_22 = x_97; +goto block_30; } } } -LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__4(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4) { -_start: +} +else { -uint8_t x_5; -x_5 = lean_usize_dec_eq(x_3, x_4); -if (x_5 == 0) +if (lean_obj_tag(x_19) == 0) { -lean_object* x_6; size_t x_7; size_t x_8; uint8_t x_9; -x_6 = lean_array_uget(x_2, x_3); -x_7 = lean_ptr_addr(x_1); -x_8 = lean_ptr_addr(x_6); -lean_dec(x_6); -x_9 = lean_usize_dec_eq(x_7, x_8); -if (x_9 == 0) +uint8_t x_98; +x_98 = lean_ctor_get_uint8(x_19, sizeof(void*)*1); +if (x_98 == 0) { -size_t x_10; size_t x_11; -x_10 = 1; -x_11 = lean_usize_add(x_3, x_10); -x_3 = x_11; -goto _start; +lean_object* x_99; lean_object* x_100; uint8_t x_101; +x_99 = l_Lean_Meta_Origin_key(x_4); +x_100 = l_Lean_Meta_Origin_key(x_19); +x_101 = lean_name_eq(x_99, x_100); +lean_dec(x_100); +lean_dec(x_99); +x_22 = x_101; +goto block_30; } else { -uint8_t x_13; -x_13 = 1; -return x_13; -} +uint8_t x_102; +x_102 = lean_ctor_get_uint8(x_19, sizeof(void*)*1 + 1); +if (x_102 == 0) +{ +uint8_t x_103; +x_103 = 0; +x_22 = x_103; +goto block_30; } else { -uint8_t x_14; -x_14 = 0; -return x_14; +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; uint8_t x_108; +x_104 = lean_ctor_get(x_19, 0); +lean_inc(x_104); +x_105 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_105, 0, x_104); +lean_ctor_set_uint8(x_105, sizeof(void*)*1, x_102); +lean_ctor_set_uint8(x_105, sizeof(void*)*1 + 1, x_102); +x_106 = l_Lean_Meta_Origin_key(x_4); +x_107 = l_Lean_Meta_Origin_key(x_105); +lean_dec(x_105); +x_108 = lean_name_eq(x_106, x_107); +lean_dec(x_107); +lean_dec(x_106); +x_22 = x_108; +goto block_30; } } } -LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyMAux___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__2(lean_object* x_1, lean_object* x_2) { -_start: +else { -if (lean_obj_tag(x_2) == 0) +lean_object* x_109; lean_object* x_110; uint8_t x_111; +x_109 = l_Lean_Meta_Origin_key(x_4); +x_110 = l_Lean_Meta_Origin_key(x_19); +x_111 = lean_name_eq(x_109, x_110); +lean_dec(x_110); +lean_dec(x_109); +x_22 = x_111; +goto block_30; +} +} +block_30: { -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); -lean_dec(x_2); -x_4 = lean_array_get_size(x_3); -x_5 = lean_unsigned_to_nat(0u); -x_6 = lean_nat_dec_lt(x_5, x_4); -if (x_6 == 0) +if (x_22 == 0) { -uint8_t x_7; -lean_dec(x_4); -lean_dec(x_3); -x_7 = 0; -return x_7; +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_21); +x_23 = l_Lean_PersistentHashMap_mkCollisionNode___rarg(x_19, x_20, x_4, x_5); +x_24 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_24, 0, x_23); +x_25 = lean_array_fset(x_18, x_12, x_24); +lean_dec(x_12); +if (lean_is_scalar(x_7)) { + x_26 = lean_alloc_ctor(0, 1, 0); +} else { + x_26 = x_7; +} +lean_ctor_set(x_26, 0, x_25); +return x_26; } else { -size_t x_8; size_t x_9; uint8_t x_10; -x_8 = 0; -x_9 = lean_usize_of_nat(x_4); -lean_dec(x_4); -x_10 = l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__3(x_1, x_3, x_8, x_9); -lean_dec(x_3); -return x_10; +lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_20); +lean_dec(x_19); +if (lean_is_scalar(x_21)) { + x_27 = lean_alloc_ctor(0, 2, 0); +} else { + x_27 = x_21; } +lean_ctor_set(x_27, 0, x_4); +lean_ctor_set(x_27, 1, x_5); +x_28 = lean_array_fset(x_18, x_12, x_27); +lean_dec(x_12); +if (lean_is_scalar(x_7)) { + x_29 = lean_alloc_ctor(0, 1, 0); +} else { + x_29 = x_7; } -else +lean_ctor_set(x_29, 0, x_28); +return x_29; +} +} +} +case 1: { -lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_11 = lean_ctor_get(x_2, 0); -lean_inc(x_11); -lean_dec(x_2); -x_12 = lean_array_get_size(x_11); -x_13 = lean_unsigned_to_nat(0u); -x_14 = lean_nat_dec_lt(x_13, x_12); -if (x_14 == 0) +uint8_t x_112; +x_112 = !lean_is_exclusive(x_16); +if (x_112 == 0) { -uint8_t x_15; +lean_object* x_113; size_t x_114; size_t x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; +x_113 = lean_ctor_get(x_16, 0); +x_114 = lean_usize_shift_right(x_2, x_9); +x_115 = lean_usize_add(x_3, x_8); +x_116 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_113, x_114, x_115, x_4, x_5); +lean_ctor_set(x_16, 0, x_116); +x_117 = lean_array_fset(x_18, x_12, x_16); lean_dec(x_12); -lean_dec(x_11); -x_15 = 0; -return x_15; +if (lean_is_scalar(x_7)) { + x_118 = lean_alloc_ctor(0, 1, 0); +} else { + x_118 = x_7; +} +lean_ctor_set(x_118, 0, x_117); +return x_118; } else { -size_t x_16; size_t x_17; uint8_t x_18; -x_16 = 0; -x_17 = lean_usize_of_nat(x_12); +lean_object* x_119; size_t x_120; size_t x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; +x_119 = lean_ctor_get(x_16, 0); +lean_inc(x_119); +lean_dec(x_16); +x_120 = lean_usize_shift_right(x_2, x_9); +x_121 = lean_usize_add(x_3, x_8); +x_122 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_119, x_120, x_121, x_4, x_5); +x_123 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_123, 0, x_122); +x_124 = lean_array_fset(x_18, x_12, x_123); lean_dec(x_12); -x_18 = l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__4(x_1, x_11, x_16, x_17); -lean_dec(x_11); -return x_18; +if (lean_is_scalar(x_7)) { + x_125 = lean_alloc_ctor(0, 1, 0); +} else { + x_125 = x_7; +} +lean_ctor_set(x_125, 0, x_124); +return x_125; } } +default: +{ +lean_object* x_126; lean_object* x_127; lean_object* x_128; +x_126 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_126, 0, x_4); +lean_ctor_set(x_126, 1, x_5); +x_127 = lean_array_fset(x_18, x_12, x_126); +lean_dec(x_12); +if (lean_is_scalar(x_7)) { + x_128 = lean_alloc_ctor(0, 1, 0); +} else { + x_128 = x_7; } +lean_ctor_set(x_128, 0, x_127); +return x_128; } -LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__5(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4) { -_start: +} +} +} +else { -uint8_t x_5; -x_5 = lean_usize_dec_eq(x_3, x_4); -if (x_5 == 0) +uint8_t x_129; +x_129 = !lean_is_exclusive(x_1); +if (x_129 == 0) { -lean_object* x_6; size_t x_7; size_t x_8; uint8_t x_9; -x_6 = lean_array_uget(x_2, x_3); -x_7 = lean_ptr_addr(x_1); -x_8 = lean_ptr_addr(x_6); -lean_dec(x_6); -x_9 = lean_usize_dec_eq(x_7, x_8); -if (x_9 == 0) +lean_object* x_130; lean_object* x_131; size_t x_132; uint8_t x_133; +x_130 = lean_unsigned_to_nat(0u); +x_131 = l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__7(x_1, x_130, x_4, x_5); +x_132 = 7; +x_133 = lean_usize_dec_le(x_132, x_3); +if (x_133 == 0) { -size_t x_10; size_t x_11; -x_10 = 1; -x_11 = lean_usize_add(x_3, x_10); -x_3 = x_11; -goto _start; +lean_object* x_134; lean_object* x_135; uint8_t x_136; +x_134 = l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(x_131); +x_135 = lean_unsigned_to_nat(4u); +x_136 = lean_nat_dec_lt(x_134, x_135); +lean_dec(x_134); +if (x_136 == 0) +{ +lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; +x_137 = lean_ctor_get(x_131, 0); +lean_inc(x_137); +x_138 = lean_ctor_get(x_131, 1); +lean_inc(x_138); +lean_dec(x_131); +x_139 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5___closed__1; +x_140 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__6(x_3, x_137, x_138, lean_box(0), x_130, x_139); +lean_dec(x_138); +lean_dec(x_137); +return x_140; } else { -uint8_t x_13; -x_13 = 1; -return x_13; +return x_131; } } else { -uint8_t x_14; -x_14 = 0; -return x_14; -} +return x_131; } } -LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyM___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__1(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; uint8_t x_4; -x_3 = lean_ctor_get(x_2, 0); -lean_inc(x_3); -x_4 = l_Lean_PersistentArray_anyMAux___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__2(x_1, x_3); -if (x_4 == 0) +else { -lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; -x_5 = lean_ctor_get(x_2, 1); -lean_inc(x_5); -lean_dec(x_2); -x_6 = lean_array_get_size(x_5); -x_7 = lean_unsigned_to_nat(0u); -x_8 = lean_nat_dec_lt(x_7, x_6); -if (x_8 == 0) +lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; size_t x_146; uint8_t x_147; +x_141 = lean_ctor_get(x_1, 0); +x_142 = lean_ctor_get(x_1, 1); +lean_inc(x_142); +lean_inc(x_141); +lean_dec(x_1); +x_143 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_143, 0, x_141); +lean_ctor_set(x_143, 1, x_142); +x_144 = lean_unsigned_to_nat(0u); +x_145 = l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__7(x_143, x_144, x_4, x_5); +x_146 = 7; +x_147 = lean_usize_dec_le(x_146, x_3); +if (x_147 == 0) +{ +lean_object* x_148; lean_object* x_149; uint8_t x_150; +x_148 = l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(x_145); +x_149 = lean_unsigned_to_nat(4u); +x_150 = lean_nat_dec_lt(x_148, x_149); +lean_dec(x_148); +if (x_150 == 0) { -uint8_t x_9; -lean_dec(x_6); -lean_dec(x_5); -x_9 = 0; -return x_9; +lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; +x_151 = lean_ctor_get(x_145, 0); +lean_inc(x_151); +x_152 = lean_ctor_get(x_145, 1); +lean_inc(x_152); +lean_dec(x_145); +x_153 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5___closed__1; +x_154 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__6(x_3, x_151, x_152, lean_box(0), x_144, x_153); +lean_dec(x_152); +lean_dec(x_151); +return x_154; } else { -size_t x_10; size_t x_11; uint8_t x_12; -x_10 = 0; -x_11 = lean_usize_of_nat(x_6); -lean_dec(x_6); -x_12 = l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__5(x_1, x_5, x_10, x_11); -lean_dec(x_5); -return x_12; +return x_145; } } else { -lean_dec(x_2); -return x_4; +return x_145; } } } -LEAN_EXPORT uint8_t l_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; uint8_t x_4; -x_3 = lean_ctor_get(x_2, 3); -lean_inc(x_3); -lean_dec(x_2); -x_4 = l_Lean_PersistentArray_anyM___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__1(x_1, x_3); -return x_4; } } -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _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_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__3(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; -} +uint8_t x_4; +x_4 = !lean_is_exclusive(x_1); +if (x_4 == 0) +{ +lean_object* x_5; lean_object* x_6; size_t x_7; lean_object* x_8; lean_object* x_9; +x_5 = lean_ctor_get(x_1, 0); +x_6 = lean_ctor_get(x_1, 1); +x_7 = 1; +x_8 = lean_unsigned_to_nat(1u); +x_9 = lean_nat_add(x_6, x_8); +lean_dec(x_6); +if (lean_obj_tag(x_2) == 0) +{ +uint8_t x_10; +x_10 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_10 == 0) +{ +lean_object* x_11; uint64_t x_12; uint64_t x_13; uint64_t x_14; size_t x_15; lean_object* x_16; +x_11 = lean_ctor_get(x_2, 0); +lean_inc(x_11); +x_12 = l_Lean_Name_hash___override(x_11); +lean_dec(x_11); +x_13 = 13; +x_14 = lean_uint64_mix_hash(x_12, x_13); +x_15 = lean_uint64_to_usize(x_14); +x_16 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_5, x_15, x_7, x_2, x_3); +lean_ctor_set(x_1, 1, x_9); +lean_ctor_set(x_1, 0, x_16); +return x_1; } -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: +else { -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_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__4(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_object* x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; size_t x_21; lean_object* x_22; +x_17 = lean_ctor_get(x_2, 0); +lean_inc(x_17); +x_18 = l_Lean_Name_hash___override(x_17); +lean_dec(x_17); +x_19 = 11; +x_20 = lean_uint64_mix_hash(x_18, x_19); +x_21 = lean_uint64_to_usize(x_20); +x_22 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_5, x_21, x_7, x_2, x_3); +lean_ctor_set(x_1, 1, x_9); +lean_ctor_set(x_1, 0, x_22); +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__2___boxed(lean_object* x_1, lean_object* x_2) { -_start: +else { -uint8_t x_3; lean_object* x_4; -x_3 = l_Lean_PersistentArray_anyMAux___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__2(x_1, x_2); -lean_dec(x_1); -x_4 = lean_box(x_3); -return x_4; +lean_object* x_23; uint64_t x_24; size_t x_25; lean_object* x_26; +x_23 = l_Lean_Meta_Origin_key(x_2); +x_24 = l_Lean_Name_hash___override(x_23); +lean_dec(x_23); +x_25 = lean_uint64_to_usize(x_24); +x_26 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_5, x_25, x_7, x_2, x_3); +lean_ctor_set(x_1, 1, x_9); +lean_ctor_set(x_1, 0, x_26); +return x_1; } } -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: +else { -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_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__5(x_1, x_2, x_5, x_6); -lean_dec(x_2); +lean_object* x_27; lean_object* x_28; size_t x_29; lean_object* x_30; lean_object* x_31; +x_27 = lean_ctor_get(x_1, 0); +x_28 = lean_ctor_get(x_1, 1); +lean_inc(x_28); +lean_inc(x_27); lean_dec(x_1); -x_8 = lean_box(x_7); -return x_8; -} +x_29 = 1; +x_30 = lean_unsigned_to_nat(1u); +x_31 = lean_nat_add(x_28, x_30); +lean_dec(x_28); +if (lean_obj_tag(x_2) == 0) +{ +uint8_t x_32; +x_32 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_32 == 0) +{ +lean_object* x_33; uint64_t x_34; uint64_t x_35; uint64_t x_36; size_t x_37; lean_object* x_38; lean_object* x_39; +x_33 = lean_ctor_get(x_2, 0); +lean_inc(x_33); +x_34 = l_Lean_Name_hash___override(x_33); +lean_dec(x_33); +x_35 = 13; +x_36 = lean_uint64_mix_hash(x_34, x_35); +x_37 = lean_uint64_to_usize(x_36); +x_38 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_27, x_37, x_29, x_2, x_3); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_38); +lean_ctor_set(x_39, 1, x_31); +return x_39; } -LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyM___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__1___boxed(lean_object* x_1, lean_object* x_2) { -_start: +else { -uint8_t x_3; lean_object* x_4; -x_3 = l_Lean_PersistentArray_anyM___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__1(x_1, x_2); -lean_dec(x_1); -x_4 = lean_box(x_3); -return x_4; +lean_object* x_40; uint64_t x_41; uint64_t x_42; uint64_t x_43; size_t x_44; lean_object* x_45; lean_object* x_46; +x_40 = lean_ctor_get(x_2, 0); +lean_inc(x_40); +x_41 = l_Lean_Name_hash___override(x_40); +lean_dec(x_40); +x_42 = 11; +x_43 = lean_uint64_mix_hash(x_41, x_42); +x_44 = lean_uint64_to_usize(x_43); +x_45 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_27, x_44, x_29, x_2, x_3); +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_45); +lean_ctor_set(x_46, 1, x_31); +return x_46; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___boxed(lean_object* x_1, lean_object* x_2) { -_start: +else { -uint8_t x_3; lean_object* x_4; -x_3 = l_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1(x_1, x_2); -lean_dec(x_1); -x_4 = lean_box(x_3); -return x_4; +lean_object* x_47; uint64_t x_48; size_t x_49; lean_object* x_50; lean_object* x_51; +x_47 = l_Lean_Meta_Origin_key(x_2); +x_48 = l_Lean_Name_hash___override(x_47); +lean_dec(x_47); +x_49 = lean_uint64_to_usize(x_48); +x_50 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_27, x_49, x_29, x_2, x_3); +x_51 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_51, 0, x_50); +lean_ctor_set(x_51, 1, x_31); +return x_51; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordTheoremWithBadKeys(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_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_Simp_recordTriedSimpTheorem(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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; @@ -7943,1469 +8001,4023 @@ return x_18; } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; +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_19 = lean_ctor_get(x_10, 1); lean_inc(x_19); lean_dec(x_10); x_20 = lean_st_ref_take(x_4, x_19); x_21 = lean_ctor_get(x_20, 0); lean_inc(x_21); -x_22 = lean_ctor_get(x_20, 1); +x_22 = lean_ctor_get(x_21, 4); lean_inc(x_22); +x_23 = lean_ctor_get(x_20, 1); +lean_inc(x_23); lean_dec(x_20); -x_23 = !lean_is_exclusive(x_21); -if (x_23 == 0) -{ -lean_object* x_24; uint8_t x_25; -x_24 = lean_ctor_get(x_21, 4); -lean_inc(x_24); -x_25 = l_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1(x_1, x_24); -if (x_25 == 0) +x_24 = !lean_is_exclusive(x_21); +if (x_24 == 0) { -uint8_t x_26; -x_26 = !lean_is_exclusive(x_24); +lean_object* x_25; uint8_t x_26; +x_25 = lean_ctor_get(x_21, 4); +lean_dec(x_25); +x_26 = !lean_is_exclusive(x_22); if (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_24, 3); -x_28 = l_Lean_PersistentArray_push___rarg(x_27, x_1); -lean_ctor_set(x_24, 3, x_28); -x_29 = lean_st_ref_set(x_4, x_21, x_22); -x_30 = !lean_is_exclusive(x_29); -if (x_30 == 0) +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_22, 1); +lean_inc(x_1); +lean_inc(x_27); +x_28 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(x_27, x_1); +if (lean_obj_tag(x_28) == 0) { -lean_object* x_31; lean_object* x_32; -x_31 = lean_ctor_get(x_29, 0); -lean_dec(x_31); -x_32 = lean_box(0); -lean_ctor_set(x_29, 0, x_32); -return x_29; +lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_29 = lean_unsigned_to_nat(1u); +x_30 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_27, x_1, x_29); +lean_ctor_set(x_22, 1, x_30); +x_31 = lean_st_ref_set(x_4, x_21, x_23); +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_33; lean_object* x_34; lean_object* x_35; -x_33 = lean_ctor_get(x_29, 1); -lean_inc(x_33); -lean_dec(x_29); -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_33); -return x_35; +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 { -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; -x_36 = lean_ctor_get(x_24, 0); -x_37 = lean_ctor_get(x_24, 1); -x_38 = lean_ctor_get(x_24, 2); -x_39 = lean_ctor_get(x_24, 3); -lean_inc(x_39); +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_28, 0); lean_inc(x_38); -lean_inc(x_37); -lean_inc(x_36); -lean_dec(x_24); -x_40 = l_Lean_PersistentArray_push___rarg(x_39, x_1); -x_41 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_41, 0, x_36); -lean_ctor_set(x_41, 1, x_37); -lean_ctor_set(x_41, 2, x_38); -lean_ctor_set(x_41, 3, x_40); -lean_ctor_set(x_21, 4, x_41); -x_42 = lean_st_ref_set(x_4, x_21, x_22); -x_43 = lean_ctor_get(x_42, 1); -lean_inc(x_43); -if (lean_is_exclusive(x_42)) { - lean_ctor_release(x_42, 0); - lean_ctor_release(x_42, 1); - x_44 = x_42; -} else { - lean_dec_ref(x_42); - x_44 = lean_box(0); -} +lean_dec(x_28); +x_39 = lean_unsigned_to_nat(1u); +x_40 = lean_nat_add(x_38, x_39); +lean_dec(x_38); +x_41 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_27, x_1, x_40); +lean_ctor_set(x_22, 1, x_41); +x_42 = lean_st_ref_set(x_4, x_21, x_23); +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); -if (lean_is_scalar(x_44)) { - x_46 = lean_alloc_ctor(0, 2, 0); -} else { - x_46 = x_44; -} -lean_ctor_set(x_46, 0, x_45); -lean_ctor_set(x_46, 1, x_43); -return x_46; -} +lean_ctor_set(x_42, 0, x_45); +return x_42; } else { -lean_object* x_47; uint8_t x_48; -lean_dec(x_1); -x_47 = lean_st_ref_set(x_4, x_21, x_22); -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(0); -lean_ctor_set(x_47, 0, x_50); -return x_47; +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_51; lean_object* x_52; lean_object* x_53; -x_51 = lean_ctor_get(x_47, 1); +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_22, 0); +x_50 = lean_ctor_get(x_22, 1); +x_51 = lean_ctor_get(x_22, 2); +x_52 = lean_ctor_get(x_22, 3); +lean_inc(x_52); 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; +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_22); +lean_inc(x_1); +lean_inc(x_50); +x_53 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(x_50, x_1); +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; +x_54 = lean_unsigned_to_nat(1u); +x_55 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_50, x_1, x_54); +x_56 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_56, 0, x_49); +lean_ctor_set(x_56, 1, x_55); +lean_ctor_set(x_56, 2, x_51); +lean_ctor_set(x_56, 3, x_52); +lean_ctor_set(x_21, 4, x_56); +x_57 = lean_st_ref_set(x_4, x_21, x_23); +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); } +x_60 = lean_box(0); +if (lean_is_scalar(x_59)) { + x_61 = lean_alloc_ctor(0, 2, 0); +} else { + x_61 = x_59; } +lean_ctor_set(x_61, 0, x_60); +lean_ctor_set(x_61, 1, x_58); +return x_61; } else { -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_21, 0); -x_55 = lean_ctor_get(x_21, 1); -x_56 = lean_ctor_get(x_21, 2); -x_57 = lean_ctor_get(x_21, 3); -x_58 = lean_ctor_get(x_21, 4); -lean_inc(x_58); -lean_inc(x_57); -lean_inc(x_56); -lean_inc(x_55); -lean_inc(x_54); -lean_dec(x_21); -lean_inc(x_58); -x_59 = l_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1(x_1, x_58); -if (x_59 == 0) -{ -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_60 = lean_ctor_get(x_58, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_58, 1); -lean_inc(x_61); -x_62 = lean_ctor_get(x_58, 2); +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_62 = lean_ctor_get(x_53, 0); lean_inc(x_62); -x_63 = lean_ctor_get(x_58, 3); -lean_inc(x_63); -if (lean_is_exclusive(x_58)) { - lean_ctor_release(x_58, 0); - lean_ctor_release(x_58, 1); - lean_ctor_release(x_58, 2); - lean_ctor_release(x_58, 3); - x_64 = x_58; +lean_dec(x_53); +x_63 = lean_unsigned_to_nat(1u); +x_64 = lean_nat_add(x_62, x_63); +lean_dec(x_62); +x_65 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_50, x_1, x_64); +x_66 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_66, 0, x_49); +lean_ctor_set(x_66, 1, x_65); +lean_ctor_set(x_66, 2, x_51); +lean_ctor_set(x_66, 3, x_52); +lean_ctor_set(x_21, 4, x_66); +x_67 = lean_st_ref_set(x_4, x_21, x_23); +x_68 = lean_ctor_get(x_67, 1); +lean_inc(x_68); +if (lean_is_exclusive(x_67)) { + lean_ctor_release(x_67, 0); + lean_ctor_release(x_67, 1); + x_69 = x_67; } else { - lean_dec_ref(x_58); - x_64 = lean_box(0); + lean_dec_ref(x_67); + x_69 = lean_box(0); } -x_65 = l_Lean_PersistentArray_push___rarg(x_63, x_1); -if (lean_is_scalar(x_64)) { - x_66 = lean_alloc_ctor(0, 4, 0); +x_70 = lean_box(0); +if (lean_is_scalar(x_69)) { + x_71 = lean_alloc_ctor(0, 2, 0); } else { - x_66 = x_64; + x_71 = x_69; } -lean_ctor_set(x_66, 0, x_60); -lean_ctor_set(x_66, 1, x_61); -lean_ctor_set(x_66, 2, x_62); -lean_ctor_set(x_66, 3, x_65); -x_67 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_67, 0, x_54); -lean_ctor_set(x_67, 1, x_55); -lean_ctor_set(x_67, 2, x_56); -lean_ctor_set(x_67, 3, x_57); -lean_ctor_set(x_67, 4, x_66); -x_68 = lean_st_ref_set(x_4, x_67, x_22); -x_69 = lean_ctor_get(x_68, 1); -lean_inc(x_69); -if (lean_is_exclusive(x_68)) { - lean_ctor_release(x_68, 0); - lean_ctor_release(x_68, 1); - x_70 = x_68; -} else { - lean_dec_ref(x_68); - x_70 = lean_box(0); +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_71, 1, x_68); +return x_71; } -x_71 = lean_box(0); -if (lean_is_scalar(x_70)) { - x_72 = lean_alloc_ctor(0, 2, 0); -} else { - x_72 = x_70; } -lean_ctor_set(x_72, 0, x_71); -lean_ctor_set(x_72, 1, x_69); -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; -lean_dec(x_1); -x_73 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_73, 0, x_54); -lean_ctor_set(x_73, 1, x_55); -lean_ctor_set(x_73, 2, x_56); -lean_ctor_set(x_73, 3, x_57); -lean_ctor_set(x_73, 4, x_58); -x_74 = lean_st_ref_set(x_4, x_73, x_22); -x_75 = lean_ctor_get(x_74, 1); +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_72 = lean_ctor_get(x_21, 0); +x_73 = lean_ctor_get(x_21, 1); +x_74 = lean_ctor_get(x_21, 2); +x_75 = lean_ctor_get(x_21, 3); lean_inc(x_75); -if (lean_is_exclusive(x_74)) { - lean_ctor_release(x_74, 0); - lean_ctor_release(x_74, 1); - x_76 = x_74; +lean_inc(x_74); +lean_inc(x_73); +lean_inc(x_72); +lean_dec(x_21); +x_76 = lean_ctor_get(x_22, 0); +lean_inc(x_76); +x_77 = lean_ctor_get(x_22, 1); +lean_inc(x_77); +x_78 = lean_ctor_get(x_22, 2); +lean_inc(x_78); +x_79 = lean_ctor_get(x_22, 3); +lean_inc(x_79); +if (lean_is_exclusive(x_22)) { + lean_ctor_release(x_22, 0); + lean_ctor_release(x_22, 1); + lean_ctor_release(x_22, 2); + lean_ctor_release(x_22, 3); + x_80 = x_22; } else { - lean_dec_ref(x_74); - x_76 = lean_box(0); + lean_dec_ref(x_22); + x_80 = lean_box(0); } -x_77 = lean_box(0); -if (lean_is_scalar(x_76)) { - x_78 = lean_alloc_ctor(0, 2, 0); +lean_inc(x_1); +lean_inc(x_77); +x_81 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(x_77, x_1); +if (lean_obj_tag(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; +x_82 = lean_unsigned_to_nat(1u); +x_83 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_77, x_1, x_82); +if (lean_is_scalar(x_80)) { + x_84 = lean_alloc_ctor(0, 4, 0); } else { - x_78 = x_76; + x_84 = x_80; } -lean_ctor_set(x_78, 0, x_77); -lean_ctor_set(x_78, 1, x_75); -return x_78; +lean_ctor_set(x_84, 0, x_76); +lean_ctor_set(x_84, 1, x_83); +lean_ctor_set(x_84, 2, x_78); +lean_ctor_set(x_84, 3, x_79); +x_85 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_85, 0, x_72); +lean_ctor_set(x_85, 1, x_73); +lean_ctor_set(x_85, 2, x_74); +lean_ctor_set(x_85, 3, x_75); +lean_ctor_set(x_85, 4, x_84); +x_86 = lean_st_ref_set(x_4, x_85, x_23); +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_86); + x_88 = lean_box(0); +} +x_89 = lean_box(0); +if (lean_is_scalar(x_88)) { + x_90 = lean_alloc_ctor(0, 2, 0); +} else { + x_90 = x_88; +} +lean_ctor_set(x_90, 0, x_89); +lean_ctor_set(x_90, 1, x_87); +return x_90; +} +else +{ +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_91 = lean_ctor_get(x_81, 0); +lean_inc(x_91); +lean_dec(x_81); +x_92 = lean_unsigned_to_nat(1u); +x_93 = lean_nat_add(x_91, x_92); +lean_dec(x_91); +x_94 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_77, x_1, x_93); +if (lean_is_scalar(x_80)) { + x_95 = lean_alloc_ctor(0, 4, 0); +} else { + x_95 = x_80; +} +lean_ctor_set(x_95, 0, x_76); +lean_ctor_set(x_95, 1, x_94); +lean_ctor_set(x_95, 2, x_78); +lean_ctor_set(x_95, 3, x_79); +x_96 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_96, 0, x_72); +lean_ctor_set(x_96, 1, x_73); +lean_ctor_set(x_96, 2, x_74); +lean_ctor_set(x_96, 3, x_75); +lean_ctor_set(x_96, 4, x_95); +x_97 = lean_st_ref_set(x_4, x_96, x_23); +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(0); +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; } } } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordTheoremWithBadKeys___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_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_PersistentHashMap_findAtAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___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_10; -x_10 = l_Lean_Meta_Simp_recordTheoremWithBadKeys(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_object* x_6; +x_6 = l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__3(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); -return x_10; +lean_dec(x_1); +return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Result_getProof(lean_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_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_7; -x_7 = lean_ctor_get(x_1, 1); -lean_inc(x_7); -if (lean_obj_tag(x_7) == 0) +size_t x_4; lean_object* x_5; +x_4 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_5 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__2(x_1, x_4, x_3); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Simp_recordTriedSimpTheorem___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) { +_start: { -lean_object* x_8; lean_object* x_9; -x_8 = lean_ctor_get(x_1, 0); -lean_inc(x_8); +size_t x_7; lean_object* x_8; +x_7 = lean_unbox_usize(x_1); lean_dec(x_1); -x_9 = l_Lean_Meta_mkEqRefl(x_8, x_2, x_3, x_4, x_5, x_6); -return x_9; +x_8 = l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__6(x_7, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_3); +lean_dec(x_2); +return x_8; } -else +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__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_10; lean_object* x_11; +size_t x_6; size_t x_7; lean_object* x_8; +x_6 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_7 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_8 = l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__5(x_1, x_6, x_7, x_4, x_5); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordTriedSimpTheorem___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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_Simp_recordTriedSimpTheorem(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); -x_10 = lean_ctor_get(x_7, 0); -lean_inc(x_10); -lean_dec(x_7); -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; -} +return x_10; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Result_getProof_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_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Simp_recordSimpTheorem___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_8; -x_8 = lean_ctor_get(x_2, 1); -lean_inc(x_8); -if (lean_obj_tag(x_8) == 0) +uint8_t x_6; lean_object* x_12; uint8_t x_13; +x_12 = lean_array_get_size(x_1); +x_13 = lean_nat_dec_lt(x_4, x_12); +lean_dec(x_12); +if (x_13 == 0) { -lean_object* x_9; lean_object* x_10; -x_9 = lean_ctor_get(x_2, 0); -lean_inc(x_9); -lean_dec(x_2); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_9); -lean_inc(x_1); -x_10 = l_Lean_Meta_isExprDefEq(x_1, x_9, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_10) == 0) +uint8_t x_14; +lean_dec(x_4); +x_14 = 0; +return x_14; +} +else { -lean_object* x_11; uint8_t x_12; -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_15; +x_15 = lean_array_fget(x_1, x_4); +if (lean_obj_tag(x_5) == 0) { -lean_object* x_13; lean_object* x_14; -x_13 = lean_ctor_get(x_10, 1); -lean_inc(x_13); -lean_dec(x_10); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_9); -x_14 = l_Lean_Meta_mkEqRefl(x_9, x_3, x_4, x_5, x_6, x_13); -if (lean_obj_tag(x_14) == 0) +uint8_t x_16; +x_16 = lean_ctor_get_uint8(x_5, sizeof(void*)*1); +if (x_16 == 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_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -x_17 = l_Lean_Meta_mkEq(x_1, x_9, x_3, x_4, x_5, x_6, x_16); -if (lean_obj_tag(x_17) == 0) +if (lean_obj_tag(x_15) == 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); -x_20 = l_Lean_Meta_mkExpectedTypeHint(x_15, x_18, x_3, x_4, x_5, x_6, x_19); -return x_20; +uint8_t x_17; +x_17 = lean_ctor_get_uint8(x_15, sizeof(void*)*1); +if (x_17 == 0) +{ +lean_object* x_18; uint8_t x_19; lean_object* x_20; uint8_t x_21; uint8_t x_22; +x_18 = lean_ctor_get(x_5, 0); +x_19 = lean_ctor_get_uint8(x_5, sizeof(void*)*1 + 1); +x_20 = lean_ctor_get(x_15, 0); +lean_inc(x_20); +x_21 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +lean_dec(x_15); +x_22 = lean_name_eq(x_18, x_20); +lean_dec(x_20); +if (x_22 == 0) +{ +uint8_t x_23; +x_23 = 0; +x_6 = x_23; +goto block_11; } else { -uint8_t x_21; -lean_dec(x_15); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_21 = !lean_is_exclusive(x_17); +if (x_19 == 0) +{ if (x_21 == 0) { -return x_17; +uint8_t x_24; +x_24 = 1; +x_6 = x_24; +goto block_11; } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_17, 0); -x_23 = lean_ctor_get(x_17, 1); -lean_inc(x_23); -lean_inc(x_22); -lean_dec(x_17); -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; +uint8_t x_25; +x_25 = 0; +x_6 = x_25; +goto block_11; } } +else +{ +if (x_21 == 0) +{ +uint8_t x_26; +x_26 = 0; +x_6 = x_26; +goto block_11; } else { -uint8_t x_25; -lean_dec(x_9); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_1); -x_25 = !lean_is_exclusive(x_14); -if (x_25 == 0) -{ -return x_14; +uint8_t x_27; +x_27 = 1; +x_6 = x_27; +goto block_11; } -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_26 = lean_ctor_get(x_14, 0); -x_27 = lean_ctor_get(x_14, 1); -lean_inc(x_27); -lean_inc(x_26); -lean_dec(x_14); -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_1); -x_29 = lean_ctor_get(x_10, 1); -lean_inc(x_29); -lean_dec(x_10); -x_30 = l_Lean_Meta_mkEqRefl(x_9, x_3, x_4, x_5, x_6, x_29); -return x_30; -} +uint8_t x_28; +x_28 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +if (x_28 == 0) +{ +lean_object* x_29; uint8_t x_30; lean_object* x_31; uint8_t x_32; +x_29 = lean_ctor_get(x_5, 0); +x_30 = lean_ctor_get_uint8(x_5, sizeof(void*)*1 + 1); +x_31 = lean_ctor_get(x_15, 0); +lean_inc(x_31); +lean_dec(x_15); +x_32 = lean_name_eq(x_29, x_31); +lean_dec(x_31); +if (x_32 == 0) +{ +uint8_t x_33; +x_33 = 0; +x_6 = x_33; +goto block_11; } else { -uint8_t x_31; -lean_dec(x_9); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_1); -x_31 = !lean_is_exclusive(x_10); -if (x_31 == 0) +if (x_30 == 0) { -return x_10; +uint8_t x_34; +x_34 = 1; +x_6 = x_34; +goto block_11; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_10, 0); -x_33 = lean_ctor_get(x_10, 1); -lean_inc(x_33); -lean_inc(x_32); -lean_dec(x_10); -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; +uint8_t x_35; +x_35 = 0; +x_6 = x_35; +goto block_11; } } } else { -lean_object* x_35; lean_object* x_36; -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_35 = lean_ctor_get(x_8, 0); -lean_inc(x_35); -lean_dec(x_8); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_7); -return x_36; -} +lean_object* x_36; uint8_t x_37; lean_object* x_38; uint8_t x_39; +x_36 = lean_ctor_get(x_5, 0); +x_37 = lean_ctor_get_uint8(x_5, sizeof(void*)*1 + 1); +x_38 = lean_ctor_get(x_15, 0); +lean_inc(x_38); +lean_dec(x_15); +x_39 = lean_name_eq(x_36, x_38); +lean_dec(x_38); +if (x_39 == 0) +{ +uint8_t x_40; +x_40 = 0; +x_6 = x_40; +goto block_11; } +else +{ +if (x_37 == 0) +{ +uint8_t x_41; +x_41 = 0; +x_6 = x_41; +goto block_11; } -static lean_object* _init_l_Lean_Meta_Simp_Result_mkCast___closed__1() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("cast", 4); -return x_1; +uint8_t x_42; +x_42 = 1; +x_6 = x_42; +goto block_11; } } -static lean_object* _init_l_Lean_Meta_Simp_Result_mkCast___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_Simp_Result_mkCast___closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; } } -static lean_object* _init_l_Lean_Meta_Simp_Result_mkCast___closed__3() { -_start: +} +else { -lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(2u); -x_2 = lean_mk_empty_array_with_capacity(x_1); -return x_2; +lean_object* x_43; lean_object* x_44; uint8_t x_45; +x_43 = l_Lean_Meta_Origin_key(x_5); +x_44 = l_Lean_Meta_Origin_key(x_15); +lean_dec(x_15); +x_45 = lean_name_eq(x_43, x_44); +lean_dec(x_44); +lean_dec(x_43); +x_6 = x_45; +goto block_11; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Result_mkCast(lean_object* x_1, 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: +else { -lean_object* x_8; -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -x_8 = l_Lean_Meta_Simp_Result_getProof(x_1, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_8) == 0) +uint8_t x_46; +x_46 = lean_ctor_get_uint8(x_5, sizeof(void*)*1 + 1); +if (x_46 == 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; -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_Meta_Simp_Result_mkCast___closed__3; -x_12 = lean_array_push(x_11, x_9); -x_13 = lean_array_push(x_12, x_2); -x_14 = l_Lean_Meta_Simp_Result_mkCast___closed__2; -x_15 = l_Lean_Meta_mkAppM(x_14, x_13, x_3, x_4, x_5, x_6, x_10); -return x_15; +if (lean_obj_tag(x_15) == 0) +{ +uint8_t x_47; +x_47 = lean_ctor_get_uint8(x_15, sizeof(void*)*1); +if (x_47 == 0) +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; uint8_t x_51; +x_48 = lean_ctor_get(x_5, 0); +x_49 = lean_ctor_get(x_15, 0); +lean_inc(x_49); +x_50 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +lean_dec(x_15); +x_51 = lean_name_eq(x_48, x_49); +lean_dec(x_49); +if (x_51 == 0) +{ +uint8_t x_52; +x_52 = 0; +x_6 = x_52; +goto block_11; } else { -uint8_t x_16; -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_8); -if (x_16 == 0) +if (x_50 == 0) { -return x_8; +uint8_t x_53; +x_53 = 1; +x_6 = x_53; +goto block_11; } else { -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_8, 0); -x_18 = lean_ctor_get(x_8, 1); -lean_inc(x_18); -lean_inc(x_17); -lean_dec(x_8); -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; +uint8_t x_54; +x_54 = 0; +x_6 = x_54; +goto block_11; } } } +else +{ +uint8_t x_55; +x_55 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +if (x_55 == 0) +{ +lean_object* x_56; lean_object* x_57; uint8_t x_58; +x_56 = lean_ctor_get(x_5, 0); +x_57 = lean_ctor_get(x_15, 0); +lean_inc(x_57); +lean_dec(x_15); +x_58 = lean_name_eq(x_56, x_57); +lean_dec(x_57); +if (x_58 == 0) +{ +uint8_t x_59; +x_59 = 0; +x_6 = x_59; +goto block_11; } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_mkCongrFun(lean_object* x_1, 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: +else { -lean_object* x_8; -x_8 = lean_ctor_get(x_1, 1); -lean_inc(x_8); -if (lean_obj_tag(x_8) == 0) +uint8_t x_60; +x_60 = 1; +x_6 = x_60; +goto block_11; +} +} +else { -lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13; lean_object* x_14; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_9 = lean_ctor_get(x_1, 0); -lean_inc(x_9); -lean_dec(x_1); -x_10 = l_Lean_Expr_app___override(x_9, x_2); -x_11 = lean_box(0); -x_12 = 1; -x_13 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_13, 0, x_10); -lean_ctor_set(x_13, 1, x_11); -lean_ctor_set_uint8(x_13, sizeof(void*)*2, 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_7); -return x_14; +uint8_t x_61; +lean_dec(x_15); +x_61 = 0; +x_6 = x_61; +goto block_11; +} +} } else { -uint8_t x_15; -x_15 = !lean_is_exclusive(x_8); -if (x_15 == 0) +uint8_t x_62; +lean_dec(x_15); +x_62 = 0; +x_6 = x_62; +goto block_11; +} +} +else { -lean_object* x_16; lean_object* x_17; -x_16 = lean_ctor_get(x_8, 0); -lean_inc(x_2); -x_17 = l_Lean_Meta_mkCongrFun(x_16, x_2, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_17) == 0) +if (lean_obj_tag(x_15) == 0) { -uint8_t x_18; -x_18 = !lean_is_exclusive(x_17); -if (x_18 == 0) +uint8_t x_63; +x_63 = lean_ctor_get_uint8(x_15, sizeof(void*)*1); +if (x_63 == 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_17, 0); -x_20 = lean_ctor_get(x_1, 0); -lean_inc(x_20); -lean_dec(x_1); -x_21 = l_Lean_Expr_app___override(x_20, x_2); -lean_ctor_set(x_8, 0, x_19); -x_22 = 1; -x_23 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_23, 0, x_21); -lean_ctor_set(x_23, 1, x_8); -lean_ctor_set_uint8(x_23, sizeof(void*)*2, x_22); -lean_ctor_set(x_17, 0, x_23); -return x_17; +lean_object* x_64; lean_object* x_65; uint8_t x_66; uint8_t x_67; +x_64 = lean_ctor_get(x_5, 0); +x_65 = lean_ctor_get(x_15, 0); +lean_inc(x_65); +x_66 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +lean_dec(x_15); +x_67 = lean_name_eq(x_64, x_65); +lean_dec(x_65); +if (x_67 == 0) +{ +uint8_t x_68; +x_68 = 0; +x_6 = x_68; +goto block_11; } else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; lean_object* x_30; -x_24 = lean_ctor_get(x_17, 0); -x_25 = lean_ctor_get(x_17, 1); -lean_inc(x_25); -lean_inc(x_24); -lean_dec(x_17); -x_26 = lean_ctor_get(x_1, 0); -lean_inc(x_26); -lean_dec(x_1); -x_27 = l_Lean_Expr_app___override(x_26, x_2); -lean_ctor_set(x_8, 0, x_24); -x_28 = 1; -x_29 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set(x_29, 1, x_8); -lean_ctor_set_uint8(x_29, sizeof(void*)*2, 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_25); -return x_30; -} -} -else -{ -uint8_t x_31; -lean_free_object(x_8); -lean_dec(x_2); -lean_dec(x_1); -x_31 = !lean_is_exclusive(x_17); -if (x_31 == 0) +if (x_66 == 0) { -return x_17; +uint8_t x_69; +x_69 = 0; +x_6 = x_69; +goto block_11; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; -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 = 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; +uint8_t x_70; +x_70 = 1; +x_6 = x_70; +goto block_11; } } } else { -lean_object* x_35; lean_object* x_36; -x_35 = lean_ctor_get(x_8, 0); -lean_inc(x_35); -lean_dec(x_8); -lean_inc(x_2); -x_36 = l_Lean_Meta_mkCongrFun(x_35, x_2, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_36) == 0) +uint8_t x_71; +x_71 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +if (x_71 == 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; uint8_t x_43; lean_object* x_44; lean_object* x_45; -x_37 = lean_ctor_get(x_36, 0); -lean_inc(x_37); -x_38 = lean_ctor_get(x_36, 1); -lean_inc(x_38); -if (lean_is_exclusive(x_36)) { - lean_ctor_release(x_36, 0); - lean_ctor_release(x_36, 1); - x_39 = x_36; -} else { - lean_dec_ref(x_36); - x_39 = lean_box(0); -} -x_40 = lean_ctor_get(x_1, 0); -lean_inc(x_40); -lean_dec(x_1); -x_41 = l_Lean_Expr_app___override(x_40, x_2); -x_42 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_42, 0, x_37); -x_43 = 1; -x_44 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_44, 0, x_41); -lean_ctor_set(x_44, 1, x_42); -lean_ctor_set_uint8(x_44, sizeof(void*)*2, x_43); -if (lean_is_scalar(x_39)) { - x_45 = lean_alloc_ctor(0, 2, 0); -} else { - x_45 = x_39; +uint8_t x_72; +lean_dec(x_15); +x_72 = 0; +x_6 = x_72; +goto block_11; } -lean_ctor_set(x_45, 0, x_44); -lean_ctor_set(x_45, 1, x_38); -return x_45; +else +{ +lean_object* x_73; lean_object* x_74; uint8_t x_75; +x_73 = lean_ctor_get(x_5, 0); +x_74 = lean_ctor_get(x_15, 0); +lean_inc(x_74); +lean_dec(x_15); +x_75 = lean_name_eq(x_73, x_74); +lean_dec(x_74); +if (x_75 == 0) +{ +uint8_t x_76; +x_76 = 0; +x_6 = x_76; +goto block_11; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; -lean_dec(x_2); -lean_dec(x_1); -x_46 = lean_ctor_get(x_36, 0); -lean_inc(x_46); -x_47 = lean_ctor_get(x_36, 1); -lean_inc(x_47); -if (lean_is_exclusive(x_36)) { - lean_ctor_release(x_36, 0); - lean_ctor_release(x_36, 1); - x_48 = x_36; -} else { - lean_dec_ref(x_36); - x_48 = lean_box(0); +uint8_t x_77; +x_77 = 1; +x_6 = x_77; +goto block_11; } -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_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; uint8_t x_82; +x_78 = lean_ctor_get(x_5, 0); +lean_inc(x_78); +x_79 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_79, 0, x_78); +lean_ctor_set_uint8(x_79, sizeof(void*)*1, x_46); +lean_ctor_set_uint8(x_79, sizeof(void*)*1 + 1, x_46); +x_80 = l_Lean_Meta_Origin_key(x_79); +lean_dec(x_79); +x_81 = l_Lean_Meta_Origin_key(x_15); +lean_dec(x_15); +x_82 = lean_name_eq(x_80, x_81); +lean_dec(x_81); +lean_dec(x_80); +x_6 = x_82; +goto block_11; +} } } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_mkCongr(lean_object* x_1, 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: +else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_8 = lean_ctor_get(x_1, 0); -lean_inc(x_8); -x_9 = lean_ctor_get(x_2, 0); -lean_inc(x_9); -lean_inc(x_9); -lean_inc(x_8); -x_10 = l_Lean_Expr_app___override(x_8, x_9); -x_11 = lean_ctor_get(x_1, 1); -lean_inc(x_11); -lean_dec(x_1); -if (lean_obj_tag(x_11) == 0) +if (lean_obj_tag(x_15) == 0) { -lean_object* x_12; -lean_dec(x_9); -x_12 = lean_ctor_get(x_2, 1); -lean_inc(x_12); -lean_dec(x_2); -if (lean_obj_tag(x_12) == 0) +uint8_t x_83; +x_83 = lean_ctor_get_uint8(x_15, sizeof(void*)*1); +if (x_83 == 0) { -lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; -lean_dec(x_8); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_13 = lean_box(0); -x_14 = 1; -x_15 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_15, 0, x_10); -lean_ctor_set(x_15, 1, x_13); -lean_ctor_set_uint8(x_15, sizeof(void*)*2, 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_7); -return x_16; +lean_object* x_84; lean_object* x_85; uint8_t x_86; +x_84 = l_Lean_Meta_Origin_key(x_5); +x_85 = l_Lean_Meta_Origin_key(x_15); +lean_dec(x_15); +x_86 = lean_name_eq(x_84, x_85); +lean_dec(x_85); +lean_dec(x_84); +x_6 = x_86; +goto block_11; } else { -uint8_t x_17; -x_17 = !lean_is_exclusive(x_12); -if (x_17 == 0) +uint8_t x_87; +x_87 = lean_ctor_get_uint8(x_15, sizeof(void*)*1 + 1); +if (x_87 == 0) { -lean_object* x_18; lean_object* x_19; -x_18 = lean_ctor_get(x_12, 0); -x_19 = l_Lean_Meta_mkCongrArg(x_8, x_18, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_19) == 0) +uint8_t x_88; +lean_dec(x_15); +x_88 = 0; +x_6 = x_88; +goto block_11; +} +else { -uint8_t x_20; -x_20 = !lean_is_exclusive(x_19); -if (x_20 == 0) +uint8_t x_89; +x_89 = !lean_is_exclusive(x_15); +if (x_89 == 0) { -lean_object* x_21; uint8_t x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_19, 0); -lean_ctor_set(x_12, 0, x_21); -x_22 = 1; -x_23 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_23, 0, x_10); -lean_ctor_set(x_23, 1, x_12); -lean_ctor_set_uint8(x_23, sizeof(void*)*2, x_22); -lean_ctor_set(x_19, 0, x_23); -return x_19; +lean_object* x_90; lean_object* x_91; uint8_t x_92; +lean_ctor_set_uint8(x_15, sizeof(void*)*1, x_87); +x_90 = l_Lean_Meta_Origin_key(x_5); +x_91 = l_Lean_Meta_Origin_key(x_15); +lean_dec(x_15); +x_92 = lean_name_eq(x_90, x_91); +lean_dec(x_91); +lean_dec(x_90); +x_6 = x_92; +goto block_11; } else { -lean_object* x_24; lean_object* x_25; uint8_t 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); -lean_dec(x_19); -lean_ctor_set(x_12, 0, x_24); -x_26 = 1; -x_27 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_27, 0, x_10); -lean_ctor_set(x_27, 1, x_12); -lean_ctor_set_uint8(x_27, sizeof(void*)*2, 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); -return x_28; +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; uint8_t x_97; +x_93 = lean_ctor_get(x_15, 0); +lean_inc(x_93); +lean_dec(x_15); +x_94 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_94, 0, x_93); +lean_ctor_set_uint8(x_94, sizeof(void*)*1, x_87); +lean_ctor_set_uint8(x_94, sizeof(void*)*1 + 1, x_87); +x_95 = l_Lean_Meta_Origin_key(x_5); +x_96 = l_Lean_Meta_Origin_key(x_94); +lean_dec(x_94); +x_97 = lean_name_eq(x_95, x_96); +lean_dec(x_96); +lean_dec(x_95); +x_6 = x_97; +goto block_11; +} +} } } else { -uint8_t x_29; -lean_free_object(x_12); -lean_dec(x_10); -x_29 = !lean_is_exclusive(x_19); -if (x_29 == 0) +lean_object* x_98; lean_object* x_99; uint8_t x_100; +x_98 = l_Lean_Meta_Origin_key(x_5); +x_99 = l_Lean_Meta_Origin_key(x_15); +lean_dec(x_15); +x_100 = lean_name_eq(x_98, x_99); +lean_dec(x_99); +lean_dec(x_98); +x_6 = x_100; +goto block_11; +} +} +} +block_11: { -return x_19; +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; +x_7 = lean_unsigned_to_nat(1u); +x_8 = lean_nat_add(x_4, x_7); +lean_dec(x_4); +x_3 = lean_box(0); +x_4 = x_8; +goto _start; } 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); -lean_inc(x_31); -lean_inc(x_30); -lean_dec(x_19); -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; +uint8_t x_10; +lean_dec(x_4); +x_10 = 1; +return x_10; } } } -else +} +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__2(lean_object* x_1, size_t x_2, lean_object* x_3) { +_start: { -lean_object* x_33; lean_object* x_34; -x_33 = lean_ctor_get(x_12, 0); -lean_inc(x_33); -lean_dec(x_12); -x_34 = l_Lean_Meta_mkCongrArg(x_8, x_33, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_34) == 0) +if (lean_obj_tag(x_1) == 0) { -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_35 = lean_ctor_get(x_34, 0); -lean_inc(x_35); -x_36 = lean_ctor_get(x_34, 1); -lean_inc(x_36); -if (lean_is_exclusive(x_34)) { - lean_ctor_release(x_34, 0); - lean_ctor_release(x_34, 1); - x_37 = x_34; -} else { - lean_dec_ref(x_34); - x_37 = lean_box(0); -} -x_38 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_38, 0, x_35); -x_39 = 1; -x_40 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_40, 0, x_10); -lean_ctor_set(x_40, 1, x_38); -lean_ctor_set_uint8(x_40, sizeof(void*)*2, x_39); -if (lean_is_scalar(x_37)) { - x_41 = lean_alloc_ctor(0, 2, 0); -} else { - x_41 = x_37; -} -lean_ctor_set(x_41, 0, x_40); -lean_ctor_set(x_41, 1, x_36); -return x_41; +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_Simp_recordTriedSimpTheorem___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: +{ +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_11; +x_11 = lean_ctor_get_uint8(x_3, sizeof(void*)*1); +if (x_11 == 0) +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_12); +lean_dec(x_10); +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_13; +x_13 = lean_ctor_get_uint8(x_12, sizeof(void*)*1); +if (x_13 == 0) +{ +lean_object* x_14; uint8_t x_15; lean_object* x_16; uint8_t x_17; uint8_t x_18; +x_14 = lean_ctor_get(x_3, 0); +lean_inc(x_14); +x_15 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +lean_dec(x_3); +x_16 = lean_ctor_get(x_12, 0); +lean_inc(x_16); +x_17 = lean_ctor_get_uint8(x_12, sizeof(void*)*1 + 1); +lean_dec(x_12); +x_18 = lean_name_eq(x_14, x_16); +lean_dec(x_16); +lean_dec(x_14); +if (x_18 == 0) +{ +uint8_t x_19; +x_19 = 0; +return x_19; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -lean_dec(x_10); -x_42 = lean_ctor_get(x_34, 0); -lean_inc(x_42); -x_43 = lean_ctor_get(x_34, 1); -lean_inc(x_43); -if (lean_is_exclusive(x_34)) { - lean_ctor_release(x_34, 0); - lean_ctor_release(x_34, 1); - x_44 = x_34; -} else { - lean_dec_ref(x_34); - x_44 = lean_box(0); +if (x_15 == 0) +{ +if (x_17 == 0) +{ +uint8_t x_20; +x_20 = 1; +return x_20; } -if (lean_is_scalar(x_44)) { - x_45 = lean_alloc_ctor(1, 2, 0); -} else { - x_45 = x_44; +else +{ +uint8_t x_21; +x_21 = 0; +return x_21; } -lean_ctor_set(x_45, 0, x_42); -lean_ctor_set(x_45, 1, x_43); -return x_45; } +else +{ +return x_17; } } } else { -lean_object* x_46; -lean_dec(x_8); -x_46 = lean_ctor_get(x_2, 1); -lean_inc(x_46); -lean_dec(x_2); -if (lean_obj_tag(x_46) == 0) +uint8_t x_22; +x_22 = lean_ctor_get_uint8(x_12, sizeof(void*)*1 + 1); +if (x_22 == 0) { -uint8_t x_47; -x_47 = !lean_is_exclusive(x_11); -if (x_47 == 0) +lean_object* x_23; uint8_t x_24; lean_object* x_25; uint8_t x_26; +x_23 = lean_ctor_get(x_3, 0); +lean_inc(x_23); +x_24 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +lean_dec(x_3); +x_25 = lean_ctor_get(x_12, 0); +lean_inc(x_25); +lean_dec(x_12); +x_26 = lean_name_eq(x_23, x_25); +lean_dec(x_25); +lean_dec(x_23); +if (x_26 == 0) { -lean_object* x_48; lean_object* x_49; -x_48 = lean_ctor_get(x_11, 0); -x_49 = l_Lean_Meta_mkCongrFun(x_48, x_9, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_49) == 0) +uint8_t x_27; +x_27 = 0; +return x_27; +} +else { -uint8_t x_50; -x_50 = !lean_is_exclusive(x_49); -if (x_50 == 0) +if (x_24 == 0) { -lean_object* x_51; uint8_t x_52; lean_object* x_53; -x_51 = lean_ctor_get(x_49, 0); -lean_ctor_set(x_11, 0, x_51); -x_52 = 1; -x_53 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_53, 0, x_10); -lean_ctor_set(x_53, 1, x_11); -lean_ctor_set_uint8(x_53, sizeof(void*)*2, x_52); -lean_ctor_set(x_49, 0, x_53); -return x_49; +uint8_t x_28; +x_28 = 1; +return x_28; } else { -lean_object* x_54; lean_object* x_55; uint8_t x_56; lean_object* x_57; lean_object* x_58; -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); -lean_ctor_set(x_11, 0, x_54); -x_56 = 1; -x_57 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_57, 0, x_10); -lean_ctor_set(x_57, 1, x_11); -lean_ctor_set_uint8(x_57, sizeof(void*)*2, 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_55); -return x_58; +uint8_t x_29; +x_29 = 0; +return x_29; +} } } else { -uint8_t x_59; -lean_free_object(x_11); -lean_dec(x_10); -x_59 = !lean_is_exclusive(x_49); -if (x_59 == 0) +lean_object* x_30; uint8_t x_31; lean_object* x_32; uint8_t x_33; +x_30 = lean_ctor_get(x_3, 0); +lean_inc(x_30); +x_31 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +lean_dec(x_3); +x_32 = lean_ctor_get(x_12, 0); +lean_inc(x_32); +lean_dec(x_12); +x_33 = lean_name_eq(x_30, x_32); +lean_dec(x_32); +lean_dec(x_30); +if (x_33 == 0) { -return x_49; +uint8_t x_34; +x_34 = 0; +return x_34; } else { -lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_60 = lean_ctor_get(x_49, 0); -x_61 = lean_ctor_get(x_49, 1); -lean_inc(x_61); -lean_inc(x_60); -lean_dec(x_49); -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; +return x_31; +} } } } else { -lean_object* x_63; lean_object* x_64; -x_63 = lean_ctor_get(x_11, 0); -lean_inc(x_63); -lean_dec(x_11); -x_64 = l_Lean_Meta_mkCongrFun(x_63, x_9, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_64) == 0) -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; uint8_t x_69; lean_object* x_70; lean_object* x_71; -x_65 = lean_ctor_get(x_64, 0); -lean_inc(x_65); -x_66 = lean_ctor_get(x_64, 1); -lean_inc(x_66); -if (lean_is_exclusive(x_64)) { - lean_ctor_release(x_64, 0); - lean_ctor_release(x_64, 1); - x_67 = x_64; -} else { - lean_dec_ref(x_64); - x_67 = lean_box(0); -} -x_68 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_68, 0, x_65); -x_69 = 1; -x_70 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_70, 0, x_10); -lean_ctor_set(x_70, 1, x_68); -lean_ctor_set_uint8(x_70, sizeof(void*)*2, x_69); -if (lean_is_scalar(x_67)) { - x_71 = lean_alloc_ctor(0, 2, 0); -} else { - x_71 = x_67; +lean_object* x_35; lean_object* x_36; uint8_t x_37; +x_35 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_36 = l_Lean_Meta_Origin_key(x_12); +lean_dec(x_12); +x_37 = lean_name_eq(x_35, x_36); +lean_dec(x_36); +lean_dec(x_35); +return x_37; } -lean_ctor_set(x_71, 0, x_70); -lean_ctor_set(x_71, 1, x_66); -return x_71; } else { -lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; +uint8_t x_38; +x_38 = lean_ctor_get_uint8(x_3, sizeof(void*)*1 + 1); +if (x_38 == 0) +{ +lean_object* x_39; +x_39 = lean_ctor_get(x_10, 0); +lean_inc(x_39); lean_dec(x_10); -x_72 = lean_ctor_get(x_64, 0); -lean_inc(x_72); -x_73 = lean_ctor_get(x_64, 1); -lean_inc(x_73); -if (lean_is_exclusive(x_64)) { - lean_ctor_release(x_64, 0); - lean_ctor_release(x_64, 1); - x_74 = x_64; -} else { - lean_dec_ref(x_64); - x_74 = lean_box(0); -} -if (lean_is_scalar(x_74)) { - x_75 = lean_alloc_ctor(1, 2, 0); -} else { - x_75 = x_74; -} -lean_ctor_set(x_75, 0, x_72); -lean_ctor_set(x_75, 1, x_73); -return x_75; -} -} -} -else +if (lean_obj_tag(x_39) == 0) { -lean_object* x_76; uint8_t x_77; -lean_dec(x_9); -x_76 = lean_ctor_get(x_11, 0); -lean_inc(x_76); -lean_dec(x_11); -x_77 = !lean_is_exclusive(x_46); -if (x_77 == 0) +uint8_t x_40; +x_40 = lean_ctor_get_uint8(x_39, sizeof(void*)*1); +if (x_40 == 0) { -lean_object* x_78; lean_object* x_79; -x_78 = lean_ctor_get(x_46, 0); -x_79 = l_Lean_Meta_mkCongr(x_76, x_78, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_79) == 0) +lean_object* x_41; lean_object* x_42; uint8_t x_43; uint8_t x_44; +x_41 = lean_ctor_get(x_3, 0); +lean_inc(x_41); +lean_dec(x_3); +x_42 = lean_ctor_get(x_39, 0); +lean_inc(x_42); +x_43 = lean_ctor_get_uint8(x_39, sizeof(void*)*1 + 1); +lean_dec(x_39); +x_44 = lean_name_eq(x_41, x_42); +lean_dec(x_42); +lean_dec(x_41); +if (x_44 == 0) { -uint8_t x_80; -x_80 = !lean_is_exclusive(x_79); -if (x_80 == 0) +uint8_t x_45; +x_45 = 0; +return x_45; +} +else { -lean_object* x_81; uint8_t x_82; lean_object* x_83; -x_81 = lean_ctor_get(x_79, 0); -lean_ctor_set(x_46, 0, x_81); -x_82 = 1; -x_83 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_83, 0, x_10); -lean_ctor_set(x_83, 1, x_46); -lean_ctor_set_uint8(x_83, sizeof(void*)*2, x_82); -lean_ctor_set(x_79, 0, x_83); -return x_79; +if (x_43 == 0) +{ +uint8_t x_46; +x_46 = 1; +return x_46; } else { -lean_object* x_84; lean_object* x_85; uint8_t x_86; lean_object* x_87; lean_object* x_88; -x_84 = lean_ctor_get(x_79, 0); -x_85 = lean_ctor_get(x_79, 1); -lean_inc(x_85); -lean_inc(x_84); -lean_dec(x_79); -lean_ctor_set(x_46, 0, x_84); -x_86 = 1; -x_87 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_87, 0, x_10); -lean_ctor_set(x_87, 1, x_46); -lean_ctor_set_uint8(x_87, sizeof(void*)*2, x_86); -x_88 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_88, 0, x_87); -lean_ctor_set(x_88, 1, x_85); -return x_88; +uint8_t x_47; +x_47 = 0; +return x_47; +} } } else { -uint8_t x_89; -lean_free_object(x_46); -lean_dec(x_10); -x_89 = !lean_is_exclusive(x_79); -if (x_89 == 0) +uint8_t x_48; +x_48 = lean_ctor_get_uint8(x_39, sizeof(void*)*1 + 1); +if (x_48 == 0) { -return x_79; +lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_49 = lean_ctor_get(x_3, 0); +lean_inc(x_49); +lean_dec(x_3); +x_50 = lean_ctor_get(x_39, 0); +lean_inc(x_50); +lean_dec(x_39); +x_51 = lean_name_eq(x_49, x_50); +lean_dec(x_50); +lean_dec(x_49); +return x_51; } else { -lean_object* x_90; lean_object* x_91; lean_object* x_92; -x_90 = lean_ctor_get(x_79, 0); -x_91 = lean_ctor_get(x_79, 1); -lean_inc(x_91); -lean_inc(x_90); -lean_dec(x_79); -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; +uint8_t x_52; +lean_dec(x_39); +lean_dec(x_3); +x_52 = 0; +return x_52; } } } else { -lean_object* x_93; lean_object* x_94; -x_93 = lean_ctor_get(x_46, 0); -lean_inc(x_93); -lean_dec(x_46); -x_94 = l_Lean_Meta_mkCongr(x_76, x_93, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_94) == 0) -{ -lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; uint8_t x_99; lean_object* x_100; lean_object* x_101; -x_95 = lean_ctor_get(x_94, 0); -lean_inc(x_95); -x_96 = lean_ctor_get(x_94, 1); -lean_inc(x_96); -if (lean_is_exclusive(x_94)) { - lean_ctor_release(x_94, 0); - lean_ctor_release(x_94, 1); - x_97 = x_94; -} else { - lean_dec_ref(x_94); - x_97 = lean_box(0); -} -x_98 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_98, 0, x_95); -x_99 = 1; -x_100 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_100, 0, x_10); -lean_ctor_set(x_100, 1, x_98); -lean_ctor_set_uint8(x_100, sizeof(void*)*2, x_99); -if (lean_is_scalar(x_97)) { - x_101 = lean_alloc_ctor(0, 2, 0); -} else { - x_101 = x_97; +uint8_t x_53; +lean_dec(x_39); +lean_dec(x_3); +x_53 = 0; +return x_53; } -lean_ctor_set(x_101, 0, x_100); -lean_ctor_set(x_101, 1, x_96); -return x_101; } else { -lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_object* x_54; +x_54 = lean_ctor_get(x_10, 0); +lean_inc(x_54); lean_dec(x_10); -x_102 = lean_ctor_get(x_94, 0); -lean_inc(x_102); -x_103 = lean_ctor_get(x_94, 1); -lean_inc(x_103); -if (lean_is_exclusive(x_94)) { - lean_ctor_release(x_94, 0); - lean_ctor_release(x_94, 1); - x_104 = x_94; -} else { - lean_dec_ref(x_94); - x_104 = lean_box(0); -} -if (lean_is_scalar(x_104)) { - x_105 = lean_alloc_ctor(1, 2, 0); -} else { - x_105 = x_104; +if (lean_obj_tag(x_54) == 0) +{ +uint8_t x_55; +x_55 = lean_ctor_get_uint8(x_54, sizeof(void*)*1); +if (x_55 == 0) +{ +lean_object* x_56; lean_object* x_57; uint8_t x_58; uint8_t x_59; +x_56 = lean_ctor_get(x_3, 0); +lean_inc(x_56); +lean_dec(x_3); +x_57 = lean_ctor_get(x_54, 0); +lean_inc(x_57); +x_58 = lean_ctor_get_uint8(x_54, sizeof(void*)*1 + 1); +lean_dec(x_54); +x_59 = lean_name_eq(x_56, x_57); +lean_dec(x_57); +lean_dec(x_56); +if (x_59 == 0) +{ +uint8_t x_60; +x_60 = 0; +return x_60; } -lean_ctor_set(x_105, 0, x_102); -lean_ctor_set(x_105, 1, x_103); -return x_105; +else +{ +return x_58; } } +else +{ +uint8_t x_61; +x_61 = lean_ctor_get_uint8(x_54, sizeof(void*)*1 + 1); +if (x_61 == 0) +{ +uint8_t x_62; +lean_dec(x_54); +lean_dec(x_3); +x_62 = 0; +return x_62; } +else +{ +lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_63 = lean_ctor_get(x_3, 0); +lean_inc(x_63); +lean_dec(x_3); +x_64 = lean_ctor_get(x_54, 0); +lean_inc(x_64); +lean_dec(x_54); +x_65 = lean_name_eq(x_63, x_64); +lean_dec(x_64); +lean_dec(x_63); +return x_65; } } } -static lean_object* _init_l_Lean_Meta_Simp_mkImpCongr___closed__1() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Lean.Expr", 9); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Simp_mkImpCongr___closed__2() { -_start: +uint8_t x_66; +x_66 = !lean_is_exclusive(x_3); +if (x_66 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("Lean.Expr.updateForallE!", 24); -return x_1; -} +lean_object* x_67; lean_object* x_68; uint8_t x_69; +lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_38); +x_67 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_68 = l_Lean_Meta_Origin_key(x_54); +lean_dec(x_54); +x_69 = lean_name_eq(x_67, x_68); +lean_dec(x_68); +lean_dec(x_67); +return x_69; } -static lean_object* _init_l_Lean_Meta_Simp_mkImpCongr___closed__3() { -_start: +else { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("forall expected", 15); -return x_1; +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; uint8_t x_74; +x_70 = lean_ctor_get(x_3, 0); +lean_inc(x_70); +lean_dec(x_3); +x_71 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set_uint8(x_71, sizeof(void*)*1, x_38); +lean_ctor_set_uint8(x_71, sizeof(void*)*1 + 1, x_38); +x_72 = l_Lean_Meta_Origin_key(x_71); +lean_dec(x_71); +x_73 = l_Lean_Meta_Origin_key(x_54); +lean_dec(x_54); +x_74 = lean_name_eq(x_72, x_73); +lean_dec(x_73); +lean_dec(x_72); +return x_74; } } -static lean_object* _init_l_Lean_Meta_Simp_mkImpCongr___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_Simp_mkImpCongr___closed__1; -x_2 = l_Lean_Meta_Simp_mkImpCongr___closed__2; -x_3 = lean_unsigned_to_nat(1744u); -x_4 = lean_unsigned_to_nat(24u); -x_5 = l_Lean_Meta_Simp_mkImpCongr___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_Simp_mkImpCongr(lean_object* x_1, lean_object* x_2, 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: +} +else { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_9 = lean_ctor_get(x_2, 0); -lean_inc(x_9); -x_10 = lean_ctor_get(x_3, 0); -lean_inc(x_10); -x_11 = lean_ctor_get(x_2, 1); -lean_inc(x_11); -if (lean_obj_tag(x_1) == 7) +lean_object* x_75; +x_75 = lean_ctor_get(x_10, 0); +lean_inc(x_75); +lean_dec(x_10); +if (lean_obj_tag(x_75) == 0) { -lean_object* x_131; lean_object* x_132; lean_object* x_133; uint8_t x_134; lean_object* x_135; size_t x_136; size_t x_137; uint8_t x_138; -x_131 = lean_ctor_get(x_1, 0); -lean_inc(x_131); -x_132 = lean_ctor_get(x_1, 1); -lean_inc(x_132); -x_133 = lean_ctor_get(x_1, 2); -lean_inc(x_133); -x_134 = lean_ctor_get_uint8(x_1, sizeof(void*)*3 + 8); -lean_dec(x_1); -lean_inc(x_133); -lean_inc(x_132); -lean_inc(x_131); -x_135 = l_Lean_Expr_forallE___override(x_131, x_132, x_133, x_134); -x_136 = lean_ptr_addr(x_132); -lean_dec(x_132); -x_137 = lean_ptr_addr(x_9); -x_138 = lean_usize_dec_eq(x_136, x_137); -if (x_138 == 0) +uint8_t x_76; +x_76 = lean_ctor_get_uint8(x_75, sizeof(void*)*1); +if (x_76 == 0) { -lean_object* x_139; -lean_dec(x_135); -lean_dec(x_133); -x_139 = l_Lean_Expr_forallE___override(x_131, x_9, x_10, x_134); -x_12 = x_139; -goto block_130; +lean_object* x_77; lean_object* x_78; uint8_t x_79; +x_77 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_78 = l_Lean_Meta_Origin_key(x_75); +lean_dec(x_75); +x_79 = lean_name_eq(x_77, x_78); +lean_dec(x_78); +lean_dec(x_77); +return x_79; } else { -size_t x_140; size_t x_141; uint8_t x_142; -x_140 = lean_ptr_addr(x_133); -lean_dec(x_133); -x_141 = lean_ptr_addr(x_10); -x_142 = lean_usize_dec_eq(x_140, x_141); -if (x_142 == 0) +uint8_t x_80; +x_80 = lean_ctor_get_uint8(x_75, sizeof(void*)*1 + 1); +if (x_80 == 0) { -lean_object* x_143; -lean_dec(x_135); -x_143 = l_Lean_Expr_forallE___override(x_131, x_9, x_10, x_134); -x_12 = x_143; -goto block_130; +uint8_t x_81; +lean_dec(x_75); +lean_dec(x_3); +x_81 = 0; +return x_81; } else { -uint8_t x_144; -x_144 = l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_399_(x_134, x_134); -if (x_144 == 0) +uint8_t x_82; +x_82 = !lean_is_exclusive(x_75); +if (x_82 == 0) { -lean_object* x_145; -lean_dec(x_135); -x_145 = l_Lean_Expr_forallE___override(x_131, x_9, x_10, x_134); -x_12 = x_145; -goto block_130; +lean_object* x_83; lean_object* x_84; uint8_t x_85; +lean_ctor_set_uint8(x_75, sizeof(void*)*1, x_80); +x_83 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_84 = l_Lean_Meta_Origin_key(x_75); +lean_dec(x_75); +x_85 = lean_name_eq(x_83, x_84); +lean_dec(x_84); +lean_dec(x_83); +return x_85; } else { -lean_dec(x_131); -lean_dec(x_10); -lean_dec(x_9); -x_12 = x_135; -goto block_130; +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; uint8_t x_90; +x_86 = lean_ctor_get(x_75, 0); +lean_inc(x_86); +lean_dec(x_75); +x_87 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_87, 0, x_86); +lean_ctor_set_uint8(x_87, sizeof(void*)*1, x_80); +lean_ctor_set_uint8(x_87, sizeof(void*)*1 + 1, x_80); +x_88 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_89 = l_Lean_Meta_Origin_key(x_87); +lean_dec(x_87); +x_90 = lean_name_eq(x_88, x_89); +lean_dec(x_89); +lean_dec(x_88); +return x_90; } } } } else { -lean_object* x_146; lean_object* x_147; -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_1); -x_146 = l_Lean_Meta_Simp_mkImpCongr___closed__4; -x_147 = l_panic___at_Lean_Expr_appFn_x21___spec__1(x_146); -x_12 = x_147; -goto block_130; +lean_object* x_91; lean_object* x_92; uint8_t x_93; +x_91 = l_Lean_Meta_Origin_key(x_3); +lean_dec(x_3); +x_92 = l_Lean_Meta_Origin_key(x_75); +lean_dec(x_75); +x_93 = lean_name_eq(x_91, x_92); +lean_dec(x_92); +lean_dec(x_91); +return x_93; } -block_130: -{ -if (lean_obj_tag(x_11) == 0) +} +} +case 1: { -lean_object* x_13; -x_13 = lean_ctor_get(x_3, 1); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) +lean_object* x_94; size_t x_95; +x_94 = lean_ctor_get(x_10, 0); +lean_inc(x_94); +lean_dec(x_10); +x_95 = lean_usize_shift_right(x_2, x_5); +x_1 = x_94; +x_2 = x_95; +goto _start; +} +default: { -lean_object* x_14; uint8_t x_15; lean_object* x_16; lean_object* x_17; -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); +uint8_t x_97; lean_dec(x_3); -lean_dec(x_2); -x_14 = lean_box(0); -x_15 = 1; -x_16 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_16, 0, x_12); -lean_ctor_set(x_16, 1, x_14); -lean_ctor_set_uint8(x_16, sizeof(void*)*2, 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; +x_97 = 0; +return x_97; +} } -else -{ -uint8_t x_18; -x_18 = !lean_is_exclusive(x_13); -if (x_18 == 0) -{ -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_13, 0); -lean_dec(x_19); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -x_20 = l_Lean_Meta_Simp_Result_getProof(x_2, x_4, x_5, x_6, x_7, x_8); -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_Lean_Meta_Simp_Result_getProof(x_3, 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; 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_Lean_Meta_mkImpCongr(x_21, x_24, x_4, x_5, x_6, x_7, 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; uint8_t x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_26, 0); -lean_ctor_set(x_13, 0, x_28); -x_29 = 1; -x_30 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_30, 0, x_12); -lean_ctor_set(x_30, 1, x_13); -lean_ctor_set_uint8(x_30, sizeof(void*)*2, x_29); -lean_ctor_set(x_26, 0, x_30); -return x_26; } else { -lean_object* x_31; lean_object* x_32; uint8_t 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); -lean_ctor_set(x_13, 0, x_31); -x_33 = 1; -x_34 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_34, 0, x_12); -lean_ctor_set(x_34, 1, x_13); -lean_ctor_set_uint8(x_34, sizeof(void*)*2, 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; +lean_object* x_98; lean_object* x_99; lean_object* x_100; uint8_t x_101; +x_98 = lean_ctor_get(x_1, 0); +lean_inc(x_98); +x_99 = lean_ctor_get(x_1, 1); +lean_inc(x_99); +lean_dec(x_1); +x_100 = lean_unsigned_to_nat(0u); +x_101 = l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__3(x_98, x_99, lean_box(0), x_100, x_3); +lean_dec(x_3); +lean_dec(x_99); +lean_dec(x_98); +return x_101; } } -else +} +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at_Lean_Meta_Simp_recordSimpTheorem___spec__1(lean_object* x_1, lean_object* x_2) { +_start: { -uint8_t x_36; -lean_free_object(x_13); -lean_dec(x_12); -x_36 = !lean_is_exclusive(x_26); -if (x_36 == 0) +if (lean_obj_tag(x_2) == 0) { -return x_26; -} -else +uint8_t x_3; +x_3 = lean_ctor_get_uint8(x_2, sizeof(void*)*1 + 1); +if (x_3 == 0) { -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; -} -} +lean_object* x_4; lean_object* x_5; uint64_t x_6; uint64_t x_7; uint64_t x_8; size_t x_9; uint8_t x_10; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +lean_dec(x_1); +x_5 = lean_ctor_get(x_2, 0); +lean_inc(x_5); +x_6 = l_Lean_Name_hash___override(x_5); +lean_dec(x_5); +x_7 = 13; +x_8 = lean_uint64_mix_hash(x_6, x_7); +x_9 = lean_uint64_to_usize(x_8); +x_10 = l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__2(x_4, x_9, x_2); +return x_10; } else { -uint8_t x_40; -lean_dec(x_21); -lean_free_object(x_13); +lean_object* x_11; lean_object* x_12; uint64_t x_13; uint64_t x_14; uint64_t x_15; size_t x_16; uint8_t x_17; +x_11 = lean_ctor_get(x_1, 0); +lean_inc(x_11); +lean_dec(x_1); +x_12 = lean_ctor_get(x_2, 0); +lean_inc(x_12); +x_13 = l_Lean_Name_hash___override(x_12); lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_40 = !lean_is_exclusive(x_23); -if (x_40 == 0) -{ -return x_23; +x_14 = 11; +x_15 = lean_uint64_mix_hash(x_13, x_14); +x_16 = lean_uint64_to_usize(x_15); +x_17 = l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__2(x_11, x_16, x_2); +return x_17; +} } 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; +lean_object* x_18; lean_object* x_19; uint64_t x_20; size_t x_21; uint8_t x_22; +x_18 = lean_ctor_get(x_1, 0); +lean_inc(x_18); +lean_dec(x_1); +x_19 = l_Lean_Meta_Origin_key(x_2); +x_20 = l_Lean_Name_hash___override(x_19); +lean_dec(x_19); +x_21 = lean_uint64_to_usize(x_20); +x_22 = l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Simp_recordSimpTheorem___spec__2(x_18, x_21, x_2); +return x_22; } } } -else +LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordSimpTheorem___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_44; +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_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_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_ctor_get(x_11, 3); +lean_inc(x_16); +x_17 = lean_ctor_get(x_11, 4); +lean_inc(x_17); +lean_inc(x_1); +lean_inc(x_15); +x_18 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_Simp_recordSimpTheorem___spec__1(x_15, x_1); +if (x_18 == 0) +{ +uint8_t x_19; +x_19 = !lean_is_exclusive(x_11); +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; uint8_t x_28; +x_20 = lean_ctor_get(x_11, 4); +lean_dec(x_20); +x_21 = lean_ctor_get(x_11, 3); +lean_dec(x_21); +x_22 = lean_ctor_get(x_11, 2); +lean_dec(x_22); +x_23 = lean_ctor_get(x_11, 1); +lean_dec(x_23); +x_24 = lean_ctor_get(x_11, 0); +lean_dec(x_24); +x_25 = lean_ctor_get(x_15, 1); +lean_inc(x_25); +x_26 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_15, x_1, x_25); +lean_ctor_set(x_11, 2, x_26); +x_27 = lean_st_ref_set(x_4, x_11, x_12); +x_28 = !lean_is_exclusive(x_27); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = lean_ctor_get(x_27, 0); +lean_dec(x_29); +x_30 = lean_box(0); +lean_ctor_set(x_27, 0, x_30); +return x_27; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_27, 1); +lean_inc(x_31); +lean_dec(x_27); +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; 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_11); +x_34 = lean_ctor_get(x_15, 1); +lean_inc(x_34); +x_35 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_15, x_1, x_34); +x_36 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_36, 0, x_13); +lean_ctor_set(x_36, 1, x_14); +lean_ctor_set(x_36, 2, x_35); +lean_ctor_set(x_36, 3, x_16); +lean_ctor_set(x_36, 4, x_17); +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; +} else { + lean_dec_ref(x_37); + x_39 = lean_box(0); +} +x_40 = lean_box(0); +if (lean_is_scalar(x_39)) { + x_41 = lean_alloc_ctor(0, 2, 0); +} else { + x_41 = x_39; +} +lean_ctor_set(x_41, 0, x_40); +lean_ctor_set(x_41, 1, x_38); +return x_41; +} +} +else +{ +lean_object* x_42; uint8_t x_43; +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_1); +x_42 = lean_st_ref_set(x_4, x_11, x_12); +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; +} +} +} +} +static lean_object* _init_l_Lean_Meta_Simp_recordSimpTheorem___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Simp_recordSimpTheorem___lambda__1___boxed), 9, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordSimpTheorem(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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_33; lean_object* x_34; uint8_t x_35; +x_33 = l_Lean_isDiagnosticsEnabled(x_7, x_8, x_9); +x_34 = lean_ctor_get(x_33, 0); +lean_inc(x_34); +x_35 = lean_unbox(x_34); +lean_dec(x_34); +if (x_35 == 0) +{ +lean_object* x_36; +x_36 = lean_ctor_get(x_33, 1); +lean_inc(x_36); +lean_dec(x_33); +x_10 = x_36; +goto block_32; +} +else +{ +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_37 = lean_ctor_get(x_33, 1); +lean_inc(x_37); +lean_dec(x_33); +x_38 = lean_st_ref_take(x_4, x_37); +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_39, 4); +lean_inc(x_40); +x_41 = lean_ctor_get(x_38, 1); +lean_inc(x_41); +lean_dec(x_38); +x_42 = !lean_is_exclusive(x_39); +if (x_42 == 0) +{ +lean_object* x_43; uint8_t x_44; +x_43 = lean_ctor_get(x_39, 4); +lean_dec(x_43); +x_44 = !lean_is_exclusive(x_40); +if (x_44 == 0) +{ +lean_object* x_45; lean_object* x_46; +x_45 = lean_ctor_get(x_40, 0); +lean_inc(x_1); +lean_inc(x_45); +x_46 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(x_45, x_1); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_47 = lean_unsigned_to_nat(1u); +lean_inc(x_1); +x_48 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_45, x_1, x_47); +lean_ctor_set(x_40, 0, x_48); +x_49 = lean_st_ref_set(x_4, x_39, x_41); +x_50 = lean_ctor_get(x_49, 1); +lean_inc(x_50); +lean_dec(x_49); +x_10 = x_50; +goto block_32; +} +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; +x_51 = lean_ctor_get(x_46, 0); +lean_inc(x_51); +lean_dec(x_46); +x_52 = lean_unsigned_to_nat(1u); +x_53 = lean_nat_add(x_51, x_52); +lean_dec(x_51); +lean_inc(x_1); +x_54 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_45, x_1, x_53); +lean_ctor_set(x_40, 0, x_54); +x_55 = lean_st_ref_set(x_4, x_39, x_41); +x_56 = lean_ctor_get(x_55, 1); +lean_inc(x_56); +lean_dec(x_55); +x_10 = x_56; +goto block_32; +} +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_57 = lean_ctor_get(x_40, 0); +x_58 = lean_ctor_get(x_40, 1); +x_59 = lean_ctor_get(x_40, 2); +x_60 = lean_ctor_get(x_40, 3); +lean_inc(x_60); +lean_inc(x_59); +lean_inc(x_58); +lean_inc(x_57); +lean_dec(x_40); +lean_inc(x_1); +lean_inc(x_57); +x_61 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(x_57, x_1); +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; +x_62 = lean_unsigned_to_nat(1u); +lean_inc(x_1); +x_63 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_57, x_1, x_62); +x_64 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_64, 0, x_63); +lean_ctor_set(x_64, 1, x_58); +lean_ctor_set(x_64, 2, x_59); +lean_ctor_set(x_64, 3, x_60); +lean_ctor_set(x_39, 4, x_64); +x_65 = lean_st_ref_set(x_4, x_39, x_41); +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +x_10 = x_66; +goto block_32; +} +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; +x_67 = lean_ctor_get(x_61, 0); +lean_inc(x_67); +lean_dec(x_61); +x_68 = lean_unsigned_to_nat(1u); +x_69 = lean_nat_add(x_67, x_68); +lean_dec(x_67); +lean_inc(x_1); +x_70 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_57, x_1, x_69); +x_71 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_71, 1, x_58); +lean_ctor_set(x_71, 2, x_59); +lean_ctor_set(x_71, 3, x_60); +lean_ctor_set(x_39, 4, x_71); +x_72 = lean_st_ref_set(x_4, x_39, x_41); +x_73 = lean_ctor_get(x_72, 1); +lean_inc(x_73); +lean_dec(x_72); +x_10 = x_73; +goto block_32; +} +} +} +else +{ +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; +x_74 = lean_ctor_get(x_39, 0); +x_75 = lean_ctor_get(x_39, 1); +x_76 = lean_ctor_get(x_39, 2); +x_77 = lean_ctor_get(x_39, 3); +lean_inc(x_77); +lean_inc(x_76); +lean_inc(x_75); +lean_inc(x_74); +lean_dec(x_39); +x_78 = lean_ctor_get(x_40, 0); +lean_inc(x_78); +x_79 = lean_ctor_get(x_40, 1); +lean_inc(x_79); +x_80 = lean_ctor_get(x_40, 2); +lean_inc(x_80); +x_81 = lean_ctor_get(x_40, 3); +lean_inc(x_81); +if (lean_is_exclusive(x_40)) { + lean_ctor_release(x_40, 0); + lean_ctor_release(x_40, 1); + lean_ctor_release(x_40, 2); + lean_ctor_release(x_40, 3); + x_82 = x_40; +} else { + lean_dec_ref(x_40); + x_82 = lean_box(0); +} +lean_inc(x_1); +lean_inc(x_78); +x_83 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__1(x_78, x_1); +if (lean_obj_tag(x_83) == 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_unsigned_to_nat(1u); +lean_inc(x_1); +x_85 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_78, x_1, x_84); +if (lean_is_scalar(x_82)) { + x_86 = lean_alloc_ctor(0, 4, 0); +} else { + x_86 = x_82; +} +lean_ctor_set(x_86, 0, x_85); +lean_ctor_set(x_86, 1, x_79); +lean_ctor_set(x_86, 2, x_80); +lean_ctor_set(x_86, 3, x_81); +x_87 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_87, 0, x_74); +lean_ctor_set(x_87, 1, x_75); +lean_ctor_set(x_87, 2, x_76); +lean_ctor_set(x_87, 3, x_77); +lean_ctor_set(x_87, 4, x_86); +x_88 = lean_st_ref_set(x_4, x_87, x_41); +x_89 = lean_ctor_get(x_88, 1); +lean_inc(x_89); +lean_dec(x_88); +x_10 = x_89; +goto block_32; +} +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; +x_90 = lean_ctor_get(x_83, 0); +lean_inc(x_90); +lean_dec(x_83); +x_91 = lean_unsigned_to_nat(1u); +x_92 = lean_nat_add(x_90, x_91); +lean_dec(x_90); +lean_inc(x_1); +x_93 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Simp_recordTriedSimpTheorem___spec__4(x_78, x_1, x_92); +if (lean_is_scalar(x_82)) { + x_94 = lean_alloc_ctor(0, 4, 0); +} else { + x_94 = x_82; +} +lean_ctor_set(x_94, 0, x_93); +lean_ctor_set(x_94, 1, x_79); +lean_ctor_set(x_94, 2, x_80); +lean_ctor_set(x_94, 3, x_81); +x_95 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_95, 0, x_74); +lean_ctor_set(x_95, 1, x_75); +lean_ctor_set(x_95, 2, x_76); +lean_ctor_set(x_95, 3, x_77); +lean_ctor_set(x_95, 4, x_94); +x_96 = lean_st_ref_set(x_4, x_95, x_41); +x_97 = lean_ctor_get(x_96, 1); +lean_inc(x_97); +lean_dec(x_96); +x_10 = x_97; +goto block_32; +} +} +} +block_32: +{ +lean_object* x_11; +x_11 = l_Lean_Meta_Simp_recordSimpTheorem___closed__1; +if (lean_obj_tag(x_1) == 0) +{ +uint8_t x_12; +x_12 = lean_ctor_get_uint8(x_1, sizeof(void*)*1 + 1); +if (x_12 == 0) +{ +lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; +x_13 = lean_ctor_get(x_1, 0); +lean_inc(x_13); +x_14 = lean_ctor_get_uint8(x_1, sizeof(void*)*1); +x_15 = l_Lean_Meta_isEqnThm_x3f(x_13, x_7, x_8, x_10); +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_dec(x_15); +x_18 = lean_apply_9(x_11, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_17); +return x_18; +} +else +{ +uint8_t x_19; +x_19 = !lean_is_exclusive(x_1); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_object* x_24; +x_20 = lean_ctor_get(x_1, 0); +lean_dec(x_20); +x_21 = lean_ctor_get(x_15, 1); +lean_inc(x_21); +lean_dec(x_15); +x_22 = lean_ctor_get(x_16, 0); +lean_inc(x_22); +lean_dec(x_16); +x_23 = 0; +lean_ctor_set(x_1, 0, x_22); +lean_ctor_set_uint8(x_1, sizeof(void*)*1 + 1, x_23); +x_24 = lean_apply_9(x_11, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_21); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_1); +x_25 = lean_ctor_get(x_15, 1); +lean_inc(x_25); +lean_dec(x_15); +x_26 = lean_ctor_get(x_16, 0); +lean_inc(x_26); +lean_dec(x_16); +x_27 = 0; +x_28 = lean_alloc_ctor(0, 1, 2); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set_uint8(x_28, sizeof(void*)*1, x_14); +lean_ctor_set_uint8(x_28, sizeof(void*)*1 + 1, x_27); +x_29 = lean_apply_9(x_11, x_28, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_25); +return x_29; +} +} +} +else +{ +lean_object* x_30; +x_30 = lean_apply_9(x_11, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10); +return x_30; +} +} +else +{ +lean_object* x_31; +x_31 = lean_apply_9(x_11, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_10); +return x_31; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Simp_recordSimpTheorem___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_Simp_recordSimpTheorem___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_Simp_recordSimpTheorem___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_Simp_recordSimpTheorem___spec__2(x_1, x_4, x_3); +x_6 = lean_box(x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at_Lean_Meta_Simp_recordSimpTheorem___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_Simp_recordSimpTheorem___spec__1(x_1, x_2); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordSimpTheorem___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_Simp_recordSimpTheorem___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_Meta_Simp_recordCongrTheorem(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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 = l_Lean_isDiagnosticsEnabled(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) +{ +uint8_t x_13; +lean_dec(x_1); +x_13 = !lean_is_exclusive(x_10); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_10, 0); +lean_dec(x_14); +x_15 = lean_box(0); +lean_ctor_set(x_10, 0, x_15); +return x_10; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_10, 1); +lean_inc(x_16); +lean_dec(x_10); +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_16); +return x_18; +} +} +else +{ +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_19 = lean_ctor_get(x_10, 1); +lean_inc(x_19); +lean_dec(x_10); +x_20 = lean_st_ref_take(x_4, x_19); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_21, 4); +lean_inc(x_22); +x_23 = lean_ctor_get(x_20, 1); +lean_inc(x_23); +lean_dec(x_20); +x_24 = !lean_is_exclusive(x_21); +if (x_24 == 0) +{ +lean_object* x_25; uint8_t x_26; +x_25 = lean_ctor_get(x_21, 4); +lean_dec(x_25); +x_26 = !lean_is_exclusive(x_22); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_22, 2); +lean_inc(x_1); +lean_inc(x_27); +x_28 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Kernel_Diagnostics_recordUnfold___spec__1(x_27, x_1); +if (lean_obj_tag(x_28) == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_29 = lean_unsigned_to_nat(1u); +x_30 = l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(x_27, x_1, x_29); +lean_ctor_set(x_22, 2, x_30); +x_31 = lean_st_ref_set(x_4, x_21, x_23); +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 +{ +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_28, 0); +lean_inc(x_38); +lean_dec(x_28); +x_39 = lean_unsigned_to_nat(1u); +x_40 = lean_nat_add(x_38, x_39); +lean_dec(x_38); +x_41 = l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(x_27, x_1, x_40); +lean_ctor_set(x_22, 2, x_41); +x_42 = lean_st_ref_set(x_4, x_21, x_23); +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; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_49 = lean_ctor_get(x_22, 0); +x_50 = lean_ctor_get(x_22, 1); +x_51 = lean_ctor_get(x_22, 2); +x_52 = lean_ctor_get(x_22, 3); +lean_inc(x_52); +lean_inc(x_51); +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_22); +lean_inc(x_1); +lean_inc(x_51); +x_53 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Kernel_Diagnostics_recordUnfold___spec__1(x_51, x_1); +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; +x_54 = lean_unsigned_to_nat(1u); +x_55 = l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(x_51, x_1, x_54); +x_56 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_56, 0, x_49); +lean_ctor_set(x_56, 1, x_50); +lean_ctor_set(x_56, 2, x_55); +lean_ctor_set(x_56, 3, x_52); +lean_ctor_set(x_21, 4, x_56); +x_57 = lean_st_ref_set(x_4, x_21, x_23); +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); +} +x_60 = lean_box(0); +if (lean_is_scalar(x_59)) { + x_61 = lean_alloc_ctor(0, 2, 0); +} else { + x_61 = x_59; +} +lean_ctor_set(x_61, 0, x_60); +lean_ctor_set(x_61, 1, x_58); +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; +x_62 = lean_ctor_get(x_53, 0); +lean_inc(x_62); +lean_dec(x_53); +x_63 = lean_unsigned_to_nat(1u); +x_64 = lean_nat_add(x_62, x_63); +lean_dec(x_62); +x_65 = l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(x_51, x_1, x_64); +x_66 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_66, 0, x_49); +lean_ctor_set(x_66, 1, x_50); +lean_ctor_set(x_66, 2, x_65); +lean_ctor_set(x_66, 3, x_52); +lean_ctor_set(x_21, 4, x_66); +x_67 = lean_st_ref_set(x_4, x_21, x_23); +x_68 = lean_ctor_get(x_67, 1); +lean_inc(x_68); +if (lean_is_exclusive(x_67)) { + lean_ctor_release(x_67, 0); + lean_ctor_release(x_67, 1); + x_69 = x_67; +} else { + lean_dec_ref(x_67); + x_69 = lean_box(0); +} +x_70 = lean_box(0); +if (lean_is_scalar(x_69)) { + x_71 = lean_alloc_ctor(0, 2, 0); +} else { + x_71 = x_69; +} +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_71, 1, x_68); +return x_71; +} +} +} +else +{ +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_72 = lean_ctor_get(x_21, 0); +x_73 = lean_ctor_get(x_21, 1); +x_74 = lean_ctor_get(x_21, 2); +x_75 = lean_ctor_get(x_21, 3); +lean_inc(x_75); +lean_inc(x_74); +lean_inc(x_73); +lean_inc(x_72); +lean_dec(x_21); +x_76 = lean_ctor_get(x_22, 0); +lean_inc(x_76); +x_77 = lean_ctor_get(x_22, 1); +lean_inc(x_77); +x_78 = lean_ctor_get(x_22, 2); +lean_inc(x_78); +x_79 = lean_ctor_get(x_22, 3); +lean_inc(x_79); +if (lean_is_exclusive(x_22)) { + lean_ctor_release(x_22, 0); + lean_ctor_release(x_22, 1); + lean_ctor_release(x_22, 2); + lean_ctor_release(x_22, 3); + x_80 = x_22; +} else { + lean_dec_ref(x_22); + x_80 = lean_box(0); +} +lean_inc(x_1); +lean_inc(x_78); +x_81 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Kernel_Diagnostics_recordUnfold___spec__1(x_78, x_1); +if (lean_obj_tag(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; +x_82 = lean_unsigned_to_nat(1u); +x_83 = l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(x_78, x_1, x_82); +if (lean_is_scalar(x_80)) { + x_84 = lean_alloc_ctor(0, 4, 0); +} else { + x_84 = x_80; +} +lean_ctor_set(x_84, 0, x_76); +lean_ctor_set(x_84, 1, x_77); +lean_ctor_set(x_84, 2, x_83); +lean_ctor_set(x_84, 3, x_79); +x_85 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_85, 0, x_72); +lean_ctor_set(x_85, 1, x_73); +lean_ctor_set(x_85, 2, x_74); +lean_ctor_set(x_85, 3, x_75); +lean_ctor_set(x_85, 4, x_84); +x_86 = lean_st_ref_set(x_4, x_85, x_23); +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_86); + x_88 = lean_box(0); +} +x_89 = lean_box(0); +if (lean_is_scalar(x_88)) { + x_90 = lean_alloc_ctor(0, 2, 0); +} else { + x_90 = x_88; +} +lean_ctor_set(x_90, 0, x_89); +lean_ctor_set(x_90, 1, x_87); +return x_90; +} +else +{ +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_91 = lean_ctor_get(x_81, 0); +lean_inc(x_91); +lean_dec(x_81); +x_92 = lean_unsigned_to_nat(1u); +x_93 = lean_nat_add(x_91, x_92); +lean_dec(x_91); +x_94 = l_Lean_PersistentHashMap_insert___at_Lean_Kernel_Diagnostics_recordUnfold___spec__4(x_78, x_1, x_93); +if (lean_is_scalar(x_80)) { + x_95 = lean_alloc_ctor(0, 4, 0); +} else { + x_95 = x_80; +} +lean_ctor_set(x_95, 0, x_76); +lean_ctor_set(x_95, 1, x_77); +lean_ctor_set(x_95, 2, x_94); +lean_ctor_set(x_95, 3, x_79); +x_96 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_96, 0, x_72); +lean_ctor_set(x_96, 1, x_73); +lean_ctor_set(x_96, 2, x_74); +lean_ctor_set(x_96, 3, x_75); +lean_ctor_set(x_96, 4, x_95); +x_97 = lean_st_ref_set(x_4, x_96, x_23); +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(0); +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; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordCongrTheorem___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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_Simp_recordCongrTheorem(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 uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__3(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; uint8_t x_7; +x_6 = lean_array_uget(x_2, x_3); +x_7 = l_Lean_PersistentArray_anyMAux___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__2(x_1, x_6); +if (x_7 == 0) +{ +size_t x_8; size_t x_9; +x_8 = 1; +x_9 = lean_usize_add(x_3, x_8); +x_3 = x_9; +goto _start; +} +else +{ +uint8_t x_11; +x_11 = 1; +return x_11; +} +} +else +{ +uint8_t x_12; +x_12 = 0; +return x_12; +} +} +} +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__4(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; size_t x_7; size_t x_8; uint8_t x_9; +x_6 = lean_array_uget(x_2, x_3); +x_7 = lean_ptr_addr(x_1); +x_8 = lean_ptr_addr(x_6); +lean_dec(x_6); +x_9 = lean_usize_dec_eq(x_7, x_8); +if (x_9 == 0) +{ +size_t x_10; size_t x_11; +x_10 = 1; +x_11 = lean_usize_add(x_3, x_10); +x_3 = x_11; +goto _start; +} +else +{ +uint8_t x_13; +x_13 = 1; +return x_13; +} +} +else +{ +uint8_t x_14; +x_14 = 0; +return x_14; +} +} +} +LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyMAux___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__2(lean_object* x_1, lean_object* x_2) { +_start: +{ +if (lean_obj_tag(x_2) == 0) +{ +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); +lean_dec(x_2); +x_4 = lean_array_get_size(x_3); +x_5 = lean_unsigned_to_nat(0u); +x_6 = lean_nat_dec_lt(x_5, x_4); +if (x_6 == 0) +{ +uint8_t x_7; +lean_dec(x_4); +lean_dec(x_3); +x_7 = 0; +return x_7; +} +else +{ +size_t x_8; size_t x_9; uint8_t x_10; +x_8 = 0; +x_9 = lean_usize_of_nat(x_4); +lean_dec(x_4); +x_10 = l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__3(x_1, x_3, x_8, x_9); +lean_dec(x_3); +return x_10; +} +} +else +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_11 = lean_ctor_get(x_2, 0); +lean_inc(x_11); +lean_dec(x_2); +x_12 = lean_array_get_size(x_11); +x_13 = lean_unsigned_to_nat(0u); +x_14 = lean_nat_dec_lt(x_13, x_12); +if (x_14 == 0) +{ +uint8_t x_15; +lean_dec(x_12); +lean_dec(x_11); +x_15 = 0; +return x_15; +} +else +{ +size_t x_16; size_t x_17; uint8_t x_18; +x_16 = 0; +x_17 = lean_usize_of_nat(x_12); +lean_dec(x_12); +x_18 = l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__4(x_1, x_11, x_16, x_17); +lean_dec(x_11); +return x_18; +} +} +} +} +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__5(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; size_t x_7; size_t x_8; uint8_t x_9; +x_6 = lean_array_uget(x_2, x_3); +x_7 = lean_ptr_addr(x_1); +x_8 = lean_ptr_addr(x_6); +lean_dec(x_6); +x_9 = lean_usize_dec_eq(x_7, x_8); +if (x_9 == 0) +{ +size_t x_10; size_t x_11; +x_10 = 1; +x_11 = lean_usize_add(x_3, x_10); +x_3 = x_11; +goto _start; +} +else +{ +uint8_t x_13; +x_13 = 1; +return x_13; +} +} +else +{ +uint8_t x_14; +x_14 = 0; +return x_14; +} +} +} +LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyM___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +x_3 = lean_ctor_get(x_2, 0); +lean_inc(x_3); +x_4 = l_Lean_PersistentArray_anyMAux___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__2(x_1, 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_ctor_get(x_2, 1); +lean_inc(x_5); +lean_dec(x_2); +x_6 = lean_array_get_size(x_5); +x_7 = lean_unsigned_to_nat(0u); +x_8 = lean_nat_dec_lt(x_7, x_6); +if (x_8 == 0) +{ +uint8_t x_9; +lean_dec(x_6); +lean_dec(x_5); +x_9 = 0; +return x_9; +} +else +{ +size_t x_10; size_t x_11; uint8_t x_12; +x_10 = 0; +x_11 = lean_usize_of_nat(x_6); +lean_dec(x_6); +x_12 = l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__5(x_1, x_5, x_10, x_11); +lean_dec(x_5); +return x_12; +} +} +else +{ +lean_dec(x_2); +return x_4; +} +} +} +LEAN_EXPORT uint8_t l_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +x_3 = lean_ctor_get(x_2, 3); +lean_inc(x_3); +lean_dec(x_2); +x_4 = l_Lean_PersistentArray_anyM___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__1(x_1, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__3___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_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__3(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_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___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; 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_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__4(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_Lean_PersistentArray_anyMAux___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__2___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_PersistentArray_anyMAux___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__2(x_1, x_2); +lean_dec(x_1); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___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; 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_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__5(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_Lean_PersistentArray_anyM___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__1___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_PersistentArray_anyM___at_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___spec__1(x_1, x_2); +lean_dec(x_1); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1(x_1, x_2); +lean_dec(x_1); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordTheoremWithBadKeys(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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 = l_Lean_isDiagnosticsEnabled(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) +{ +uint8_t x_13; +lean_dec(x_1); +x_13 = !lean_is_exclusive(x_10); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_10, 0); +lean_dec(x_14); +x_15 = lean_box(0); +lean_ctor_set(x_10, 0, x_15); +return x_10; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_10, 1); +lean_inc(x_16); +lean_dec(x_10); +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_16); +return x_18; +} +} +else +{ +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_10, 1); +lean_inc(x_19); +lean_dec(x_10); +x_20 = lean_st_ref_take(x_4, 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_is_exclusive(x_21); +if (x_23 == 0) +{ +lean_object* x_24; uint8_t x_25; +x_24 = lean_ctor_get(x_21, 4); +lean_inc(x_24); +x_25 = l_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1(x_1, x_24); +if (x_25 == 0) +{ +uint8_t x_26; +x_26 = !lean_is_exclusive(x_24); +if (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_24, 3); +x_28 = l_Lean_PersistentArray_push___rarg(x_27, x_1); +lean_ctor_set(x_24, 3, x_28); +x_29 = lean_st_ref_set(x_4, x_21, x_22); +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); +lean_dec(x_31); +x_32 = lean_box(0); +lean_ctor_set(x_29, 0, x_32); +return x_29; +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_29, 1); +lean_inc(x_33); +lean_dec(x_29); +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_33); +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; +x_36 = lean_ctor_get(x_24, 0); +x_37 = lean_ctor_get(x_24, 1); +x_38 = lean_ctor_get(x_24, 2); +x_39 = lean_ctor_get(x_24, 3); +lean_inc(x_39); +lean_inc(x_38); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_24); +x_40 = l_Lean_PersistentArray_push___rarg(x_39, x_1); +x_41 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_41, 0, x_36); +lean_ctor_set(x_41, 1, x_37); +lean_ctor_set(x_41, 2, x_38); +lean_ctor_set(x_41, 3, x_40); +lean_ctor_set(x_21, 4, x_41); +x_42 = lean_st_ref_set(x_4, x_21, x_22); +x_43 = lean_ctor_get(x_42, 1); +lean_inc(x_43); +if (lean_is_exclusive(x_42)) { + lean_ctor_release(x_42, 0); + lean_ctor_release(x_42, 1); + x_44 = x_42; +} else { + lean_dec_ref(x_42); + x_44 = lean_box(0); +} +x_45 = lean_box(0); +if (lean_is_scalar(x_44)) { + x_46 = lean_alloc_ctor(0, 2, 0); +} else { + x_46 = x_44; +} +lean_ctor_set(x_46, 0, x_45); +lean_ctor_set(x_46, 1, x_43); +return x_46; +} +} +else +{ +lean_object* x_47; uint8_t x_48; +lean_dec(x_1); +x_47 = lean_st_ref_set(x_4, x_21, x_22); +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(0); +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(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_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_21, 0); +x_55 = lean_ctor_get(x_21, 1); +x_56 = lean_ctor_get(x_21, 2); +x_57 = lean_ctor_get(x_21, 3); +x_58 = lean_ctor_get(x_21, 4); +lean_inc(x_58); +lean_inc(x_57); +lean_inc(x_56); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_21); +lean_inc(x_58); +x_59 = l_Lean_Meta_Simp_recordTheoremWithBadKeys_unsafe__1(x_1, x_58); +if (x_59 == 0) +{ +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_60 = lean_ctor_get(x_58, 0); +lean_inc(x_60); +x_61 = lean_ctor_get(x_58, 1); +lean_inc(x_61); +x_62 = lean_ctor_get(x_58, 2); +lean_inc(x_62); +x_63 = lean_ctor_get(x_58, 3); +lean_inc(x_63); +if (lean_is_exclusive(x_58)) { + lean_ctor_release(x_58, 0); + lean_ctor_release(x_58, 1); + lean_ctor_release(x_58, 2); + lean_ctor_release(x_58, 3); + x_64 = x_58; +} else { + lean_dec_ref(x_58); + x_64 = lean_box(0); +} +x_65 = l_Lean_PersistentArray_push___rarg(x_63, x_1); +if (lean_is_scalar(x_64)) { + x_66 = lean_alloc_ctor(0, 4, 0); +} else { + x_66 = x_64; +} +lean_ctor_set(x_66, 0, x_60); +lean_ctor_set(x_66, 1, x_61); +lean_ctor_set(x_66, 2, x_62); +lean_ctor_set(x_66, 3, x_65); +x_67 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_67, 0, x_54); +lean_ctor_set(x_67, 1, x_55); +lean_ctor_set(x_67, 2, x_56); +lean_ctor_set(x_67, 3, x_57); +lean_ctor_set(x_67, 4, x_66); +x_68 = lean_st_ref_set(x_4, x_67, x_22); +x_69 = lean_ctor_get(x_68, 1); +lean_inc(x_69); +if (lean_is_exclusive(x_68)) { + lean_ctor_release(x_68, 0); + lean_ctor_release(x_68, 1); + x_70 = x_68; +} else { + lean_dec_ref(x_68); + x_70 = lean_box(0); +} +x_71 = lean_box(0); +if (lean_is_scalar(x_70)) { + x_72 = lean_alloc_ctor(0, 2, 0); +} else { + x_72 = x_70; +} +lean_ctor_set(x_72, 0, x_71); +lean_ctor_set(x_72, 1, x_69); +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; +lean_dec(x_1); +x_73 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_73, 0, x_54); +lean_ctor_set(x_73, 1, x_55); +lean_ctor_set(x_73, 2, x_56); +lean_ctor_set(x_73, 3, x_57); +lean_ctor_set(x_73, 4, x_58); +x_74 = lean_st_ref_set(x_4, x_73, x_22); +x_75 = lean_ctor_get(x_74, 1); +lean_inc(x_75); +if (lean_is_exclusive(x_74)) { + lean_ctor_release(x_74, 0); + lean_ctor_release(x_74, 1); + x_76 = x_74; +} else { + lean_dec_ref(x_74); + x_76 = lean_box(0); +} +x_77 = lean_box(0); +if (lean_is_scalar(x_76)) { + x_78 = lean_alloc_ctor(0, 2, 0); +} else { + x_78 = x_76; +} +lean_ctor_set(x_78, 0, x_77); +lean_ctor_set(x_78, 1, x_75); +return x_78; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Simp_recordTheoremWithBadKeys___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, 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_Simp_recordTheoremWithBadKeys(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_Meta_Simp_Result_getProof(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 = lean_ctor_get(x_1, 1); +lean_inc(x_7); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; +x_8 = lean_ctor_get(x_1, 0); +lean_inc(x_8); +lean_dec(x_1); +x_9 = l_Lean_Meta_mkEqRefl(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_10 = lean_ctor_get(x_7, 0); +lean_inc(x_10); +lean_dec(x_7); +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; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Result_getProof_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) { +_start: +{ +lean_object* x_8; +x_8 = lean_ctor_get(x_2, 1); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; +x_9 = lean_ctor_get(x_2, 0); +lean_inc(x_9); +lean_dec(x_2); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_9); +lean_inc(x_1); +x_10 = l_Lean_Meta_isExprDefEq(x_1, x_9, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; uint8_t x_12; +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; +x_13 = lean_ctor_get(x_10, 1); +lean_inc(x_13); +lean_dec(x_10); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_9); +x_14 = l_Lean_Meta_mkEqRefl(x_9, x_3, x_4, x_5, x_6, x_13); +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_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_17 = l_Lean_Meta_mkEq(x_1, x_9, x_3, x_4, x_5, x_6, x_16); +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); +x_20 = l_Lean_Meta_mkExpectedTypeHint(x_15, x_18, x_3, x_4, x_5, x_6, x_19); +return x_20; +} +else +{ +uint8_t x_21; +lean_dec(x_15); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_21 = !lean_is_exclusive(x_17); +if (x_21 == 0) +{ +return x_17; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_17, 0); +x_23 = lean_ctor_get(x_17, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_17); +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 +{ +uint8_t x_25; +lean_dec(x_9); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_25 = !lean_is_exclusive(x_14); +if (x_25 == 0) +{ +return x_14; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_14, 0); +x_27 = lean_ctor_get(x_14, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_14); +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_1); +x_29 = lean_ctor_get(x_10, 1); +lean_inc(x_29); +lean_dec(x_10); +x_30 = l_Lean_Meta_mkEqRefl(x_9, x_3, x_4, x_5, x_6, x_29); +return x_30; +} +} +else +{ +uint8_t x_31; +lean_dec(x_9); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_31 = !lean_is_exclusive(x_10); +if (x_31 == 0) +{ +return x_10; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_10, 0); +x_33 = lean_ctor_get(x_10, 1); +lean_inc(x_33); +lean_inc(x_32); +lean_dec(x_10); +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 +{ +lean_object* x_35; lean_object* x_36; +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_35 = lean_ctor_get(x_8, 0); +lean_inc(x_35); +lean_dec(x_8); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_7); +return x_36; +} +} +} +static lean_object* _init_l_Lean_Meta_Simp_Result_mkCast___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("cast", 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Simp_Result_mkCast___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_Simp_Result_mkCast___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Simp_Result_mkCast___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(2u); +x_2 = lean_mk_empty_array_with_capacity(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Simp_Result_mkCast(lean_object* x_1, 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 = l_Lean_Meta_Simp_Result_getProof(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; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +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_Meta_Simp_Result_mkCast___closed__3; +x_12 = lean_array_push(x_11, x_9); +x_13 = lean_array_push(x_12, x_2); +x_14 = l_Lean_Meta_Simp_Result_mkCast___closed__2; +x_15 = l_Lean_Meta_mkAppM(x_14, x_13, x_3, x_4, x_5, x_6, x_10); +return x_15; +} +else +{ +uint8_t x_16; +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_8); +if (x_16 == 0) +{ +return x_8; +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_8, 0); +x_18 = lean_ctor_get(x_8, 1); +lean_inc(x_18); +lean_inc(x_17); +lean_dec(x_8); +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_Meta_Simp_mkCongrFun(lean_object* x_1, 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_ctor_get(x_1, 1); +lean_inc(x_8); +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; lean_object* x_14; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_9 = lean_ctor_get(x_1, 0); +lean_inc(x_9); +lean_dec(x_1); +x_10 = l_Lean_Expr_app___override(x_9, x_2); +x_11 = lean_box(0); +x_12 = 1; +x_13 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_13, 0, x_10); +lean_ctor_set(x_13, 1, x_11); +lean_ctor_set_uint8(x_13, sizeof(void*)*2, 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_7); +return x_14; +} +else +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_8); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_8, 0); +lean_inc(x_2); +x_17 = l_Lean_Meta_mkCongrFun(x_16, x_2, x_3, x_4, x_5, x_6, x_7); +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; lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; +x_19 = lean_ctor_get(x_17, 0); +x_20 = lean_ctor_get(x_1, 0); +lean_inc(x_20); +lean_dec(x_1); +x_21 = l_Lean_Expr_app___override(x_20, x_2); +lean_ctor_set(x_8, 0, x_19); +x_22 = 1; +x_23 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_8); +lean_ctor_set_uint8(x_23, sizeof(void*)*2, x_22); +lean_ctor_set(x_17, 0, x_23); +return x_17; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; lean_object* x_30; +x_24 = lean_ctor_get(x_17, 0); +x_25 = lean_ctor_get(x_17, 1); +lean_inc(x_25); +lean_inc(x_24); +lean_dec(x_17); +x_26 = lean_ctor_get(x_1, 0); +lean_inc(x_26); +lean_dec(x_1); +x_27 = l_Lean_Expr_app___override(x_26, x_2); +lean_ctor_set(x_8, 0, x_24); +x_28 = 1; +x_29 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_8); +lean_ctor_set_uint8(x_29, sizeof(void*)*2, 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_25); +return x_30; +} +} +else +{ +uint8_t x_31; +lean_free_object(x_8); +lean_dec(x_2); +lean_dec(x_1); +x_31 = !lean_is_exclusive(x_17); +if (x_31 == 0) +{ +return x_17; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +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 = 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 +{ +lean_object* x_35; lean_object* x_36; +x_35 = lean_ctor_get(x_8, 0); +lean_inc(x_35); +lean_dec(x_8); +lean_inc(x_2); +x_36 = l_Lean_Meta_mkCongrFun(x_35, x_2, x_3, x_4, x_5, x_6, x_7); +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; uint8_t x_43; lean_object* x_44; lean_object* x_45; +x_37 = lean_ctor_get(x_36, 0); +lean_inc(x_37); +x_38 = lean_ctor_get(x_36, 1); +lean_inc(x_38); +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + x_39 = x_36; +} else { + lean_dec_ref(x_36); + x_39 = lean_box(0); +} +x_40 = lean_ctor_get(x_1, 0); +lean_inc(x_40); +lean_dec(x_1); +x_41 = l_Lean_Expr_app___override(x_40, x_2); +x_42 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_42, 0, x_37); +x_43 = 1; +x_44 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_44, 0, x_41); +lean_ctor_set(x_44, 1, x_42); +lean_ctor_set_uint8(x_44, sizeof(void*)*2, x_43); +if (lean_is_scalar(x_39)) { + x_45 = lean_alloc_ctor(0, 2, 0); +} else { + x_45 = x_39; +} +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_38); +return x_45; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +lean_dec(x_2); +lean_dec(x_1); +x_46 = lean_ctor_get(x_36, 0); +lean_inc(x_46); +x_47 = lean_ctor_get(x_36, 1); +lean_inc(x_47); +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + x_48 = x_36; +} else { + lean_dec_ref(x_36); + 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; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Simp_mkCongr(lean_object* x_1, 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 = lean_ctor_get(x_1, 0); +lean_inc(x_8); +x_9 = lean_ctor_get(x_2, 0); +lean_inc(x_9); +lean_inc(x_9); +lean_inc(x_8); +x_10 = l_Lean_Expr_app___override(x_8, x_9); +x_11 = lean_ctor_get(x_1, 1); +lean_inc(x_11); +lean_dec(x_1); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; +lean_dec(x_9); +x_12 = lean_ctor_get(x_2, 1); +lean_inc(x_12); +lean_dec(x_2); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; +lean_dec(x_8); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_13 = lean_box(0); +x_14 = 1; +x_15 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_15, 0, x_10); +lean_ctor_set(x_15, 1, x_13); +lean_ctor_set_uint8(x_15, sizeof(void*)*2, 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_7); +return x_16; +} +else +{ +uint8_t x_17; +x_17 = !lean_is_exclusive(x_12); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_12, 0); +x_19 = l_Lean_Meta_mkCongrArg(x_8, x_18, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_19) == 0) +{ +uint8_t x_20; +x_20 = !lean_is_exclusive(x_19); +if (x_20 == 0) +{ +lean_object* x_21; uint8_t x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_19, 0); +lean_ctor_set(x_12, 0, x_21); +x_22 = 1; +x_23 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_23, 0, x_10); +lean_ctor_set(x_23, 1, x_12); +lean_ctor_set_uint8(x_23, sizeof(void*)*2, x_22); +lean_ctor_set(x_19, 0, x_23); +return x_19; +} +else +{ +lean_object* x_24; lean_object* x_25; uint8_t 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); +lean_dec(x_19); +lean_ctor_set(x_12, 0, x_24); +x_26 = 1; +x_27 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_27, 0, x_10); +lean_ctor_set(x_27, 1, x_12); +lean_ctor_set_uint8(x_27, sizeof(void*)*2, 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); +return x_28; +} +} +else +{ +uint8_t x_29; +lean_free_object(x_12); +lean_dec(x_10); +x_29 = !lean_is_exclusive(x_19); +if (x_29 == 0) +{ +return x_19; +} +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); +lean_inc(x_31); +lean_inc(x_30); +lean_dec(x_19); +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; +x_33 = lean_ctor_get(x_12, 0); +lean_inc(x_33); +lean_dec(x_12); +x_34 = l_Lean_Meta_mkCongrArg(x_8, x_33, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_34) == 0) +{ +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_35 = lean_ctor_get(x_34, 0); +lean_inc(x_35); +x_36 = lean_ctor_get(x_34, 1); +lean_inc(x_36); +if (lean_is_exclusive(x_34)) { + lean_ctor_release(x_34, 0); + lean_ctor_release(x_34, 1); + x_37 = x_34; +} else { + lean_dec_ref(x_34); + x_37 = lean_box(0); +} +x_38 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_38, 0, x_35); +x_39 = 1; +x_40 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_40, 0, x_10); +lean_ctor_set(x_40, 1, x_38); +lean_ctor_set_uint8(x_40, sizeof(void*)*2, x_39); +if (lean_is_scalar(x_37)) { + x_41 = lean_alloc_ctor(0, 2, 0); +} else { + x_41 = x_37; +} +lean_ctor_set(x_41, 0, x_40); +lean_ctor_set(x_41, 1, x_36); +return x_41; +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_dec(x_10); +x_42 = lean_ctor_get(x_34, 0); +lean_inc(x_42); +x_43 = lean_ctor_get(x_34, 1); +lean_inc(x_43); +if (lean_is_exclusive(x_34)) { + lean_ctor_release(x_34, 0); + lean_ctor_release(x_34, 1); + x_44 = x_34; +} else { + lean_dec_ref(x_34); + x_44 = lean_box(0); +} +if (lean_is_scalar(x_44)) { + x_45 = lean_alloc_ctor(1, 2, 0); +} else { + x_45 = x_44; +} +lean_ctor_set(x_45, 0, x_42); +lean_ctor_set(x_45, 1, x_43); +return x_45; +} +} +} +} +else +{ +lean_object* x_46; +lean_dec(x_8); +x_46 = lean_ctor_get(x_2, 1); +lean_inc(x_46); +lean_dec(x_2); +if (lean_obj_tag(x_46) == 0) +{ +uint8_t x_47; +x_47 = !lean_is_exclusive(x_11); +if (x_47 == 0) +{ +lean_object* x_48; lean_object* x_49; +x_48 = lean_ctor_get(x_11, 0); +x_49 = l_Lean_Meta_mkCongrFun(x_48, x_9, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_49) == 0) +{ +uint8_t x_50; +x_50 = !lean_is_exclusive(x_49); +if (x_50 == 0) +{ +lean_object* x_51; uint8_t x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_49, 0); +lean_ctor_set(x_11, 0, x_51); +x_52 = 1; +x_53 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_53, 0, x_10); +lean_ctor_set(x_53, 1, x_11); +lean_ctor_set_uint8(x_53, sizeof(void*)*2, x_52); +lean_ctor_set(x_49, 0, x_53); +return x_49; +} +else +{ +lean_object* x_54; lean_object* x_55; uint8_t x_56; lean_object* x_57; lean_object* x_58; +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); +lean_ctor_set(x_11, 0, x_54); +x_56 = 1; +x_57 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_57, 0, x_10); +lean_ctor_set(x_57, 1, x_11); +lean_ctor_set_uint8(x_57, sizeof(void*)*2, 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_55); +return x_58; +} +} +else +{ +uint8_t x_59; +lean_free_object(x_11); +lean_dec(x_10); +x_59 = !lean_is_exclusive(x_49); +if (x_59 == 0) +{ +return x_49; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_60 = lean_ctor_get(x_49, 0); +x_61 = lean_ctor_get(x_49, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_49); +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; +x_63 = lean_ctor_get(x_11, 0); +lean_inc(x_63); +lean_dec(x_11); +x_64 = l_Lean_Meta_mkCongrFun(x_63, x_9, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_64) == 0) +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; uint8_t x_69; lean_object* x_70; lean_object* x_71; +x_65 = lean_ctor_get(x_64, 0); +lean_inc(x_65); +x_66 = lean_ctor_get(x_64, 1); +lean_inc(x_66); +if (lean_is_exclusive(x_64)) { + lean_ctor_release(x_64, 0); + lean_ctor_release(x_64, 1); + x_67 = x_64; +} else { + lean_dec_ref(x_64); + x_67 = lean_box(0); +} +x_68 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_68, 0, x_65); +x_69 = 1; +x_70 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_70, 0, x_10); +lean_ctor_set(x_70, 1, x_68); +lean_ctor_set_uint8(x_70, sizeof(void*)*2, x_69); +if (lean_is_scalar(x_67)) { + x_71 = lean_alloc_ctor(0, 2, 0); +} else { + x_71 = x_67; +} +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_71, 1, x_66); +return x_71; +} +else +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; +lean_dec(x_10); +x_72 = lean_ctor_get(x_64, 0); +lean_inc(x_72); +x_73 = lean_ctor_get(x_64, 1); +lean_inc(x_73); +if (lean_is_exclusive(x_64)) { + lean_ctor_release(x_64, 0); + lean_ctor_release(x_64, 1); + x_74 = x_64; +} else { + lean_dec_ref(x_64); + x_74 = lean_box(0); +} +if (lean_is_scalar(x_74)) { + x_75 = lean_alloc_ctor(1, 2, 0); +} else { + x_75 = x_74; +} +lean_ctor_set(x_75, 0, x_72); +lean_ctor_set(x_75, 1, x_73); +return x_75; +} +} +} +else +{ +lean_object* x_76; uint8_t x_77; +lean_dec(x_9); +x_76 = lean_ctor_get(x_11, 0); +lean_inc(x_76); +lean_dec(x_11); +x_77 = !lean_is_exclusive(x_46); +if (x_77 == 0) +{ +lean_object* x_78; lean_object* x_79; +x_78 = lean_ctor_get(x_46, 0); +x_79 = l_Lean_Meta_mkCongr(x_76, x_78, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_79) == 0) +{ +uint8_t x_80; +x_80 = !lean_is_exclusive(x_79); +if (x_80 == 0) +{ +lean_object* x_81; uint8_t x_82; lean_object* x_83; +x_81 = lean_ctor_get(x_79, 0); +lean_ctor_set(x_46, 0, x_81); +x_82 = 1; +x_83 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_83, 0, x_10); +lean_ctor_set(x_83, 1, x_46); +lean_ctor_set_uint8(x_83, sizeof(void*)*2, x_82); +lean_ctor_set(x_79, 0, x_83); +return x_79; +} +else +{ +lean_object* x_84; lean_object* x_85; uint8_t x_86; lean_object* x_87; lean_object* x_88; +x_84 = lean_ctor_get(x_79, 0); +x_85 = lean_ctor_get(x_79, 1); +lean_inc(x_85); +lean_inc(x_84); +lean_dec(x_79); +lean_ctor_set(x_46, 0, x_84); +x_86 = 1; +x_87 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_87, 0, x_10); +lean_ctor_set(x_87, 1, x_46); +lean_ctor_set_uint8(x_87, sizeof(void*)*2, x_86); +x_88 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_88, 0, x_87); +lean_ctor_set(x_88, 1, x_85); +return x_88; +} +} +else +{ +uint8_t x_89; +lean_free_object(x_46); +lean_dec(x_10); +x_89 = !lean_is_exclusive(x_79); +if (x_89 == 0) +{ +return x_79; +} +else +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; +x_90 = lean_ctor_get(x_79, 0); +x_91 = lean_ctor_get(x_79, 1); +lean_inc(x_91); +lean_inc(x_90); +lean_dec(x_79); +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; +} +} +} +else +{ +lean_object* x_93; lean_object* x_94; +x_93 = lean_ctor_get(x_46, 0); +lean_inc(x_93); +lean_dec(x_46); +x_94 = l_Lean_Meta_mkCongr(x_76, x_93, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_94) == 0) +{ +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; uint8_t x_99; lean_object* x_100; lean_object* x_101; +x_95 = lean_ctor_get(x_94, 0); +lean_inc(x_95); +x_96 = lean_ctor_get(x_94, 1); +lean_inc(x_96); +if (lean_is_exclusive(x_94)) { + lean_ctor_release(x_94, 0); + lean_ctor_release(x_94, 1); + x_97 = x_94; +} else { + lean_dec_ref(x_94); + x_97 = lean_box(0); +} +x_98 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_98, 0, x_95); +x_99 = 1; +x_100 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_100, 0, x_10); +lean_ctor_set(x_100, 1, x_98); +lean_ctor_set_uint8(x_100, sizeof(void*)*2, x_99); +if (lean_is_scalar(x_97)) { + x_101 = lean_alloc_ctor(0, 2, 0); +} else { + x_101 = x_97; +} +lean_ctor_set(x_101, 0, x_100); +lean_ctor_set(x_101, 1, x_96); +return x_101; +} +else +{ +lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_10); +x_102 = lean_ctor_get(x_94, 0); +lean_inc(x_102); +x_103 = lean_ctor_get(x_94, 1); +lean_inc(x_103); +if (lean_is_exclusive(x_94)) { + lean_ctor_release(x_94, 0); + lean_ctor_release(x_94, 1); + x_104 = x_94; +} else { + lean_dec_ref(x_94); + x_104 = lean_box(0); +} +if (lean_is_scalar(x_104)) { + x_105 = lean_alloc_ctor(1, 2, 0); +} else { + x_105 = x_104; +} +lean_ctor_set(x_105, 0, x_102); +lean_ctor_set(x_105, 1, x_103); +return x_105; +} +} +} +} +} +} +static lean_object* _init_l_Lean_Meta_Simp_mkImpCongr___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Lean.Expr", 9); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Simp_mkImpCongr___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Lean.Expr.updateForallE!", 24); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Simp_mkImpCongr___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("forall expected", 15); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Simp_mkImpCongr___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_Simp_mkImpCongr___closed__1; +x_2 = l_Lean_Meta_Simp_mkImpCongr___closed__2; +x_3 = lean_unsigned_to_nat(1744u); +x_4 = lean_unsigned_to_nat(24u); +x_5 = l_Lean_Meta_Simp_mkImpCongr___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_Simp_mkImpCongr(lean_object* x_1, lean_object* x_2, 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_2, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_3, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_2, 1); +lean_inc(x_11); +if (lean_obj_tag(x_1) == 7) +{ +lean_object* x_131; lean_object* x_132; lean_object* x_133; uint8_t x_134; lean_object* x_135; size_t x_136; size_t x_137; uint8_t x_138; +x_131 = lean_ctor_get(x_1, 0); +lean_inc(x_131); +x_132 = lean_ctor_get(x_1, 1); +lean_inc(x_132); +x_133 = lean_ctor_get(x_1, 2); +lean_inc(x_133); +x_134 = lean_ctor_get_uint8(x_1, sizeof(void*)*3 + 8); +lean_dec(x_1); +lean_inc(x_133); +lean_inc(x_132); +lean_inc(x_131); +x_135 = l_Lean_Expr_forallE___override(x_131, x_132, x_133, x_134); +x_136 = lean_ptr_addr(x_132); +lean_dec(x_132); +x_137 = lean_ptr_addr(x_9); +x_138 = lean_usize_dec_eq(x_136, x_137); +if (x_138 == 0) +{ +lean_object* x_139; +lean_dec(x_135); +lean_dec(x_133); +x_139 = l_Lean_Expr_forallE___override(x_131, x_9, x_10, x_134); +x_12 = x_139; +goto block_130; +} +else +{ +size_t x_140; size_t x_141; uint8_t x_142; +x_140 = lean_ptr_addr(x_133); +lean_dec(x_133); +x_141 = lean_ptr_addr(x_10); +x_142 = lean_usize_dec_eq(x_140, x_141); +if (x_142 == 0) +{ +lean_object* x_143; +lean_dec(x_135); +x_143 = l_Lean_Expr_forallE___override(x_131, x_9, x_10, x_134); +x_12 = x_143; +goto block_130; +} +else +{ +uint8_t x_144; +x_144 = l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_399_(x_134, x_134); +if (x_144 == 0) +{ +lean_object* x_145; +lean_dec(x_135); +x_145 = l_Lean_Expr_forallE___override(x_131, x_9, x_10, x_134); +x_12 = x_145; +goto block_130; +} +else +{ +lean_dec(x_131); +lean_dec(x_10); +lean_dec(x_9); +x_12 = x_135; +goto block_130; +} +} +} +} +else +{ +lean_object* x_146; lean_object* x_147; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_1); +x_146 = l_Lean_Meta_Simp_mkImpCongr___closed__4; +x_147 = l_panic___at_Lean_Expr_appFn_x21___spec__1(x_146); +x_12 = x_147; +goto block_130; +} +block_130: +{ +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_13; +x_13 = lean_ctor_get(x_3, 1); +lean_inc(x_13); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; uint8_t x_15; lean_object* x_16; lean_object* x_17; +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_14 = lean_box(0); +x_15 = 1; +x_16 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_16, 0, x_12); +lean_ctor_set(x_16, 1, x_14); +lean_ctor_set_uint8(x_16, sizeof(void*)*2, 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 +{ +uint8_t x_18; +x_18 = !lean_is_exclusive(x_13); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_13, 0); +lean_dec(x_19); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_20 = l_Lean_Meta_Simp_Result_getProof(x_2, x_4, x_5, x_6, x_7, x_8); +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_Lean_Meta_Simp_Result_getProof(x_3, 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; 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_Lean_Meta_mkImpCongr(x_21, x_24, x_4, x_5, x_6, x_7, 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; uint8_t x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_26, 0); +lean_ctor_set(x_13, 0, x_28); +x_29 = 1; +x_30 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_30, 0, x_12); +lean_ctor_set(x_30, 1, x_13); +lean_ctor_set_uint8(x_30, sizeof(void*)*2, x_29); +lean_ctor_set(x_26, 0, x_30); +return x_26; +} +else +{ +lean_object* x_31; lean_object* x_32; uint8_t 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); +lean_ctor_set(x_13, 0, x_31); +x_33 = 1; +x_34 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_34, 0, x_12); +lean_ctor_set(x_34, 1, x_13); +lean_ctor_set_uint8(x_34, sizeof(void*)*2, 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_free_object(x_13); +lean_dec(x_12); +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_21); +lean_free_object(x_13); +lean_dec(x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +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_free_object(x_13); lean_dec(x_12); lean_dec(x_7); @@ -13873,7 +16485,20 @@ lean_ctor_set(x_29, 1, x_16); return x_29; } } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__2(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, uint8_t 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_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__2(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, 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) { +_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; +x_18 = lean_array_push(x_7, x_1); +x_19 = lean_box(0); +x_20 = lean_box(x_4); +x_21 = lean_box(x_5); +x_22 = lean_box(x_8); +x_23 = lean_apply_15(x_2, x_3, x_18, x_20, x_21, x_6, x_22, x_19, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); +return x_23; +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___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, uint8_t 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) { _start: { uint8_t x_19; @@ -13901,7 +16526,7 @@ return x_30; } } } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__1() { +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__1() { _start: { lean_object* x_1; @@ -13909,7 +16534,7 @@ x_1 = lean_mk_string_from_bytes("Lean.Meta.Tactic.Simp.Types", 27); return x_1; } } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__2() { +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__2() { _start: { lean_object* x_1; @@ -13917,7 +16542,7 @@ x_1 = lean_mk_string_from_bytes("Lean.Meta.Simp.tryAutoCongrTheorem\?", 35); return x_1; } } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__3() { +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__3() { _start: { lean_object* x_1; @@ -13925,29 +16550,33 @@ x_1 = lean_mk_string_from_bytes("unreachable code has been reached", 33); return x_1; } } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__4() { +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___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_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__1; -x_2 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__2; -x_3 = lean_unsigned_to_nat(534u); +x_1 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__1; +x_2 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__2; +x_3 = lean_unsigned_to_nat(538u); x_4 = lean_unsigned_to_nat(11u); -x_5 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__3; +x_5 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(lean_object* x_1, uint8_t 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, 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_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(lean_object* x_1, uint8_t 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, 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) { _start: { -lean_object* x_19; +lean_object* x_19; lean_object* x_20; lean_dec(x_10); -x_19 = lean_box(x_2); -switch (lean_obj_tag(x_19)) { +lean_inc(x_1); +x_19 = lean_alloc_closure((void*)(l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__1___boxed), 16, 1); +lean_closure_set(x_19, 0, x_1); +x_20 = lean_box(x_2); +switch (lean_obj_tag(x_20)) { case 0: { -lean_object* x_20; +lean_object* x_21; +lean_dec(x_1); lean_inc(x_17); lean_inc(x_16); lean_inc(x_15); @@ -13955,18 +16584,214 @@ lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); -x_20 = lean_dsimp(x_3, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); -if (lean_obj_tag(x_20) == 0) +lean_inc(x_3); +x_21 = lean_dsimp(x_3, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +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; -x_21 = lean_ctor_get(x_20, 0); -lean_inc(x_21); -x_22 = lean_ctor_get(x_20, 1); +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 = lean_expr_eqv(x_3, x_22); +lean_dec(x_3); +if (x_24 == 0) +{ +uint8_t x_25; lean_object* x_26; lean_object* x_27; +x_25 = 1; +x_26 = lean_box(0); +x_27 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__2(x_22, x_19, x_4, x_6, x_7, x_8, x_5, x_25, x_26, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_23); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; +x_28 = lean_box(0); +x_29 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__2(x_22, x_19, x_4, x_6, x_7, x_8, x_5, x_9, x_28, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_23); +return x_29; +} +} +else +{ +uint8_t x_30; +lean_dec(x_19); +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_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_30 = !lean_is_exclusive(x_21); +if (x_30 == 0) +{ +return x_21; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_21, 0); +x_32 = lean_ctor_get(x_21, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_21); +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; +} +} +} +case 2: +{ +lean_object* x_34; +lean_dec(x_1); +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_3); +x_34 = lean_simp(x_3, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +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; lean_object* 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); +lean_inc(x_35); +x_37 = lean_array_push(x_4, x_35); +x_38 = lean_ctor_get(x_35, 0); +lean_inc(x_38); +lean_inc(x_38); +x_39 = lean_array_push(x_5, x_38); +x_40 = lean_ctor_get(x_35, 1); +lean_inc(x_40); +lean_dec(x_35); +if (lean_obj_tag(x_40) == 0) +{ +lean_object* x_41; lean_object* x_42; +x_41 = lean_box(0); +x_42 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_3, x_38, x_19, x_37, x_39, x_6, x_8, x_7, x_9, x_41, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_36); +lean_dec(x_38); +lean_dec(x_3); +return x_42; +} +else +{ +uint8_t x_43; lean_object* x_44; lean_object* x_45; +lean_dec(x_40); +x_43 = 1; +x_44 = lean_box(0); +x_45 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_3, x_38, x_19, x_37, x_39, x_6, x_8, x_43, x_9, x_44, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_36); +lean_dec(x_38); +lean_dec(x_3); +return x_45; +} +} +else +{ +uint8_t x_46; +lean_dec(x_19); +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_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_46 = !lean_is_exclusive(x_34); +if (x_46 == 0) +{ +return x_34; +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_34, 0); +x_48 = lean_ctor_get(x_34, 1); +lean_inc(x_48); +lean_inc(x_47); +lean_dec(x_34); +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; +} +} +} +case 3: +{ +lean_object* x_50; uint8_t x_51; lean_object* x_52; lean_object* x_53; +lean_dec(x_19); +x_50 = lean_array_push(x_5, x_3); +x_51 = 1; +x_52 = lean_box(0); +x_53 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__1(x_1, x_4, x_50, x_51, x_7, x_8, x_9, x_52, 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_11); +lean_dec(x_8); +return x_53; +} +case 5: +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +lean_dec(x_19); +x_54 = lean_array_push(x_5, x_3); +x_55 = lean_box(0); +x_56 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__1(x_1, x_4, x_54, x_6, x_7, x_8, x_9, x_55, 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_11); +lean_dec(x_8); +return x_56; +} +default: +{ +lean_object* x_57; lean_object* x_58; lean_dec(x_20); -x_23 = lean_array_push(x_5, x_21); -x_24 = lean_box(0); -x_25 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__1(x_1, x_4, x_23, x_6, x_7, x_8, x_9, x_24, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_22); +lean_dec(x_19); +lean_dec(x_3); +x_57 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__4; +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); +x_58 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__1(x_57, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +if (lean_obj_tag(x_58) == 0) +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; +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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__1(x_1, x_4, x_5, x_6, x_7, x_8, x_9, x_59, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_60); lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); @@ -13974,12 +16799,13 @@ lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); +lean_dec(x_59); lean_dec(x_8); -return x_25; +return x_61; } else { -uint8_t x_26; +uint8_t x_62; lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); @@ -13991,225 +16817,421 @@ lean_dec(x_8); lean_dec(x_5); lean_dec(x_4); lean_dec(x_1); -x_26 = !lean_is_exclusive(x_20); -if (x_26 == 0) +x_62 = !lean_is_exclusive(x_58); +if (x_62 == 0) { -return x_20; +return x_58; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_20, 0); -x_28 = lean_ctor_get(x_20, 1); -lean_inc(x_28); -lean_inc(x_27); -lean_dec(x_20); -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_63; lean_object* x_64; lean_object* x_65; +x_63 = lean_ctor_get(x_58, 0); +x_64 = lean_ctor_get(x_58, 1); +lean_inc(x_64); +lean_inc(x_63); +lean_dec(x_58); +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; } } } -case 2: +} +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2(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) { +_start: { -lean_object* x_30; lean_object* x_31; -x_30 = lean_alloc_closure((void*)(l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__1___boxed), 16, 1); -lean_closure_set(x_30, 0, x_1); -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_3); -x_31 = lean_simp(x_3, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); -if (lean_obj_tag(x_31) == 0) +uint8_t x_16; +x_16 = lean_usize_dec_lt(x_6, x_5); +if (x_16 == 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); -lean_inc(x_32); -x_34 = lean_array_push(x_4, x_32); -x_35 = lean_ctor_get(x_32, 0); -lean_inc(x_35); -lean_inc(x_35); -x_36 = lean_array_push(x_5, x_35); -x_37 = lean_ctor_get(x_32, 1); -lean_inc(x_37); +lean_object* 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); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_7); +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; uint8_t x_24; +x_18 = lean_array_uget(x_4, x_6); +x_19 = lean_ctor_get(x_7, 1); +lean_inc(x_19); +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +x_23 = lean_ctor_get(x_22, 1); +lean_inc(x_23); +x_24 = !lean_is_exclusive(x_7); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_25 = lean_ctor_get(x_7, 0); +x_26 = lean_ctor_get(x_7, 1); +lean_dec(x_26); +x_27 = !lean_is_exclusive(x_19); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_28 = lean_ctor_get(x_19, 0); +x_29 = lean_ctor_get(x_19, 1); +lean_dec(x_29); +x_30 = !lean_is_exclusive(x_20); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_31 = lean_ctor_get(x_20, 0); +x_32 = lean_ctor_get(x_20, 1); lean_dec(x_32); -if (lean_obj_tag(x_37) == 0) +x_33 = !lean_is_exclusive(x_21); +if (x_33 == 0) { -lean_object* x_38; lean_object* x_39; -x_38 = lean_box(0); -x_39 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__2(x_3, x_35, x_30, x_34, x_36, x_6, x_8, x_7, x_9, x_38, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_33); +lean_object* x_34; lean_object* x_35; uint8_t x_36; +x_34 = lean_ctor_get(x_21, 0); +x_35 = lean_ctor_get(x_21, 1); lean_dec(x_35); -lean_dec(x_3); -return x_39; +x_36 = !lean_is_exclusive(x_22); +if (x_36 == 0) +{ +lean_object* x_37; lean_object* x_38; uint8_t x_39; +x_37 = lean_ctor_get(x_22, 0); +x_38 = lean_ctor_get(x_22, 1); +lean_dec(x_38); +x_39 = !lean_is_exclusive(x_23); +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_23, 0); +x_41 = lean_ctor_get(x_23, 1); +x_42 = lean_ctor_get(x_25, 0); +lean_inc(x_42); +x_43 = lean_ctor_get(x_25, 1); +lean_inc(x_43); +x_44 = lean_ctor_get(x_25, 2); +lean_inc(x_44); +x_45 = lean_nat_dec_lt(x_43, x_44); +if (x_45 == 0) +{ +lean_object* x_46; +lean_dec(x_44); +lean_dec(x_43); +lean_dec(x_42); +lean_dec(x_18); +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); +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_7); +lean_ctor_set(x_46, 1, x_15); +return x_46; } else { -uint8_t x_40; lean_object* x_41; lean_object* x_42; +uint8_t x_47; +x_47 = !lean_is_exclusive(x_25); +if (x_47 == 0) +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; uint8_t x_52; lean_object* x_53; lean_object* x_54; uint8_t x_55; +x_48 = lean_ctor_get(x_25, 2); +lean_dec(x_48); +x_49 = lean_ctor_get(x_25, 1); +lean_dec(x_49); +x_50 = lean_ctor_get(x_25, 0); +lean_dec(x_50); +x_51 = lean_array_fget(x_42, x_43); +x_52 = lean_unbox(x_51); +lean_dec(x_51); +x_53 = lean_unsigned_to_nat(1u); +x_54 = lean_nat_add(x_43, x_53); +lean_dec(x_43); +lean_ctor_set(x_25, 1, x_54); +x_55 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); +if (x_55 == 0) +{ +lean_object* x_56; uint8_t x_57; uint8_t x_58; uint8_t x_59; lean_object* x_60; +lean_free_object(x_23); +lean_free_object(x_22); +lean_free_object(x_21); +lean_free_object(x_20); +lean_free_object(x_19); +lean_free_object(x_7); +x_56 = lean_box(0); +x_57 = lean_unbox(x_34); +lean_dec(x_34); +x_58 = lean_unbox(x_37); lean_dec(x_37); -x_40 = 1; -x_41 = lean_box(0); -x_42 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__2(x_3, x_35, x_30, x_34, x_36, x_6, x_8, x_40, x_9, x_41, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_33); -lean_dec(x_35); -lean_dec(x_3); -return x_42; -} -} -else +x_59 = lean_unbox(x_41); +lean_dec(x_41); +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); +x_60 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_25, x_52, x_18, x_28, x_31, x_57, x_58, x_40, x_59, x_56, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_60) == 0) { -uint8_t x_43; -lean_dec(x_30); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); +lean_object* x_61; +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +if (lean_obj_tag(x_61) == 0) +{ +uint8_t x_62; 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); -x_43 = !lean_is_exclusive(x_31); -if (x_43 == 0) +x_62 = !lean_is_exclusive(x_60); +if (x_62 == 0) { -return x_31; +lean_object* x_63; lean_object* x_64; +x_63 = lean_ctor_get(x_60, 0); +lean_dec(x_63); +x_64 = lean_ctor_get(x_61, 0); +lean_inc(x_64); +lean_dec(x_61); +lean_ctor_set(x_60, 0, x_64); +return x_60; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_44 = lean_ctor_get(x_31, 0); -x_45 = lean_ctor_get(x_31, 1); -lean_inc(x_45); -lean_inc(x_44); -lean_dec(x_31); -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_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_60, 1); +lean_inc(x_65); +lean_dec(x_60); +x_66 = lean_ctor_get(x_61, 0); +lean_inc(x_66); +lean_dec(x_61); +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; size_t x_70; size_t x_71; +x_68 = lean_ctor_get(x_60, 1); +lean_inc(x_68); +lean_dec(x_60); +x_69 = lean_ctor_get(x_61, 0); +lean_inc(x_69); +lean_dec(x_61); +x_70 = 1; +x_71 = lean_usize_add(x_6, x_70); +x_6 = x_71; +x_7 = x_69; +x_15 = x_68; +goto _start; +} } -case 3: +else { -lean_object* x_47; uint8_t x_48; lean_object* x_49; lean_object* x_50; -x_47 = lean_array_push(x_5, x_3); -x_48 = 1; -x_49 = lean_box(0); -x_50 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__1(x_1, x_4, x_47, x_48, x_7, x_8, x_9, x_49, 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); +uint8_t x_73; 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_50; +x_73 = !lean_is_exclusive(x_60); +if (x_73 == 0) +{ +return x_60; } -case 5: +else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_51 = lean_array_push(x_5, x_3); -x_52 = lean_box(0); -x_53 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__1(x_1, x_4, x_51, x_6, x_7, x_8, x_9, x_52, 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_11); -lean_dec(x_8); -return x_53; +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_60, 0); +x_75 = lean_ctor_get(x_60, 1); +lean_inc(x_75); +lean_inc(x_74); +lean_dec(x_60); +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; } -default: +} +} +else { -lean_object* x_54; lean_object* x_55; -lean_dec(x_19); -lean_dec(x_3); -x_54 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__4; -lean_inc(x_17); -lean_inc(x_16); -lean_inc(x_15); +lean_object* x_77; uint8_t x_78; +x_77 = lean_array_get_size(x_2); +x_78 = lean_nat_dec_lt(x_40, x_77); +lean_dec(x_77); +if (x_78 == 0) +{ +lean_object* x_79; uint8_t x_80; uint8_t x_81; uint8_t x_82; lean_object* x_83; +lean_free_object(x_23); +lean_free_object(x_22); +lean_free_object(x_21); +lean_free_object(x_20); +lean_free_object(x_19); +lean_free_object(x_7); +x_79 = lean_box(0); +x_80 = lean_unbox(x_34); +lean_dec(x_34); +x_81 = lean_unbox(x_37); +lean_dec(x_37); +x_82 = lean_unbox(x_41); +lean_dec(x_41); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); -x_55 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__1(x_54, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); -if (lean_obj_tag(x_55) == 0) +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_83 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_25, x_52, x_18, x_28, x_31, x_80, x_81, x_40, x_82, x_79, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_83) == 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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__1(x_1, x_4, x_5, x_6, x_7, x_8, x_9, x_56, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_57); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); +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_14); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); -lean_dec(x_56); +lean_dec(x_10); +lean_dec(x_9); lean_dec(x_8); -return x_58; +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_ctor_get(x_84, 0); +lean_inc(x_87); +lean_dec(x_84); +lean_ctor_set(x_83, 0, x_87); +return x_83; } else { -uint8_t x_59; -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); +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_ctor_get(x_84, 0); +lean_inc(x_89); +lean_dec(x_84); +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; size_t x_93; size_t x_94; +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); +x_93 = 1; +x_94 = lean_usize_add(x_6, x_93); +x_6 = x_94; +x_7 = x_92; +x_15 = x_91; +goto _start; +} +} +else +{ +uint8_t x_96; 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_1); -x_59 = !lean_is_exclusive(x_55); -if (x_59 == 0) +x_96 = !lean_is_exclusive(x_83); +if (x_96 == 0) { -return x_55; +return x_83; } 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; -} -} -} +lean_object* x_97; lean_object* x_98; lean_object* x_99; +x_97 = lean_ctor_get(x_83, 0); +x_98 = lean_ctor_get(x_83, 1); +lean_inc(x_98); +lean_inc(x_97); +lean_dec(x_83); +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_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2(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) { -_start: +else { -uint8_t x_16; -x_16 = lean_usize_dec_lt(x_6, x_5); -if (x_16 == 0) +lean_object* x_100; uint8_t x_101; +x_100 = lean_array_fget(x_2, x_40); +x_101 = l_Lean_Meta_ParamInfo_isInstImplicit(x_100); +lean_dec(x_100); +if (x_101 == 0) { -lean_object* x_17; +lean_object* x_102; uint8_t x_103; uint8_t x_104; uint8_t x_105; lean_object* x_106; +lean_free_object(x_23); +lean_free_object(x_22); +lean_free_object(x_21); +lean_free_object(x_20); +lean_free_object(x_19); +lean_free_object(x_7); +x_102 = lean_box(0); +x_103 = lean_unbox(x_34); +lean_dec(x_34); +x_104 = lean_unbox(x_37); +lean_dec(x_37); +x_105 = lean_unbox(x_41); +lean_dec(x_41); +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); +x_106 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_25, x_52, x_18, x_28, x_31, x_103, x_104, x_40, x_105, x_102, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_106) == 0) +{ +lean_object* x_107; +x_107 = lean_ctor_get(x_106, 0); +lean_inc(x_107); +if (lean_obj_tag(x_107) == 0) +{ +uint8_t x_108; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -14217,80 +17239,53 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_7); -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; uint8_t x_24; -x_18 = lean_array_uget(x_4, x_6); -x_19 = lean_ctor_get(x_7, 1); -lean_inc(x_19); -x_20 = lean_ctor_get(x_19, 1); -lean_inc(x_20); -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -x_23 = lean_ctor_get(x_22, 1); -lean_inc(x_23); -x_24 = !lean_is_exclusive(x_7); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_25 = lean_ctor_get(x_7, 0); -x_26 = lean_ctor_get(x_7, 1); -lean_dec(x_26); -x_27 = !lean_is_exclusive(x_19); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; uint8_t x_30; -x_28 = lean_ctor_get(x_19, 0); -x_29 = lean_ctor_get(x_19, 1); -lean_dec(x_29); -x_30 = !lean_is_exclusive(x_20); -if (x_30 == 0) -{ -lean_object* x_31; lean_object* x_32; uint8_t x_33; -x_31 = lean_ctor_get(x_20, 0); -x_32 = lean_ctor_get(x_20, 1); -lean_dec(x_32); -x_33 = !lean_is_exclusive(x_21); -if (x_33 == 0) +x_108 = !lean_is_exclusive(x_106); +if (x_108 == 0) { -lean_object* x_34; lean_object* x_35; uint8_t x_36; -x_34 = lean_ctor_get(x_21, 0); -x_35 = lean_ctor_get(x_21, 1); -lean_dec(x_35); -x_36 = !lean_is_exclusive(x_22); -if (x_36 == 0) +lean_object* x_109; lean_object* x_110; +x_109 = lean_ctor_get(x_106, 0); +lean_dec(x_109); +x_110 = lean_ctor_get(x_107, 0); +lean_inc(x_110); +lean_dec(x_107); +lean_ctor_set(x_106, 0, x_110); +return x_106; +} +else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_22, 0); -x_38 = lean_ctor_get(x_22, 1); -lean_dec(x_38); -x_39 = !lean_is_exclusive(x_23); -if (x_39 == 0) +lean_object* x_111; lean_object* x_112; lean_object* x_113; +x_111 = lean_ctor_get(x_106, 1); +lean_inc(x_111); +lean_dec(x_106); +x_112 = lean_ctor_get(x_107, 0); +lean_inc(x_112); +lean_dec(x_107); +x_113 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_113, 0, x_112); +lean_ctor_set(x_113, 1, x_111); +return x_113; +} +} +else { -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_23, 0); -x_41 = lean_ctor_get(x_23, 1); -x_42 = lean_ctor_get(x_25, 0); -lean_inc(x_42); -x_43 = lean_ctor_get(x_25, 1); -lean_inc(x_43); -x_44 = lean_ctor_get(x_25, 2); -lean_inc(x_44); -x_45 = lean_nat_dec_lt(x_43, x_44); -if (x_45 == 0) +lean_object* x_114; lean_object* x_115; size_t x_116; size_t x_117; +x_114 = lean_ctor_get(x_106, 1); +lean_inc(x_114); +lean_dec(x_106); +x_115 = lean_ctor_get(x_107, 0); +lean_inc(x_115); +lean_dec(x_107); +x_116 = 1; +x_117 = lean_usize_add(x_6, x_116); +x_6 = x_117; +x_7 = x_115; +x_15 = x_114; +goto _start; +} +} +else { -lean_object* x_46; -lean_dec(x_44); -lean_dec(x_43); -lean_dec(x_42); -lean_dec(x_18); +uint8_t x_119; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -14298,47 +17293,72 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_46 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_46, 0, x_7); -lean_ctor_set(x_46, 1, x_15); -return x_46; +x_119 = !lean_is_exclusive(x_106); +if (x_119 == 0) +{ +return x_106; } else { -uint8_t x_47; -x_47 = !lean_is_exclusive(x_25); -if (x_47 == 0) +lean_object* x_120; lean_object* x_121; lean_object* x_122; +x_120 = lean_ctor_get(x_106, 0); +x_121 = lean_ctor_get(x_106, 1); +lean_inc(x_121); +lean_inc(x_120); +lean_dec(x_106); +x_122 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_122, 0, x_120); +lean_ctor_set(x_122, 1, x_121); +return x_122; +} +} +} +else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; uint8_t x_52; lean_object* x_53; lean_object* x_54; uint8_t x_55; -x_48 = lean_ctor_get(x_25, 2); -lean_dec(x_48); -x_49 = lean_ctor_get(x_25, 1); -lean_dec(x_49); -x_50 = lean_ctor_get(x_25, 0); -lean_dec(x_50); -x_51 = lean_array_fget(x_42, x_43); -x_52 = lean_unbox(x_51); -lean_dec(x_51); -x_53 = lean_unsigned_to_nat(1u); -x_54 = lean_nat_add(x_43, x_53); +lean_object* x_123; lean_object* x_124; size_t x_125; size_t x_126; +x_123 = lean_array_push(x_31, x_18); +x_124 = lean_nat_add(x_40, x_53); +lean_dec(x_40); +lean_ctor_set(x_23, 0, x_124); +lean_ctor_set(x_20, 0, x_123); +x_125 = 1; +x_126 = lean_usize_add(x_6, x_125); +x_6 = x_126; +goto _start; +} +} +} +} +else +{ +lean_object* x_128; uint8_t x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; uint8_t x_133; +lean_dec(x_25); +x_128 = lean_array_fget(x_42, x_43); +x_129 = lean_unbox(x_128); +lean_dec(x_128); +x_130 = lean_unsigned_to_nat(1u); +x_131 = lean_nat_add(x_43, x_130); lean_dec(x_43); -lean_ctor_set(x_25, 1, x_54); -x_55 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); -if (x_55 == 0) +x_132 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_132, 0, x_42); +lean_ctor_set(x_132, 1, x_131); +lean_ctor_set(x_132, 2, x_44); +x_133 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); +if (x_133 == 0) { -lean_object* x_56; uint8_t x_57; uint8_t x_58; uint8_t x_59; lean_object* x_60; +lean_object* x_134; uint8_t x_135; uint8_t x_136; uint8_t x_137; lean_object* x_138; lean_free_object(x_23); lean_free_object(x_22); lean_free_object(x_21); lean_free_object(x_20); lean_free_object(x_19); lean_free_object(x_7); -x_56 = lean_box(0); -x_57 = lean_unbox(x_34); +x_134 = lean_box(0); +x_135 = lean_unbox(x_34); lean_dec(x_34); -x_58 = lean_unbox(x_37); +x_136 = lean_unbox(x_37); lean_dec(x_37); -x_59 = lean_unbox(x_41); +x_137 = lean_unbox(x_41); lean_dec(x_41); lean_inc(x_14); lean_inc(x_13); @@ -14347,15 +17367,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_60 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_25, x_52, x_18, x_28, x_31, x_57, x_58, x_40, x_59, x_56, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_60) == 0) +x_138 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_132, x_129, x_18, x_28, x_31, x_135, x_136, x_40, x_137, x_134, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_138) == 0) { -lean_object* x_61; -x_61 = lean_ctor_get(x_60, 0); -lean_inc(x_61); -if (lean_obj_tag(x_61) == 0) +lean_object* x_139; +x_139 = lean_ctor_get(x_138, 0); +lean_inc(x_139); +if (lean_obj_tag(x_139) == 0) { -uint8_t x_62; +lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -14363,53 +17383,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_62 = !lean_is_exclusive(x_60); -if (x_62 == 0) -{ -lean_object* x_63; lean_object* x_64; -x_63 = lean_ctor_get(x_60, 0); -lean_dec(x_63); -x_64 = lean_ctor_get(x_61, 0); -lean_inc(x_64); -lean_dec(x_61); -lean_ctor_set(x_60, 0, x_64); -return x_60; +x_140 = lean_ctor_get(x_138, 1); +lean_inc(x_140); +if (lean_is_exclusive(x_138)) { + lean_ctor_release(x_138, 0); + lean_ctor_release(x_138, 1); + x_141 = x_138; +} else { + lean_dec_ref(x_138); + x_141 = lean_box(0); } -else -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_65 = lean_ctor_get(x_60, 1); -lean_inc(x_65); -lean_dec(x_60); -x_66 = lean_ctor_get(x_61, 0); -lean_inc(x_66); -lean_dec(x_61); -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; +x_142 = lean_ctor_get(x_139, 0); +lean_inc(x_142); +lean_dec(x_139); +if (lean_is_scalar(x_141)) { + x_143 = lean_alloc_ctor(0, 2, 0); +} else { + x_143 = x_141; } +lean_ctor_set(x_143, 0, x_142); +lean_ctor_set(x_143, 1, x_140); +return x_143; } else { -lean_object* x_68; lean_object* x_69; size_t x_70; size_t x_71; -x_68 = lean_ctor_get(x_60, 1); -lean_inc(x_68); -lean_dec(x_60); -x_69 = lean_ctor_get(x_61, 0); -lean_inc(x_69); -lean_dec(x_61); -x_70 = 1; -x_71 = lean_usize_add(x_6, x_70); -x_6 = x_71; -x_7 = x_69; -x_15 = x_68; +lean_object* x_144; lean_object* x_145; size_t x_146; size_t x_147; +x_144 = lean_ctor_get(x_138, 1); +lean_inc(x_144); +lean_dec(x_138); +x_145 = lean_ctor_get(x_139, 0); +lean_inc(x_145); +lean_dec(x_139); +x_146 = 1; +x_147 = lean_usize_add(x_6, x_146); +x_6 = x_147; +x_7 = x_145; +x_15 = x_144; goto _start; } } else { -uint8_t x_73; +lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -14417,47 +17432,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_73 = !lean_is_exclusive(x_60); -if (x_73 == 0) -{ -return x_60; +x_149 = lean_ctor_get(x_138, 0); +lean_inc(x_149); +x_150 = lean_ctor_get(x_138, 1); +lean_inc(x_150); +if (lean_is_exclusive(x_138)) { + lean_ctor_release(x_138, 0); + lean_ctor_release(x_138, 1); + x_151 = x_138; +} else { + lean_dec_ref(x_138); + x_151 = lean_box(0); } -else -{ -lean_object* x_74; lean_object* x_75; lean_object* x_76; -x_74 = lean_ctor_get(x_60, 0); -x_75 = lean_ctor_get(x_60, 1); -lean_inc(x_75); -lean_inc(x_74); -lean_dec(x_60); -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; +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 { -lean_object* x_77; uint8_t x_78; -x_77 = lean_array_get_size(x_2); -x_78 = lean_nat_dec_lt(x_40, x_77); -lean_dec(x_77); -if (x_78 == 0) +lean_object* x_153; uint8_t x_154; +x_153 = lean_array_get_size(x_2); +x_154 = lean_nat_dec_lt(x_40, x_153); +lean_dec(x_153); +if (x_154 == 0) { -lean_object* x_79; uint8_t x_80; uint8_t x_81; uint8_t x_82; lean_object* x_83; +lean_object* x_155; uint8_t x_156; uint8_t x_157; uint8_t x_158; lean_object* x_159; lean_free_object(x_23); lean_free_object(x_22); lean_free_object(x_21); lean_free_object(x_20); lean_free_object(x_19); lean_free_object(x_7); -x_79 = lean_box(0); -x_80 = lean_unbox(x_34); +x_155 = lean_box(0); +x_156 = lean_unbox(x_34); lean_dec(x_34); -x_81 = lean_unbox(x_37); +x_157 = lean_unbox(x_37); lean_dec(x_37); -x_82 = lean_unbox(x_41); +x_158 = lean_unbox(x_41); lean_dec(x_41); lean_inc(x_14); lean_inc(x_13); @@ -14466,15 +17483,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_83 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_25, x_52, x_18, x_28, x_31, x_80, x_81, x_40, x_82, x_79, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_83) == 0) +x_159 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_132, x_129, x_18, x_28, x_31, x_156, x_157, x_40, x_158, x_155, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_159) == 0) { -lean_object* x_84; -x_84 = lean_ctor_get(x_83, 0); -lean_inc(x_84); -if (lean_obj_tag(x_84) == 0) +lean_object* x_160; +x_160 = lean_ctor_get(x_159, 0); +lean_inc(x_160); +if (lean_obj_tag(x_160) == 0) { -uint8_t x_85; +lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -14482,53 +17499,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -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_ctor_get(x_84, 0); -lean_inc(x_87); -lean_dec(x_84); -lean_ctor_set(x_83, 0, x_87); -return x_83; +x_161 = lean_ctor_get(x_159, 1); +lean_inc(x_161); +if (lean_is_exclusive(x_159)) { + lean_ctor_release(x_159, 0); + lean_ctor_release(x_159, 1); + x_162 = x_159; +} else { + lean_dec_ref(x_159); + x_162 = lean_box(0); } -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_ctor_get(x_84, 0); -lean_inc(x_89); -lean_dec(x_84); -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; +x_163 = lean_ctor_get(x_160, 0); +lean_inc(x_163); +lean_dec(x_160); +if (lean_is_scalar(x_162)) { + x_164 = lean_alloc_ctor(0, 2, 0); +} else { + x_164 = x_162; } +lean_ctor_set(x_164, 0, x_163); +lean_ctor_set(x_164, 1, x_161); +return x_164; } else { -lean_object* x_91; lean_object* x_92; size_t x_93; size_t x_94; -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); -x_93 = 1; -x_94 = lean_usize_add(x_6, x_93); -x_6 = x_94; -x_7 = x_92; -x_15 = x_91; +lean_object* x_165; lean_object* x_166; size_t x_167; size_t x_168; +x_165 = lean_ctor_get(x_159, 1); +lean_inc(x_165); +lean_dec(x_159); +x_166 = lean_ctor_get(x_160, 0); +lean_inc(x_166); +lean_dec(x_160); +x_167 = 1; +x_168 = lean_usize_add(x_6, x_167); +x_6 = x_168; +x_7 = x_166; +x_15 = x_165; goto _start; } } else { -uint8_t x_96; +lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -14536,47 +17548,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_96 = !lean_is_exclusive(x_83); -if (x_96 == 0) -{ -return x_83; +x_170 = lean_ctor_get(x_159, 0); +lean_inc(x_170); +x_171 = lean_ctor_get(x_159, 1); +lean_inc(x_171); +if (lean_is_exclusive(x_159)) { + lean_ctor_release(x_159, 0); + lean_ctor_release(x_159, 1); + x_172 = x_159; +} else { + lean_dec_ref(x_159); + x_172 = lean_box(0); } -else -{ -lean_object* x_97; lean_object* x_98; lean_object* x_99; -x_97 = lean_ctor_get(x_83, 0); -x_98 = lean_ctor_get(x_83, 1); -lean_inc(x_98); -lean_inc(x_97); -lean_dec(x_83); -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; +if (lean_is_scalar(x_172)) { + x_173 = lean_alloc_ctor(1, 2, 0); +} else { + x_173 = x_172; } +lean_ctor_set(x_173, 0, x_170); +lean_ctor_set(x_173, 1, x_171); +return x_173; } } else { -lean_object* x_100; uint8_t x_101; -x_100 = lean_array_fget(x_2, x_40); -x_101 = l_Lean_Meta_ParamInfo_isInstImplicit(x_100); -lean_dec(x_100); -if (x_101 == 0) +lean_object* x_174; uint8_t x_175; +x_174 = lean_array_fget(x_2, x_40); +x_175 = l_Lean_Meta_ParamInfo_isInstImplicit(x_174); +lean_dec(x_174); +if (x_175 == 0) { -lean_object* x_102; uint8_t x_103; uint8_t x_104; uint8_t x_105; lean_object* x_106; +lean_object* x_176; uint8_t x_177; uint8_t x_178; uint8_t x_179; lean_object* x_180; lean_free_object(x_23); lean_free_object(x_22); lean_free_object(x_21); lean_free_object(x_20); lean_free_object(x_19); lean_free_object(x_7); -x_102 = lean_box(0); -x_103 = lean_unbox(x_34); +x_176 = lean_box(0); +x_177 = lean_unbox(x_34); lean_dec(x_34); -x_104 = lean_unbox(x_37); +x_178 = lean_unbox(x_37); lean_dec(x_37); -x_105 = lean_unbox(x_41); +x_179 = lean_unbox(x_41); lean_dec(x_41); lean_inc(x_14); lean_inc(x_13); @@ -14585,15 +17599,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_106 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_25, x_52, x_18, x_28, x_31, x_103, x_104, x_40, x_105, x_102, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_106) == 0) +x_180 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_132, x_129, x_18, x_28, x_31, x_177, x_178, x_40, x_179, x_176, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_180) == 0) { -lean_object* x_107; -x_107 = lean_ctor_get(x_106, 0); -lean_inc(x_107); -if (lean_obj_tag(x_107) == 0) +lean_object* x_181; +x_181 = lean_ctor_get(x_180, 0); +lean_inc(x_181); +if (lean_obj_tag(x_181) == 0) { -uint8_t x_108; +lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -14601,53 +17615,118 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_108 = !lean_is_exclusive(x_106); -if (x_108 == 0) +x_182 = lean_ctor_get(x_180, 1); +lean_inc(x_182); +if (lean_is_exclusive(x_180)) { + lean_ctor_release(x_180, 0); + lean_ctor_release(x_180, 1); + x_183 = x_180; +} else { + lean_dec_ref(x_180); + x_183 = lean_box(0); +} +x_184 = lean_ctor_get(x_181, 0); +lean_inc(x_184); +lean_dec(x_181); +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_109; lean_object* x_110; -x_109 = lean_ctor_get(x_106, 0); -lean_dec(x_109); -x_110 = lean_ctor_get(x_107, 0); -lean_inc(x_110); -lean_dec(x_107); -lean_ctor_set(x_106, 0, x_110); -return x_106; +lean_object* x_186; lean_object* x_187; size_t x_188; size_t x_189; +x_186 = lean_ctor_get(x_180, 1); +lean_inc(x_186); +lean_dec(x_180); +x_187 = lean_ctor_get(x_181, 0); +lean_inc(x_187); +lean_dec(x_181); +x_188 = 1; +x_189 = lean_usize_add(x_6, x_188); +x_6 = x_189; +x_7 = x_187; +x_15 = x_186; +goto _start; +} } else { -lean_object* x_111; lean_object* x_112; lean_object* x_113; -x_111 = lean_ctor_get(x_106, 1); -lean_inc(x_111); -lean_dec(x_106); -x_112 = lean_ctor_get(x_107, 0); -lean_inc(x_112); -lean_dec(x_107); -x_113 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_113, 0, x_112); -lean_ctor_set(x_113, 1, x_111); -return x_113; +lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; +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); +x_191 = lean_ctor_get(x_180, 0); +lean_inc(x_191); +x_192 = lean_ctor_get(x_180, 1); +lean_inc(x_192); +if (lean_is_exclusive(x_180)) { + lean_ctor_release(x_180, 0); + lean_ctor_release(x_180, 1); + x_193 = x_180; +} else { + lean_dec_ref(x_180); + 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; } } else { -lean_object* x_114; lean_object* x_115; size_t x_116; size_t x_117; -x_114 = lean_ctor_get(x_106, 1); -lean_inc(x_114); -lean_dec(x_106); -x_115 = lean_ctor_get(x_107, 0); -lean_inc(x_115); -lean_dec(x_107); -x_116 = 1; -x_117 = lean_usize_add(x_6, x_116); -x_6 = x_117; -x_7 = x_115; -x_15 = x_114; +lean_object* x_195; lean_object* x_196; size_t x_197; size_t x_198; +x_195 = lean_array_push(x_31, x_18); +x_196 = lean_nat_add(x_40, x_130); +lean_dec(x_40); +lean_ctor_set(x_23, 0, x_196); +lean_ctor_set(x_20, 0, x_195); +lean_ctor_set(x_7, 0, x_132); +x_197 = 1; +x_198 = lean_usize_add(x_6, x_197); +x_6 = x_198; goto _start; } } +} +} +} +} else { -uint8_t x_119; +lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; uint8_t x_205; +x_200 = lean_ctor_get(x_23, 0); +x_201 = lean_ctor_get(x_23, 1); +lean_inc(x_201); +lean_inc(x_200); +lean_dec(x_23); +x_202 = lean_ctor_get(x_25, 0); +lean_inc(x_202); +x_203 = lean_ctor_get(x_25, 1); +lean_inc(x_203); +x_204 = lean_ctor_get(x_25, 2); +lean_inc(x_204); +x_205 = lean_nat_dec_lt(x_203, x_204); +if (x_205 == 0) +{ +lean_object* x_206; lean_object* x_207; +lean_dec(x_204); +lean_dec(x_203); +lean_dec(x_202); +lean_dec(x_18); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -14655,73 +17734,57 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_119 = !lean_is_exclusive(x_106); -if (x_119 == 0) -{ -return x_106; -} -else -{ -lean_object* x_120; lean_object* x_121; lean_object* x_122; -x_120 = lean_ctor_get(x_106, 0); -x_121 = lean_ctor_get(x_106, 1); -lean_inc(x_121); -lean_inc(x_120); -lean_dec(x_106); -x_122 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_122, 0, x_120); -lean_ctor_set(x_122, 1, x_121); -return x_122; -} -} +x_206 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_206, 0, x_200); +lean_ctor_set(x_206, 1, x_201); +lean_ctor_set(x_22, 1, x_206); +x_207 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_207, 0, x_7); +lean_ctor_set(x_207, 1, x_15); +return x_207; } else { -lean_object* x_123; lean_object* x_124; size_t x_125; size_t x_126; -x_123 = lean_array_push(x_31, x_18); -x_124 = lean_nat_add(x_40, x_53); -lean_dec(x_40); -lean_ctor_set(x_23, 0, x_124); -lean_ctor_set(x_20, 0, x_123); -x_125 = 1; -x_126 = lean_usize_add(x_6, x_125); -x_6 = x_126; -goto _start; -} -} +lean_object* x_208; lean_object* x_209; uint8_t x_210; lean_object* x_211; lean_object* x_212; lean_object* x_213; uint8_t x_214; +if (lean_is_exclusive(x_25)) { + lean_ctor_release(x_25, 0); + lean_ctor_release(x_25, 1); + lean_ctor_release(x_25, 2); + x_208 = x_25; +} else { + lean_dec_ref(x_25); + x_208 = lean_box(0); } +x_209 = lean_array_fget(x_202, x_203); +x_210 = lean_unbox(x_209); +lean_dec(x_209); +x_211 = lean_unsigned_to_nat(1u); +x_212 = lean_nat_add(x_203, x_211); +lean_dec(x_203); +if (lean_is_scalar(x_208)) { + x_213 = lean_alloc_ctor(0, 3, 0); +} else { + x_213 = x_208; } -else -{ -lean_object* x_128; uint8_t x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; uint8_t x_133; -lean_dec(x_25); -x_128 = lean_array_fget(x_42, x_43); -x_129 = lean_unbox(x_128); -lean_dec(x_128); -x_130 = lean_unsigned_to_nat(1u); -x_131 = lean_nat_add(x_43, x_130); -lean_dec(x_43); -x_132 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_132, 0, x_42); -lean_ctor_set(x_132, 1, x_131); -lean_ctor_set(x_132, 2, x_44); -x_133 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); -if (x_133 == 0) +lean_ctor_set(x_213, 0, x_202); +lean_ctor_set(x_213, 1, x_212); +lean_ctor_set(x_213, 2, x_204); +x_214 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); +if (x_214 == 0) { -lean_object* x_134; uint8_t x_135; uint8_t x_136; uint8_t x_137; lean_object* x_138; -lean_free_object(x_23); +lean_object* x_215; uint8_t x_216; uint8_t x_217; uint8_t x_218; lean_object* x_219; lean_free_object(x_22); lean_free_object(x_21); lean_free_object(x_20); lean_free_object(x_19); lean_free_object(x_7); -x_134 = lean_box(0); -x_135 = lean_unbox(x_34); +x_215 = lean_box(0); +x_216 = lean_unbox(x_34); lean_dec(x_34); -x_136 = lean_unbox(x_37); +x_217 = lean_unbox(x_37); lean_dec(x_37); -x_137 = lean_unbox(x_41); -lean_dec(x_41); +x_218 = lean_unbox(x_201); +lean_dec(x_201); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -14729,15 +17792,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_138 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_132, x_129, x_18, x_28, x_31, x_135, x_136, x_40, x_137, x_134, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_138) == 0) +x_219 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_213, x_210, x_18, x_28, x_31, x_216, x_217, x_200, x_218, x_215, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_219) == 0) { -lean_object* x_139; -x_139 = lean_ctor_get(x_138, 0); -lean_inc(x_139); -if (lean_obj_tag(x_139) == 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_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; +lean_object* x_221; lean_object* x_222; lean_object* x_223; lean_object* x_224; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -14745,48 +17808,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_140 = lean_ctor_get(x_138, 1); -lean_inc(x_140); -if (lean_is_exclusive(x_138)) { - lean_ctor_release(x_138, 0); - lean_ctor_release(x_138, 1); - x_141 = x_138; +x_221 = lean_ctor_get(x_219, 1); +lean_inc(x_221); +if (lean_is_exclusive(x_219)) { + lean_ctor_release(x_219, 0); + lean_ctor_release(x_219, 1); + x_222 = x_219; } else { - lean_dec_ref(x_138); - x_141 = lean_box(0); + lean_dec_ref(x_219); + x_222 = lean_box(0); } -x_142 = lean_ctor_get(x_139, 0); -lean_inc(x_142); -lean_dec(x_139); -if (lean_is_scalar(x_141)) { - x_143 = lean_alloc_ctor(0, 2, 0); +x_223 = lean_ctor_get(x_220, 0); +lean_inc(x_223); +lean_dec(x_220); +if (lean_is_scalar(x_222)) { + x_224 = lean_alloc_ctor(0, 2, 0); } else { - x_143 = x_141; + x_224 = x_222; } -lean_ctor_set(x_143, 0, x_142); -lean_ctor_set(x_143, 1, x_140); -return x_143; +lean_ctor_set(x_224, 0, x_223); +lean_ctor_set(x_224, 1, x_221); +return x_224; } else { -lean_object* x_144; lean_object* x_145; size_t x_146; size_t x_147; -x_144 = lean_ctor_get(x_138, 1); -lean_inc(x_144); -lean_dec(x_138); -x_145 = lean_ctor_get(x_139, 0); -lean_inc(x_145); -lean_dec(x_139); -x_146 = 1; -x_147 = lean_usize_add(x_6, x_146); -x_6 = x_147; -x_7 = x_145; -x_15 = x_144; +lean_object* x_225; lean_object* x_226; size_t x_227; size_t x_228; +x_225 = lean_ctor_get(x_219, 1); +lean_inc(x_225); +lean_dec(x_219); +x_226 = lean_ctor_get(x_220, 0); +lean_inc(x_226); +lean_dec(x_220); +x_227 = 1; +x_228 = lean_usize_add(x_6, x_227); +x_6 = x_228; +x_7 = x_226; +x_15 = x_225; goto _start; } } else { -lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; +lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -14794,50 +17857,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_149 = lean_ctor_get(x_138, 0); -lean_inc(x_149); -x_150 = lean_ctor_get(x_138, 1); -lean_inc(x_150); -if (lean_is_exclusive(x_138)) { - lean_ctor_release(x_138, 0); - lean_ctor_release(x_138, 1); - x_151 = x_138; +x_230 = lean_ctor_get(x_219, 0); +lean_inc(x_230); +x_231 = lean_ctor_get(x_219, 1); +lean_inc(x_231); +if (lean_is_exclusive(x_219)) { + lean_ctor_release(x_219, 0); + lean_ctor_release(x_219, 1); + x_232 = x_219; } else { - lean_dec_ref(x_138); - x_151 = lean_box(0); + lean_dec_ref(x_219); + x_232 = lean_box(0); } -if (lean_is_scalar(x_151)) { - x_152 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_232)) { + x_233 = lean_alloc_ctor(1, 2, 0); } else { - x_152 = x_151; + x_233 = x_232; } -lean_ctor_set(x_152, 0, x_149); -lean_ctor_set(x_152, 1, x_150); -return x_152; +lean_ctor_set(x_233, 0, x_230); +lean_ctor_set(x_233, 1, x_231); +return x_233; } } else { -lean_object* x_153; uint8_t x_154; -x_153 = lean_array_get_size(x_2); -x_154 = lean_nat_dec_lt(x_40, x_153); -lean_dec(x_153); -if (x_154 == 0) +lean_object* x_234; uint8_t x_235; +x_234 = lean_array_get_size(x_2); +x_235 = lean_nat_dec_lt(x_200, x_234); +lean_dec(x_234); +if (x_235 == 0) { -lean_object* x_155; uint8_t x_156; uint8_t x_157; uint8_t x_158; lean_object* x_159; -lean_free_object(x_23); +lean_object* x_236; uint8_t x_237; uint8_t x_238; uint8_t x_239; lean_object* x_240; lean_free_object(x_22); lean_free_object(x_21); lean_free_object(x_20); lean_free_object(x_19); lean_free_object(x_7); -x_155 = lean_box(0); -x_156 = lean_unbox(x_34); +x_236 = lean_box(0); +x_237 = lean_unbox(x_34); lean_dec(x_34); -x_157 = lean_unbox(x_37); +x_238 = lean_unbox(x_37); lean_dec(x_37); -x_158 = lean_unbox(x_41); -lean_dec(x_41); +x_239 = lean_unbox(x_201); +lean_dec(x_201); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -14845,15 +17907,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_159 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_132, x_129, x_18, x_28, x_31, x_156, x_157, x_40, x_158, x_155, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_159) == 0) +x_240 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_213, x_210, x_18, x_28, x_31, x_237, x_238, x_200, x_239, x_236, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_240) == 0) { -lean_object* x_160; -x_160 = lean_ctor_get(x_159, 0); -lean_inc(x_160); -if (lean_obj_tag(x_160) == 0) +lean_object* x_241; +x_241 = lean_ctor_get(x_240, 0); +lean_inc(x_241); +if (lean_obj_tag(x_241) == 0) { -lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; +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); @@ -14861,48 +17923,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_161 = lean_ctor_get(x_159, 1); -lean_inc(x_161); -if (lean_is_exclusive(x_159)) { - lean_ctor_release(x_159, 0); - lean_ctor_release(x_159, 1); - x_162 = x_159; +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_159); - x_162 = lean_box(0); + lean_dec_ref(x_240); + x_243 = lean_box(0); } -x_163 = lean_ctor_get(x_160, 0); -lean_inc(x_163); -lean_dec(x_160); -if (lean_is_scalar(x_162)) { - x_164 = lean_alloc_ctor(0, 2, 0); +x_244 = lean_ctor_get(x_241, 0); +lean_inc(x_244); +lean_dec(x_241); +if (lean_is_scalar(x_243)) { + x_245 = lean_alloc_ctor(0, 2, 0); } else { - x_164 = x_162; + x_245 = x_243; } -lean_ctor_set(x_164, 0, x_163); -lean_ctor_set(x_164, 1, x_161); -return x_164; +lean_ctor_set(x_245, 0, x_244); +lean_ctor_set(x_245, 1, x_242); +return x_245; } else { -lean_object* x_165; lean_object* x_166; size_t x_167; size_t x_168; -x_165 = lean_ctor_get(x_159, 1); -lean_inc(x_165); -lean_dec(x_159); -x_166 = lean_ctor_get(x_160, 0); -lean_inc(x_166); -lean_dec(x_160); -x_167 = 1; -x_168 = lean_usize_add(x_6, x_167); -x_6 = x_168; -x_7 = x_166; -x_15 = x_165; +lean_object* x_246; lean_object* x_247; size_t x_248; size_t x_249; +x_246 = lean_ctor_get(x_240, 1); +lean_inc(x_246); +lean_dec(x_240); +x_247 = lean_ctor_get(x_241, 0); +lean_inc(x_247); +lean_dec(x_241); +x_248 = 1; +x_249 = lean_usize_add(x_6, x_248); +x_6 = x_249; +x_7 = x_247; +x_15 = x_246; goto _start; } } else { -lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; +lean_object* x_251; lean_object* x_252; lean_object* x_253; lean_object* x_254; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -14910,50 +17972,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_170 = lean_ctor_get(x_159, 0); -lean_inc(x_170); -x_171 = lean_ctor_get(x_159, 1); -lean_inc(x_171); -if (lean_is_exclusive(x_159)) { - lean_ctor_release(x_159, 0); - lean_ctor_release(x_159, 1); - x_172 = x_159; +x_251 = lean_ctor_get(x_240, 0); +lean_inc(x_251); +x_252 = lean_ctor_get(x_240, 1); +lean_inc(x_252); +if (lean_is_exclusive(x_240)) { + lean_ctor_release(x_240, 0); + lean_ctor_release(x_240, 1); + x_253 = x_240; } else { - lean_dec_ref(x_159); - x_172 = lean_box(0); + lean_dec_ref(x_240); + x_253 = lean_box(0); } -if (lean_is_scalar(x_172)) { - x_173 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_253)) { + x_254 = lean_alloc_ctor(1, 2, 0); } else { - x_173 = x_172; + x_254 = x_253; } -lean_ctor_set(x_173, 0, x_170); -lean_ctor_set(x_173, 1, x_171); -return x_173; +lean_ctor_set(x_254, 0, x_251); +lean_ctor_set(x_254, 1, x_252); +return x_254; } } else { -lean_object* x_174; uint8_t x_175; -x_174 = lean_array_fget(x_2, x_40); -x_175 = l_Lean_Meta_ParamInfo_isInstImplicit(x_174); -lean_dec(x_174); -if (x_175 == 0) +lean_object* x_255; uint8_t x_256; +x_255 = lean_array_fget(x_2, x_200); +x_256 = l_Lean_Meta_ParamInfo_isInstImplicit(x_255); +lean_dec(x_255); +if (x_256 == 0) { -lean_object* x_176; uint8_t x_177; uint8_t x_178; uint8_t x_179; lean_object* x_180; -lean_free_object(x_23); +lean_object* x_257; uint8_t x_258; uint8_t x_259; uint8_t x_260; lean_object* x_261; lean_free_object(x_22); lean_free_object(x_21); lean_free_object(x_20); lean_free_object(x_19); lean_free_object(x_7); -x_176 = lean_box(0); -x_177 = lean_unbox(x_34); +x_257 = lean_box(0); +x_258 = lean_unbox(x_34); lean_dec(x_34); -x_178 = lean_unbox(x_37); +x_259 = lean_unbox(x_37); lean_dec(x_37); -x_179 = lean_unbox(x_41); -lean_dec(x_41); +x_260 = lean_unbox(x_201); +lean_dec(x_201); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -14961,15 +18022,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_180 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_132, x_129, x_18, x_28, x_31, x_177, x_178, x_40, x_179, x_176, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_180) == 0) +x_261 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_213, x_210, x_18, x_28, x_31, x_258, x_259, x_200, x_260, x_257, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_261) == 0) { -lean_object* x_181; -x_181 = lean_ctor_get(x_180, 0); -lean_inc(x_181); -if (lean_obj_tag(x_181) == 0) +lean_object* x_262; +x_262 = lean_ctor_get(x_261, 0); +lean_inc(x_262); +if (lean_obj_tag(x_262) == 0) { -lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; +lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -14977,48 +18038,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_182 = lean_ctor_get(x_180, 1); -lean_inc(x_182); -if (lean_is_exclusive(x_180)) { - lean_ctor_release(x_180, 0); - lean_ctor_release(x_180, 1); - x_183 = x_180; +x_263 = lean_ctor_get(x_261, 1); +lean_inc(x_263); +if (lean_is_exclusive(x_261)) { + lean_ctor_release(x_261, 0); + lean_ctor_release(x_261, 1); + x_264 = x_261; } else { - lean_dec_ref(x_180); - x_183 = lean_box(0); + lean_dec_ref(x_261); + x_264 = lean_box(0); } -x_184 = lean_ctor_get(x_181, 0); -lean_inc(x_184); -lean_dec(x_181); -if (lean_is_scalar(x_183)) { - x_185 = lean_alloc_ctor(0, 2, 0); +x_265 = lean_ctor_get(x_262, 0); +lean_inc(x_265); +lean_dec(x_262); +if (lean_is_scalar(x_264)) { + x_266 = lean_alloc_ctor(0, 2, 0); } else { - x_185 = x_183; + x_266 = x_264; } -lean_ctor_set(x_185, 0, x_184); -lean_ctor_set(x_185, 1, x_182); -return x_185; +lean_ctor_set(x_266, 0, x_265); +lean_ctor_set(x_266, 1, x_263); +return x_266; } else { -lean_object* x_186; lean_object* x_187; size_t x_188; size_t x_189; -x_186 = lean_ctor_get(x_180, 1); -lean_inc(x_186); -lean_dec(x_180); -x_187 = lean_ctor_get(x_181, 0); -lean_inc(x_187); -lean_dec(x_181); -x_188 = 1; -x_189 = lean_usize_add(x_6, x_188); -x_6 = x_189; -x_7 = x_187; -x_15 = x_186; +lean_object* x_267; lean_object* x_268; size_t x_269; size_t x_270; +x_267 = lean_ctor_get(x_261, 1); +lean_inc(x_267); +lean_dec(x_261); +x_268 = lean_ctor_get(x_262, 0); +lean_inc(x_268); +lean_dec(x_262); +x_269 = 1; +x_270 = lean_usize_add(x_6, x_269); +x_6 = x_270; +x_7 = x_268; +x_15 = x_267; goto _start; } } else { -lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; +lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -15026,40 +18087,43 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_191 = lean_ctor_get(x_180, 0); -lean_inc(x_191); -x_192 = lean_ctor_get(x_180, 1); -lean_inc(x_192); -if (lean_is_exclusive(x_180)) { - lean_ctor_release(x_180, 0); - lean_ctor_release(x_180, 1); - x_193 = x_180; +x_272 = lean_ctor_get(x_261, 0); +lean_inc(x_272); +x_273 = lean_ctor_get(x_261, 1); +lean_inc(x_273); +if (lean_is_exclusive(x_261)) { + lean_ctor_release(x_261, 0); + lean_ctor_release(x_261, 1); + x_274 = x_261; } else { - lean_dec_ref(x_180); - x_193 = lean_box(0); + lean_dec_ref(x_261); + x_274 = lean_box(0); } -if (lean_is_scalar(x_193)) { - x_194 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_274)) { + x_275 = lean_alloc_ctor(1, 2, 0); } else { - x_194 = x_193; + x_275 = x_274; } -lean_ctor_set(x_194, 0, x_191); -lean_ctor_set(x_194, 1, x_192); -return x_194; +lean_ctor_set(x_275, 0, x_272); +lean_ctor_set(x_275, 1, x_273); +return x_275; } } else { -lean_object* x_195; lean_object* x_196; size_t x_197; size_t x_198; -x_195 = lean_array_push(x_31, x_18); -x_196 = lean_nat_add(x_40, x_130); -lean_dec(x_40); -lean_ctor_set(x_23, 0, x_196); -lean_ctor_set(x_20, 0, x_195); -lean_ctor_set(x_7, 0, x_132); -x_197 = 1; -x_198 = lean_usize_add(x_6, x_197); -x_6 = x_198; +lean_object* x_276; lean_object* x_277; lean_object* x_278; size_t x_279; size_t x_280; +x_276 = lean_array_push(x_31, x_18); +x_277 = lean_nat_add(x_200, x_211); +lean_dec(x_200); +x_278 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_278, 0, x_277); +lean_ctor_set(x_278, 1, x_201); +lean_ctor_set(x_22, 1, x_278); +lean_ctor_set(x_20, 0, x_276); +lean_ctor_set(x_7, 0, x_213); +x_279 = 1; +x_280 = lean_usize_add(x_6, x_279); +x_6 = x_280; goto _start; } } @@ -15069,25 +18133,35 @@ goto _start; } else { -lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; uint8_t x_205; -x_200 = lean_ctor_get(x_23, 0); -x_201 = lean_ctor_get(x_23, 1); -lean_inc(x_201); -lean_inc(x_200); -lean_dec(x_23); -x_202 = lean_ctor_get(x_25, 0); -lean_inc(x_202); -x_203 = lean_ctor_get(x_25, 1); -lean_inc(x_203); -x_204 = lean_ctor_get(x_25, 2); -lean_inc(x_204); -x_205 = lean_nat_dec_lt(x_203, x_204); -if (x_205 == 0) +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; uint8_t x_289; +x_282 = lean_ctor_get(x_22, 0); +lean_inc(x_282); +lean_dec(x_22); +x_283 = lean_ctor_get(x_23, 0); +lean_inc(x_283); +x_284 = lean_ctor_get(x_23, 1); +lean_inc(x_284); +if (lean_is_exclusive(x_23)) { + lean_ctor_release(x_23, 0); + lean_ctor_release(x_23, 1); + x_285 = x_23; +} else { + lean_dec_ref(x_23); + x_285 = lean_box(0); +} +x_286 = lean_ctor_get(x_25, 0); +lean_inc(x_286); +x_287 = lean_ctor_get(x_25, 1); +lean_inc(x_287); +x_288 = lean_ctor_get(x_25, 2); +lean_inc(x_288); +x_289 = lean_nat_dec_lt(x_287, x_288); +if (x_289 == 0) { -lean_object* x_206; lean_object* x_207; -lean_dec(x_204); -lean_dec(x_203); -lean_dec(x_202); +lean_object* x_290; lean_object* x_291; lean_object* x_292; +lean_dec(x_288); +lean_dec(x_287); +lean_dec(x_286); lean_dec(x_18); lean_dec(x_14); lean_dec(x_13); @@ -15096,57 +18170,64 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_206 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_206, 0, x_200); -lean_ctor_set(x_206, 1, x_201); -lean_ctor_set(x_22, 1, x_206); -x_207 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_207, 0, x_7); -lean_ctor_set(x_207, 1, x_15); -return x_207; +if (lean_is_scalar(x_285)) { + x_290 = lean_alloc_ctor(0, 2, 0); +} else { + x_290 = x_285; +} +lean_ctor_set(x_290, 0, x_283); +lean_ctor_set(x_290, 1, x_284); +x_291 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_291, 0, x_282); +lean_ctor_set(x_291, 1, x_290); +lean_ctor_set(x_21, 1, x_291); +x_292 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_292, 0, x_7); +lean_ctor_set(x_292, 1, x_15); +return x_292; } else { -lean_object* x_208; lean_object* x_209; uint8_t x_210; lean_object* x_211; lean_object* x_212; lean_object* x_213; uint8_t x_214; +lean_object* x_293; lean_object* x_294; uint8_t x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; uint8_t x_299; if (lean_is_exclusive(x_25)) { lean_ctor_release(x_25, 0); lean_ctor_release(x_25, 1); lean_ctor_release(x_25, 2); - x_208 = x_25; + x_293 = x_25; } else { lean_dec_ref(x_25); - x_208 = lean_box(0); + x_293 = lean_box(0); } -x_209 = lean_array_fget(x_202, x_203); -x_210 = lean_unbox(x_209); -lean_dec(x_209); -x_211 = lean_unsigned_to_nat(1u); -x_212 = lean_nat_add(x_203, x_211); -lean_dec(x_203); -if (lean_is_scalar(x_208)) { - x_213 = lean_alloc_ctor(0, 3, 0); +x_294 = lean_array_fget(x_286, x_287); +x_295 = lean_unbox(x_294); +lean_dec(x_294); +x_296 = lean_unsigned_to_nat(1u); +x_297 = lean_nat_add(x_287, x_296); +lean_dec(x_287); +if (lean_is_scalar(x_293)) { + x_298 = lean_alloc_ctor(0, 3, 0); } else { - x_213 = x_208; + x_298 = x_293; } -lean_ctor_set(x_213, 0, x_202); -lean_ctor_set(x_213, 1, x_212); -lean_ctor_set(x_213, 2, x_204); -x_214 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); -if (x_214 == 0) +lean_ctor_set(x_298, 0, x_286); +lean_ctor_set(x_298, 1, x_297); +lean_ctor_set(x_298, 2, x_288); +x_299 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); +if (x_299 == 0) { -lean_object* x_215; uint8_t x_216; uint8_t x_217; uint8_t x_218; lean_object* x_219; -lean_free_object(x_22); +lean_object* x_300; uint8_t x_301; uint8_t x_302; uint8_t x_303; lean_object* x_304; +lean_dec(x_285); lean_free_object(x_21); lean_free_object(x_20); lean_free_object(x_19); lean_free_object(x_7); -x_215 = lean_box(0); -x_216 = lean_unbox(x_34); +x_300 = lean_box(0); +x_301 = lean_unbox(x_34); lean_dec(x_34); -x_217 = lean_unbox(x_37); -lean_dec(x_37); -x_218 = lean_unbox(x_201); -lean_dec(x_201); +x_302 = lean_unbox(x_282); +lean_dec(x_282); +x_303 = lean_unbox(x_284); +lean_dec(x_284); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -15154,15 +18235,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_219 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_213, x_210, x_18, x_28, x_31, x_216, x_217, x_200, x_218, x_215, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_219) == 0) +x_304 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_298, x_295, x_18, x_28, x_31, x_301, x_302, x_283, x_303, x_300, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_304) == 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_305; +x_305 = lean_ctor_get(x_304, 0); +lean_inc(x_305); +if (lean_obj_tag(x_305) == 0) { -lean_object* x_221; lean_object* x_222; lean_object* x_223; lean_object* x_224; +lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -15170,48 +18251,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_221 = lean_ctor_get(x_219, 1); -lean_inc(x_221); -if (lean_is_exclusive(x_219)) { - lean_ctor_release(x_219, 0); - lean_ctor_release(x_219, 1); - x_222 = x_219; +x_306 = lean_ctor_get(x_304, 1); +lean_inc(x_306); +if (lean_is_exclusive(x_304)) { + lean_ctor_release(x_304, 0); + lean_ctor_release(x_304, 1); + x_307 = x_304; } else { - lean_dec_ref(x_219); - x_222 = lean_box(0); + lean_dec_ref(x_304); + x_307 = lean_box(0); } -x_223 = lean_ctor_get(x_220, 0); -lean_inc(x_223); -lean_dec(x_220); -if (lean_is_scalar(x_222)) { - x_224 = lean_alloc_ctor(0, 2, 0); +x_308 = lean_ctor_get(x_305, 0); +lean_inc(x_308); +lean_dec(x_305); +if (lean_is_scalar(x_307)) { + x_309 = lean_alloc_ctor(0, 2, 0); } else { - x_224 = x_222; + x_309 = x_307; } -lean_ctor_set(x_224, 0, x_223); -lean_ctor_set(x_224, 1, x_221); -return x_224; +lean_ctor_set(x_309, 0, x_308); +lean_ctor_set(x_309, 1, x_306); +return x_309; } else { -lean_object* x_225; lean_object* x_226; size_t x_227; size_t x_228; -x_225 = lean_ctor_get(x_219, 1); -lean_inc(x_225); -lean_dec(x_219); -x_226 = lean_ctor_get(x_220, 0); -lean_inc(x_226); -lean_dec(x_220); -x_227 = 1; -x_228 = lean_usize_add(x_6, x_227); -x_6 = x_228; -x_7 = x_226; -x_15 = x_225; +lean_object* x_310; lean_object* x_311; size_t x_312; size_t x_313; +x_310 = lean_ctor_get(x_304, 1); +lean_inc(x_310); +lean_dec(x_304); +x_311 = lean_ctor_get(x_305, 0); +lean_inc(x_311); +lean_dec(x_305); +x_312 = 1; +x_313 = lean_usize_add(x_6, x_312); +x_6 = x_313; +x_7 = x_311; +x_15 = x_310; goto _start; } } else { -lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; +lean_object* x_315; lean_object* x_316; lean_object* x_317; lean_object* x_318; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -15219,49 +18300,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_230 = lean_ctor_get(x_219, 0); -lean_inc(x_230); -x_231 = lean_ctor_get(x_219, 1); -lean_inc(x_231); -if (lean_is_exclusive(x_219)) { - lean_ctor_release(x_219, 0); - lean_ctor_release(x_219, 1); - x_232 = x_219; +x_315 = lean_ctor_get(x_304, 0); +lean_inc(x_315); +x_316 = lean_ctor_get(x_304, 1); +lean_inc(x_316); +if (lean_is_exclusive(x_304)) { + lean_ctor_release(x_304, 0); + lean_ctor_release(x_304, 1); + x_317 = x_304; } else { - lean_dec_ref(x_219); - x_232 = lean_box(0); + lean_dec_ref(x_304); + x_317 = lean_box(0); } -if (lean_is_scalar(x_232)) { - x_233 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_317)) { + x_318 = lean_alloc_ctor(1, 2, 0); } else { - x_233 = x_232; + x_318 = x_317; } -lean_ctor_set(x_233, 0, x_230); -lean_ctor_set(x_233, 1, x_231); -return x_233; +lean_ctor_set(x_318, 0, x_315); +lean_ctor_set(x_318, 1, x_316); +return x_318; } } else { -lean_object* x_234; uint8_t x_235; -x_234 = lean_array_get_size(x_2); -x_235 = lean_nat_dec_lt(x_200, x_234); -lean_dec(x_234); -if (x_235 == 0) +lean_object* x_319; uint8_t x_320; +x_319 = lean_array_get_size(x_2); +x_320 = lean_nat_dec_lt(x_283, x_319); +lean_dec(x_319); +if (x_320 == 0) { -lean_object* x_236; uint8_t x_237; uint8_t x_238; uint8_t x_239; lean_object* x_240; -lean_free_object(x_22); +lean_object* x_321; uint8_t x_322; uint8_t x_323; uint8_t x_324; lean_object* x_325; +lean_dec(x_285); lean_free_object(x_21); lean_free_object(x_20); lean_free_object(x_19); lean_free_object(x_7); -x_236 = lean_box(0); -x_237 = lean_unbox(x_34); -lean_dec(x_34); -x_238 = lean_unbox(x_37); -lean_dec(x_37); -x_239 = lean_unbox(x_201); -lean_dec(x_201); +x_321 = lean_box(0); +x_322 = lean_unbox(x_34); +lean_dec(x_34); +x_323 = lean_unbox(x_282); +lean_dec(x_282); +x_324 = lean_unbox(x_284); +lean_dec(x_284); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -15269,15 +18350,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_240 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_213, x_210, x_18, x_28, x_31, x_237, x_238, x_200, x_239, x_236, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_240) == 0) +x_325 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_298, x_295, x_18, x_28, x_31, x_322, x_323, x_283, x_324, x_321, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_325) == 0) { -lean_object* x_241; -x_241 = lean_ctor_get(x_240, 0); -lean_inc(x_241); -if (lean_obj_tag(x_241) == 0) +lean_object* x_326; +x_326 = lean_ctor_get(x_325, 0); +lean_inc(x_326); +if (lean_obj_tag(x_326) == 0) { -lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; +lean_object* x_327; lean_object* x_328; lean_object* x_329; lean_object* x_330; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -15285,48 +18366,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -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; +x_327 = lean_ctor_get(x_325, 1); +lean_inc(x_327); +if (lean_is_exclusive(x_325)) { + lean_ctor_release(x_325, 0); + lean_ctor_release(x_325, 1); + x_328 = x_325; } else { - lean_dec_ref(x_240); - x_243 = lean_box(0); + lean_dec_ref(x_325); + x_328 = lean_box(0); } -x_244 = lean_ctor_get(x_241, 0); -lean_inc(x_244); -lean_dec(x_241); -if (lean_is_scalar(x_243)) { - x_245 = lean_alloc_ctor(0, 2, 0); +x_329 = lean_ctor_get(x_326, 0); +lean_inc(x_329); +lean_dec(x_326); +if (lean_is_scalar(x_328)) { + x_330 = lean_alloc_ctor(0, 2, 0); } else { - x_245 = x_243; + x_330 = x_328; } -lean_ctor_set(x_245, 0, x_244); -lean_ctor_set(x_245, 1, x_242); -return x_245; +lean_ctor_set(x_330, 0, x_329); +lean_ctor_set(x_330, 1, x_327); +return x_330; } else { -lean_object* x_246; lean_object* x_247; size_t x_248; size_t x_249; -x_246 = lean_ctor_get(x_240, 1); -lean_inc(x_246); -lean_dec(x_240); -x_247 = lean_ctor_get(x_241, 0); -lean_inc(x_247); -lean_dec(x_241); -x_248 = 1; -x_249 = lean_usize_add(x_6, x_248); -x_6 = x_249; -x_7 = x_247; -x_15 = x_246; +lean_object* x_331; lean_object* x_332; size_t x_333; size_t x_334; +x_331 = lean_ctor_get(x_325, 1); +lean_inc(x_331); +lean_dec(x_325); +x_332 = lean_ctor_get(x_326, 0); +lean_inc(x_332); +lean_dec(x_326); +x_333 = 1; +x_334 = lean_usize_add(x_6, x_333); +x_6 = x_334; +x_7 = x_332; +x_15 = x_331; goto _start; } } else { -lean_object* x_251; lean_object* x_252; lean_object* x_253; lean_object* x_254; +lean_object* x_336; lean_object* x_337; lean_object* x_338; lean_object* x_339; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -15334,49 +18415,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_251 = lean_ctor_get(x_240, 0); -lean_inc(x_251); -x_252 = lean_ctor_get(x_240, 1); -lean_inc(x_252); -if (lean_is_exclusive(x_240)) { - lean_ctor_release(x_240, 0); - lean_ctor_release(x_240, 1); - x_253 = x_240; +x_336 = lean_ctor_get(x_325, 0); +lean_inc(x_336); +x_337 = lean_ctor_get(x_325, 1); +lean_inc(x_337); +if (lean_is_exclusive(x_325)) { + lean_ctor_release(x_325, 0); + lean_ctor_release(x_325, 1); + x_338 = x_325; } else { - lean_dec_ref(x_240); - x_253 = lean_box(0); + lean_dec_ref(x_325); + x_338 = lean_box(0); } -if (lean_is_scalar(x_253)) { - x_254 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_338)) { + x_339 = lean_alloc_ctor(1, 2, 0); } else { - x_254 = x_253; + x_339 = x_338; } -lean_ctor_set(x_254, 0, x_251); -lean_ctor_set(x_254, 1, x_252); -return x_254; +lean_ctor_set(x_339, 0, x_336); +lean_ctor_set(x_339, 1, x_337); +return x_339; } } else { -lean_object* x_255; uint8_t x_256; -x_255 = lean_array_fget(x_2, x_200); -x_256 = l_Lean_Meta_ParamInfo_isInstImplicit(x_255); -lean_dec(x_255); -if (x_256 == 0) +lean_object* x_340; uint8_t x_341; +x_340 = lean_array_fget(x_2, x_283); +x_341 = l_Lean_Meta_ParamInfo_isInstImplicit(x_340); +lean_dec(x_340); +if (x_341 == 0) { -lean_object* x_257; uint8_t x_258; uint8_t x_259; uint8_t x_260; lean_object* x_261; -lean_free_object(x_22); +lean_object* x_342; uint8_t x_343; uint8_t x_344; uint8_t x_345; lean_object* x_346; +lean_dec(x_285); lean_free_object(x_21); lean_free_object(x_20); lean_free_object(x_19); lean_free_object(x_7); -x_257 = lean_box(0); -x_258 = lean_unbox(x_34); +x_342 = lean_box(0); +x_343 = lean_unbox(x_34); lean_dec(x_34); -x_259 = lean_unbox(x_37); -lean_dec(x_37); -x_260 = lean_unbox(x_201); -lean_dec(x_201); +x_344 = lean_unbox(x_282); +lean_dec(x_282); +x_345 = lean_unbox(x_284); +lean_dec(x_284); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -15384,15 +18465,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_261 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_213, x_210, x_18, x_28, x_31, x_258, x_259, x_200, x_260, x_257, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_261) == 0) +x_346 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_298, x_295, x_18, x_28, x_31, x_343, x_344, x_283, x_345, x_342, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_346) == 0) { -lean_object* x_262; -x_262 = lean_ctor_get(x_261, 0); -lean_inc(x_262); -if (lean_obj_tag(x_262) == 0) +lean_object* x_347; +x_347 = lean_ctor_get(x_346, 0); +lean_inc(x_347); +if (lean_obj_tag(x_347) == 0) { -lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; +lean_object* x_348; lean_object* x_349; lean_object* x_350; lean_object* x_351; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -15400,48 +18481,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_263 = lean_ctor_get(x_261, 1); -lean_inc(x_263); -if (lean_is_exclusive(x_261)) { - lean_ctor_release(x_261, 0); - lean_ctor_release(x_261, 1); - x_264 = x_261; +x_348 = lean_ctor_get(x_346, 1); +lean_inc(x_348); +if (lean_is_exclusive(x_346)) { + lean_ctor_release(x_346, 0); + lean_ctor_release(x_346, 1); + x_349 = x_346; } else { - lean_dec_ref(x_261); - x_264 = lean_box(0); + lean_dec_ref(x_346); + x_349 = lean_box(0); } -x_265 = lean_ctor_get(x_262, 0); -lean_inc(x_265); -lean_dec(x_262); -if (lean_is_scalar(x_264)) { - x_266 = lean_alloc_ctor(0, 2, 0); +x_350 = lean_ctor_get(x_347, 0); +lean_inc(x_350); +lean_dec(x_347); +if (lean_is_scalar(x_349)) { + x_351 = lean_alloc_ctor(0, 2, 0); } else { - x_266 = x_264; + x_351 = x_349; } -lean_ctor_set(x_266, 0, x_265); -lean_ctor_set(x_266, 1, x_263); -return x_266; +lean_ctor_set(x_351, 0, x_350); +lean_ctor_set(x_351, 1, x_348); +return x_351; } else { -lean_object* x_267; lean_object* x_268; size_t x_269; size_t x_270; -x_267 = lean_ctor_get(x_261, 1); -lean_inc(x_267); -lean_dec(x_261); -x_268 = lean_ctor_get(x_262, 0); -lean_inc(x_268); -lean_dec(x_262); -x_269 = 1; -x_270 = lean_usize_add(x_6, x_269); -x_6 = x_270; -x_7 = x_268; -x_15 = x_267; +lean_object* x_352; lean_object* x_353; size_t x_354; size_t x_355; +x_352 = lean_ctor_get(x_346, 1); +lean_inc(x_352); +lean_dec(x_346); +x_353 = lean_ctor_get(x_347, 0); +lean_inc(x_353); +lean_dec(x_347); +x_354 = 1; +x_355 = lean_usize_add(x_6, x_354); +x_6 = x_355; +x_7 = x_353; +x_15 = x_352; goto _start; } } else { -lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; +lean_object* x_357; lean_object* x_358; lean_object* x_359; lean_object* x_360; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -15449,43 +18530,50 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_272 = lean_ctor_get(x_261, 0); -lean_inc(x_272); -x_273 = lean_ctor_get(x_261, 1); -lean_inc(x_273); -if (lean_is_exclusive(x_261)) { - lean_ctor_release(x_261, 0); - lean_ctor_release(x_261, 1); - x_274 = x_261; +x_357 = lean_ctor_get(x_346, 0); +lean_inc(x_357); +x_358 = lean_ctor_get(x_346, 1); +lean_inc(x_358); +if (lean_is_exclusive(x_346)) { + lean_ctor_release(x_346, 0); + lean_ctor_release(x_346, 1); + x_359 = x_346; } else { - lean_dec_ref(x_261); - x_274 = lean_box(0); + lean_dec_ref(x_346); + x_359 = lean_box(0); } -if (lean_is_scalar(x_274)) { - x_275 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_359)) { + x_360 = lean_alloc_ctor(1, 2, 0); } else { - x_275 = x_274; + x_360 = x_359; } -lean_ctor_set(x_275, 0, x_272); -lean_ctor_set(x_275, 1, x_273); -return x_275; +lean_ctor_set(x_360, 0, x_357); +lean_ctor_set(x_360, 1, x_358); +return x_360; } } else { -lean_object* x_276; lean_object* x_277; lean_object* x_278; size_t x_279; size_t x_280; -x_276 = lean_array_push(x_31, x_18); -x_277 = lean_nat_add(x_200, x_211); -lean_dec(x_200); -x_278 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_278, 0, x_277); -lean_ctor_set(x_278, 1, x_201); -lean_ctor_set(x_22, 1, x_278); -lean_ctor_set(x_20, 0, x_276); -lean_ctor_set(x_7, 0, x_213); -x_279 = 1; -x_280 = lean_usize_add(x_6, x_279); -x_6 = x_280; +lean_object* x_361; lean_object* x_362; lean_object* x_363; lean_object* x_364; size_t x_365; size_t x_366; +x_361 = lean_array_push(x_31, x_18); +x_362 = lean_nat_add(x_283, x_296); +lean_dec(x_283); +if (lean_is_scalar(x_285)) { + x_363 = lean_alloc_ctor(0, 2, 0); +} else { + x_363 = x_285; +} +lean_ctor_set(x_363, 0, x_362); +lean_ctor_set(x_363, 1, x_284); +x_364 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_364, 0, x_282); +lean_ctor_set(x_364, 1, x_363); +lean_ctor_set(x_21, 1, x_364); +lean_ctor_set(x_20, 0, x_361); +lean_ctor_set(x_7, 0, x_298); +x_365 = 1; +x_366 = lean_usize_add(x_6, x_365); +x_6 = x_366; goto _start; } } @@ -15495,35 +18583,45 @@ goto _start; } else { -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; uint8_t x_289; -x_282 = lean_ctor_get(x_22, 0); -lean_inc(x_282); -lean_dec(x_22); -x_283 = lean_ctor_get(x_23, 0); -lean_inc(x_283); -x_284 = lean_ctor_get(x_23, 1); -lean_inc(x_284); +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; uint8_t x_377; +x_368 = lean_ctor_get(x_21, 0); +lean_inc(x_368); +lean_dec(x_21); +x_369 = lean_ctor_get(x_22, 0); +lean_inc(x_369); +if (lean_is_exclusive(x_22)) { + lean_ctor_release(x_22, 0); + lean_ctor_release(x_22, 1); + x_370 = x_22; +} else { + lean_dec_ref(x_22); + x_370 = lean_box(0); +} +x_371 = lean_ctor_get(x_23, 0); +lean_inc(x_371); +x_372 = lean_ctor_get(x_23, 1); +lean_inc(x_372); if (lean_is_exclusive(x_23)) { lean_ctor_release(x_23, 0); lean_ctor_release(x_23, 1); - x_285 = x_23; + x_373 = x_23; } else { lean_dec_ref(x_23); - x_285 = lean_box(0); + x_373 = lean_box(0); } -x_286 = lean_ctor_get(x_25, 0); -lean_inc(x_286); -x_287 = lean_ctor_get(x_25, 1); -lean_inc(x_287); -x_288 = lean_ctor_get(x_25, 2); -lean_inc(x_288); -x_289 = lean_nat_dec_lt(x_287, x_288); -if (x_289 == 0) +x_374 = lean_ctor_get(x_25, 0); +lean_inc(x_374); +x_375 = lean_ctor_get(x_25, 1); +lean_inc(x_375); +x_376 = lean_ctor_get(x_25, 2); +lean_inc(x_376); +x_377 = lean_nat_dec_lt(x_375, x_376); +if (x_377 == 0) { -lean_object* x_290; lean_object* x_291; lean_object* x_292; -lean_dec(x_288); -lean_dec(x_287); -lean_dec(x_286); +lean_object* x_378; lean_object* x_379; lean_object* x_380; lean_object* x_381; +lean_dec(x_376); +lean_dec(x_375); +lean_dec(x_374); lean_dec(x_18); lean_dec(x_14); lean_dec(x_13); @@ -15532,64 +18630,71 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -if (lean_is_scalar(x_285)) { - x_290 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_373)) { + x_378 = lean_alloc_ctor(0, 2, 0); } else { - x_290 = x_285; + x_378 = x_373; } -lean_ctor_set(x_290, 0, x_283); -lean_ctor_set(x_290, 1, x_284); -x_291 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_291, 0, x_282); -lean_ctor_set(x_291, 1, x_290); -lean_ctor_set(x_21, 1, x_291); -x_292 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_292, 0, x_7); -lean_ctor_set(x_292, 1, x_15); -return x_292; +lean_ctor_set(x_378, 0, x_371); +lean_ctor_set(x_378, 1, x_372); +if (lean_is_scalar(x_370)) { + x_379 = lean_alloc_ctor(0, 2, 0); +} else { + x_379 = x_370; +} +lean_ctor_set(x_379, 0, x_369); +lean_ctor_set(x_379, 1, x_378); +x_380 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_380, 0, x_368); +lean_ctor_set(x_380, 1, x_379); +lean_ctor_set(x_20, 1, x_380); +x_381 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_381, 0, x_7); +lean_ctor_set(x_381, 1, x_15); +return x_381; } else { -lean_object* x_293; lean_object* x_294; uint8_t x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; uint8_t x_299; +lean_object* x_382; lean_object* x_383; uint8_t x_384; lean_object* x_385; lean_object* x_386; lean_object* x_387; uint8_t x_388; if (lean_is_exclusive(x_25)) { lean_ctor_release(x_25, 0); lean_ctor_release(x_25, 1); lean_ctor_release(x_25, 2); - x_293 = x_25; + x_382 = x_25; } else { lean_dec_ref(x_25); - x_293 = lean_box(0); + x_382 = lean_box(0); } -x_294 = lean_array_fget(x_286, x_287); -x_295 = lean_unbox(x_294); -lean_dec(x_294); -x_296 = lean_unsigned_to_nat(1u); -x_297 = lean_nat_add(x_287, x_296); -lean_dec(x_287); -if (lean_is_scalar(x_293)) { - x_298 = lean_alloc_ctor(0, 3, 0); +x_383 = lean_array_fget(x_374, x_375); +x_384 = lean_unbox(x_383); +lean_dec(x_383); +x_385 = lean_unsigned_to_nat(1u); +x_386 = lean_nat_add(x_375, x_385); +lean_dec(x_375); +if (lean_is_scalar(x_382)) { + x_387 = lean_alloc_ctor(0, 3, 0); } else { - x_298 = x_293; + x_387 = x_382; } -lean_ctor_set(x_298, 0, x_286); -lean_ctor_set(x_298, 1, x_297); -lean_ctor_set(x_298, 2, x_288); -x_299 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); -if (x_299 == 0) +lean_ctor_set(x_387, 0, x_374); +lean_ctor_set(x_387, 1, x_386); +lean_ctor_set(x_387, 2, x_376); +x_388 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); +if (x_388 == 0) { -lean_object* x_300; uint8_t x_301; uint8_t x_302; uint8_t x_303; lean_object* x_304; -lean_dec(x_285); -lean_free_object(x_21); +lean_object* x_389; uint8_t x_390; uint8_t x_391; uint8_t x_392; lean_object* x_393; +lean_dec(x_373); +lean_dec(x_370); lean_free_object(x_20); lean_free_object(x_19); lean_free_object(x_7); -x_300 = lean_box(0); -x_301 = lean_unbox(x_34); -lean_dec(x_34); -x_302 = lean_unbox(x_282); -lean_dec(x_282); -x_303 = lean_unbox(x_284); -lean_dec(x_284); +x_389 = lean_box(0); +x_390 = lean_unbox(x_368); +lean_dec(x_368); +x_391 = lean_unbox(x_369); +lean_dec(x_369); +x_392 = lean_unbox(x_372); +lean_dec(x_372); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -15597,15 +18702,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_304 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_298, x_295, x_18, x_28, x_31, x_301, x_302, x_283, x_303, x_300, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_304) == 0) +x_393 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_387, x_384, x_18, x_28, x_31, x_390, x_391, x_371, x_392, x_389, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_393) == 0) { -lean_object* x_305; -x_305 = lean_ctor_get(x_304, 0); -lean_inc(x_305); -if (lean_obj_tag(x_305) == 0) +lean_object* x_394; +x_394 = lean_ctor_get(x_393, 0); +lean_inc(x_394); +if (lean_obj_tag(x_394) == 0) { -lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; +lean_object* x_395; lean_object* x_396; lean_object* x_397; lean_object* x_398; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -15613,48 +18718,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_306 = lean_ctor_get(x_304, 1); -lean_inc(x_306); -if (lean_is_exclusive(x_304)) { - lean_ctor_release(x_304, 0); - lean_ctor_release(x_304, 1); - x_307 = x_304; +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_304); - x_307 = lean_box(0); + lean_dec_ref(x_393); + x_396 = lean_box(0); } -x_308 = lean_ctor_get(x_305, 0); -lean_inc(x_308); -lean_dec(x_305); -if (lean_is_scalar(x_307)) { - x_309 = lean_alloc_ctor(0, 2, 0); +x_397 = lean_ctor_get(x_394, 0); +lean_inc(x_397); +lean_dec(x_394); +if (lean_is_scalar(x_396)) { + x_398 = lean_alloc_ctor(0, 2, 0); } else { - x_309 = x_307; + x_398 = x_396; } -lean_ctor_set(x_309, 0, x_308); -lean_ctor_set(x_309, 1, x_306); -return x_309; +lean_ctor_set(x_398, 0, x_397); +lean_ctor_set(x_398, 1, x_395); +return x_398; } else { -lean_object* x_310; lean_object* x_311; size_t x_312; size_t x_313; -x_310 = lean_ctor_get(x_304, 1); -lean_inc(x_310); -lean_dec(x_304); -x_311 = lean_ctor_get(x_305, 0); -lean_inc(x_311); -lean_dec(x_305); -x_312 = 1; -x_313 = lean_usize_add(x_6, x_312); -x_6 = x_313; -x_7 = x_311; -x_15 = x_310; +lean_object* x_399; lean_object* x_400; size_t x_401; size_t x_402; +x_399 = lean_ctor_get(x_393, 1); +lean_inc(x_399); +lean_dec(x_393); +x_400 = lean_ctor_get(x_394, 0); +lean_inc(x_400); +lean_dec(x_394); +x_401 = 1; +x_402 = lean_usize_add(x_6, x_401); +x_6 = x_402; +x_7 = x_400; +x_15 = x_399; goto _start; } } else { -lean_object* x_315; lean_object* x_316; lean_object* x_317; lean_object* x_318; +lean_object* x_404; lean_object* x_405; lean_object* x_406; lean_object* x_407; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -15662,49 +18767,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_315 = lean_ctor_get(x_304, 0); -lean_inc(x_315); -x_316 = lean_ctor_get(x_304, 1); -lean_inc(x_316); -if (lean_is_exclusive(x_304)) { - lean_ctor_release(x_304, 0); - lean_ctor_release(x_304, 1); - x_317 = x_304; +x_404 = lean_ctor_get(x_393, 0); +lean_inc(x_404); +x_405 = lean_ctor_get(x_393, 1); +lean_inc(x_405); +if (lean_is_exclusive(x_393)) { + lean_ctor_release(x_393, 0); + lean_ctor_release(x_393, 1); + x_406 = x_393; } else { - lean_dec_ref(x_304); - x_317 = lean_box(0); + lean_dec_ref(x_393); + x_406 = lean_box(0); } -if (lean_is_scalar(x_317)) { - x_318 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_406)) { + x_407 = lean_alloc_ctor(1, 2, 0); } else { - x_318 = x_317; + x_407 = x_406; } -lean_ctor_set(x_318, 0, x_315); -lean_ctor_set(x_318, 1, x_316); -return x_318; +lean_ctor_set(x_407, 0, x_404); +lean_ctor_set(x_407, 1, x_405); +return x_407; } } else { -lean_object* x_319; uint8_t x_320; -x_319 = lean_array_get_size(x_2); -x_320 = lean_nat_dec_lt(x_283, x_319); -lean_dec(x_319); -if (x_320 == 0) +lean_object* x_408; uint8_t x_409; +x_408 = lean_array_get_size(x_2); +x_409 = lean_nat_dec_lt(x_371, x_408); +lean_dec(x_408); +if (x_409 == 0) { -lean_object* x_321; uint8_t x_322; uint8_t x_323; uint8_t x_324; lean_object* x_325; -lean_dec(x_285); -lean_free_object(x_21); +lean_object* x_410; uint8_t x_411; uint8_t x_412; uint8_t x_413; lean_object* x_414; +lean_dec(x_373); +lean_dec(x_370); lean_free_object(x_20); lean_free_object(x_19); lean_free_object(x_7); -x_321 = lean_box(0); -x_322 = lean_unbox(x_34); -lean_dec(x_34); -x_323 = lean_unbox(x_282); -lean_dec(x_282); -x_324 = lean_unbox(x_284); -lean_dec(x_284); +x_410 = lean_box(0); +x_411 = lean_unbox(x_368); +lean_dec(x_368); +x_412 = lean_unbox(x_369); +lean_dec(x_369); +x_413 = lean_unbox(x_372); +lean_dec(x_372); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -15712,15 +18817,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_325 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_298, x_295, x_18, x_28, x_31, x_322, x_323, x_283, x_324, x_321, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_325) == 0) +x_414 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_387, x_384, x_18, x_28, x_31, x_411, x_412, x_371, x_413, x_410, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_414) == 0) { -lean_object* x_326; -x_326 = lean_ctor_get(x_325, 0); -lean_inc(x_326); -if (lean_obj_tag(x_326) == 0) +lean_object* x_415; +x_415 = lean_ctor_get(x_414, 0); +lean_inc(x_415); +if (lean_obj_tag(x_415) == 0) { -lean_object* x_327; lean_object* x_328; lean_object* x_329; lean_object* x_330; +lean_object* x_416; lean_object* x_417; lean_object* x_418; lean_object* x_419; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -15728,48 +18833,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_327 = lean_ctor_get(x_325, 1); -lean_inc(x_327); -if (lean_is_exclusive(x_325)) { - lean_ctor_release(x_325, 0); - lean_ctor_release(x_325, 1); - x_328 = x_325; +x_416 = lean_ctor_get(x_414, 1); +lean_inc(x_416); +if (lean_is_exclusive(x_414)) { + lean_ctor_release(x_414, 0); + lean_ctor_release(x_414, 1); + x_417 = x_414; } else { - lean_dec_ref(x_325); - x_328 = lean_box(0); + lean_dec_ref(x_414); + x_417 = lean_box(0); } -x_329 = lean_ctor_get(x_326, 0); -lean_inc(x_329); -lean_dec(x_326); -if (lean_is_scalar(x_328)) { - x_330 = lean_alloc_ctor(0, 2, 0); +x_418 = lean_ctor_get(x_415, 0); +lean_inc(x_418); +lean_dec(x_415); +if (lean_is_scalar(x_417)) { + x_419 = lean_alloc_ctor(0, 2, 0); } else { - x_330 = x_328; + x_419 = x_417; } -lean_ctor_set(x_330, 0, x_329); -lean_ctor_set(x_330, 1, x_327); -return x_330; +lean_ctor_set(x_419, 0, x_418); +lean_ctor_set(x_419, 1, x_416); +return x_419; } else { -lean_object* x_331; lean_object* x_332; size_t x_333; size_t x_334; -x_331 = lean_ctor_get(x_325, 1); -lean_inc(x_331); -lean_dec(x_325); -x_332 = lean_ctor_get(x_326, 0); -lean_inc(x_332); -lean_dec(x_326); -x_333 = 1; -x_334 = lean_usize_add(x_6, x_333); -x_6 = x_334; -x_7 = x_332; -x_15 = x_331; +lean_object* x_420; lean_object* x_421; size_t x_422; size_t x_423; +x_420 = lean_ctor_get(x_414, 1); +lean_inc(x_420); +lean_dec(x_414); +x_421 = lean_ctor_get(x_415, 0); +lean_inc(x_421); +lean_dec(x_415); +x_422 = 1; +x_423 = lean_usize_add(x_6, x_422); +x_6 = x_423; +x_7 = x_421; +x_15 = x_420; goto _start; } } else { -lean_object* x_336; lean_object* x_337; lean_object* x_338; lean_object* x_339; +lean_object* x_425; lean_object* x_426; lean_object* x_427; lean_object* x_428; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -15777,49 +18882,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_336 = lean_ctor_get(x_325, 0); -lean_inc(x_336); -x_337 = lean_ctor_get(x_325, 1); -lean_inc(x_337); -if (lean_is_exclusive(x_325)) { - lean_ctor_release(x_325, 0); - lean_ctor_release(x_325, 1); - x_338 = x_325; +x_425 = lean_ctor_get(x_414, 0); +lean_inc(x_425); +x_426 = lean_ctor_get(x_414, 1); +lean_inc(x_426); +if (lean_is_exclusive(x_414)) { + lean_ctor_release(x_414, 0); + lean_ctor_release(x_414, 1); + x_427 = x_414; } else { - lean_dec_ref(x_325); - x_338 = lean_box(0); + lean_dec_ref(x_414); + x_427 = lean_box(0); } -if (lean_is_scalar(x_338)) { - x_339 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_427)) { + x_428 = lean_alloc_ctor(1, 2, 0); } else { - x_339 = x_338; + x_428 = x_427; } -lean_ctor_set(x_339, 0, x_336); -lean_ctor_set(x_339, 1, x_337); -return x_339; +lean_ctor_set(x_428, 0, x_425); +lean_ctor_set(x_428, 1, x_426); +return x_428; } } else { -lean_object* x_340; uint8_t x_341; -x_340 = lean_array_fget(x_2, x_283); -x_341 = l_Lean_Meta_ParamInfo_isInstImplicit(x_340); -lean_dec(x_340); -if (x_341 == 0) +lean_object* x_429; uint8_t x_430; +x_429 = lean_array_fget(x_2, x_371); +x_430 = l_Lean_Meta_ParamInfo_isInstImplicit(x_429); +lean_dec(x_429); +if (x_430 == 0) { -lean_object* x_342; uint8_t x_343; uint8_t x_344; uint8_t x_345; lean_object* x_346; -lean_dec(x_285); -lean_free_object(x_21); +lean_object* x_431; uint8_t x_432; uint8_t x_433; uint8_t x_434; lean_object* x_435; +lean_dec(x_373); +lean_dec(x_370); lean_free_object(x_20); lean_free_object(x_19); lean_free_object(x_7); -x_342 = lean_box(0); -x_343 = lean_unbox(x_34); -lean_dec(x_34); -x_344 = lean_unbox(x_282); -lean_dec(x_282); -x_345 = lean_unbox(x_284); -lean_dec(x_284); +x_431 = lean_box(0); +x_432 = lean_unbox(x_368); +lean_dec(x_368); +x_433 = lean_unbox(x_369); +lean_dec(x_369); +x_434 = lean_unbox(x_372); +lean_dec(x_372); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -15827,15 +18932,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_346 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_298, x_295, x_18, x_28, x_31, x_343, x_344, x_283, x_345, x_342, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_346) == 0) +x_435 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_387, x_384, x_18, x_28, x_31, x_432, x_433, x_371, x_434, x_431, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_435) == 0) { -lean_object* x_347; -x_347 = lean_ctor_get(x_346, 0); -lean_inc(x_347); -if (lean_obj_tag(x_347) == 0) +lean_object* x_436; +x_436 = lean_ctor_get(x_435, 0); +lean_inc(x_436); +if (lean_obj_tag(x_436) == 0) { -lean_object* x_348; lean_object* x_349; lean_object* x_350; lean_object* x_351; +lean_object* x_437; lean_object* x_438; lean_object* x_439; lean_object* x_440; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -15843,99 +18948,106 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_348 = lean_ctor_get(x_346, 1); -lean_inc(x_348); -if (lean_is_exclusive(x_346)) { - lean_ctor_release(x_346, 0); - lean_ctor_release(x_346, 1); - x_349 = x_346; +x_437 = lean_ctor_get(x_435, 1); +lean_inc(x_437); +if (lean_is_exclusive(x_435)) { + lean_ctor_release(x_435, 0); + lean_ctor_release(x_435, 1); + x_438 = x_435; } else { - lean_dec_ref(x_346); - x_349 = lean_box(0); + lean_dec_ref(x_435); + x_438 = lean_box(0); } -x_350 = lean_ctor_get(x_347, 0); -lean_inc(x_350); -lean_dec(x_347); -if (lean_is_scalar(x_349)) { - x_351 = lean_alloc_ctor(0, 2, 0); +x_439 = lean_ctor_get(x_436, 0); +lean_inc(x_439); +lean_dec(x_436); +if (lean_is_scalar(x_438)) { + x_440 = lean_alloc_ctor(0, 2, 0); } else { - x_351 = x_349; + x_440 = x_438; } -lean_ctor_set(x_351, 0, x_350); -lean_ctor_set(x_351, 1, x_348); -return x_351; +lean_ctor_set(x_440, 0, x_439); +lean_ctor_set(x_440, 1, x_437); +return x_440; } else { -lean_object* x_352; lean_object* x_353; size_t x_354; size_t x_355; -x_352 = lean_ctor_get(x_346, 1); -lean_inc(x_352); -lean_dec(x_346); -x_353 = lean_ctor_get(x_347, 0); -lean_inc(x_353); -lean_dec(x_347); -x_354 = 1; -x_355 = lean_usize_add(x_6, x_354); -x_6 = x_355; -x_7 = x_353; -x_15 = x_352; +lean_object* x_441; lean_object* x_442; size_t x_443; size_t x_444; +x_441 = lean_ctor_get(x_435, 1); +lean_inc(x_441); +lean_dec(x_435); +x_442 = lean_ctor_get(x_436, 0); +lean_inc(x_442); +lean_dec(x_436); +x_443 = 1; +x_444 = lean_usize_add(x_6, x_443); +x_6 = x_444; +x_7 = x_442; +x_15 = x_441; goto _start; } } else { -lean_object* x_357; lean_object* x_358; lean_object* x_359; lean_object* x_360; +lean_object* x_446; lean_object* x_447; lean_object* x_448; lean_object* 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); -x_357 = lean_ctor_get(x_346, 0); -lean_inc(x_357); -x_358 = lean_ctor_get(x_346, 1); -lean_inc(x_358); -if (lean_is_exclusive(x_346)) { - lean_ctor_release(x_346, 0); - lean_ctor_release(x_346, 1); - x_359 = x_346; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +x_446 = lean_ctor_get(x_435, 0); +lean_inc(x_446); +x_447 = lean_ctor_get(x_435, 1); +lean_inc(x_447); +if (lean_is_exclusive(x_435)) { + lean_ctor_release(x_435, 0); + lean_ctor_release(x_435, 1); + x_448 = x_435; } else { - lean_dec_ref(x_346); - x_359 = lean_box(0); + lean_dec_ref(x_435); + x_448 = lean_box(0); } -if (lean_is_scalar(x_359)) { - x_360 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_448)) { + x_449 = lean_alloc_ctor(1, 2, 0); } else { - x_360 = x_359; + x_449 = x_448; } -lean_ctor_set(x_360, 0, x_357); -lean_ctor_set(x_360, 1, x_358); -return x_360; +lean_ctor_set(x_449, 0, x_446); +lean_ctor_set(x_449, 1, x_447); +return x_449; } } else { -lean_object* x_361; lean_object* x_362; lean_object* x_363; lean_object* x_364; size_t x_365; size_t x_366; -x_361 = lean_array_push(x_31, x_18); -x_362 = lean_nat_add(x_283, x_296); -lean_dec(x_283); -if (lean_is_scalar(x_285)) { - x_363 = lean_alloc_ctor(0, 2, 0); +lean_object* x_450; lean_object* x_451; lean_object* x_452; lean_object* x_453; lean_object* x_454; size_t x_455; size_t x_456; +x_450 = lean_array_push(x_31, x_18); +x_451 = lean_nat_add(x_371, x_385); +lean_dec(x_371); +if (lean_is_scalar(x_373)) { + x_452 = lean_alloc_ctor(0, 2, 0); } else { - x_363 = x_285; + x_452 = x_373; } -lean_ctor_set(x_363, 0, x_362); -lean_ctor_set(x_363, 1, x_284); -x_364 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_364, 0, x_282); -lean_ctor_set(x_364, 1, x_363); -lean_ctor_set(x_21, 1, x_364); -lean_ctor_set(x_20, 0, x_361); -lean_ctor_set(x_7, 0, x_298); -x_365 = 1; -x_366 = lean_usize_add(x_6, x_365); -x_6 = x_366; +lean_ctor_set(x_452, 0, x_451); +lean_ctor_set(x_452, 1, x_372); +if (lean_is_scalar(x_370)) { + x_453 = lean_alloc_ctor(0, 2, 0); +} else { + x_453 = x_370; +} +lean_ctor_set(x_453, 0, x_369); +lean_ctor_set(x_453, 1, x_452); +x_454 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_454, 0, x_368); +lean_ctor_set(x_454, 1, x_453); +lean_ctor_set(x_20, 1, x_454); +lean_ctor_set(x_20, 0, x_450); +lean_ctor_set(x_7, 0, x_387); +x_455 = 1; +x_456 = lean_usize_add(x_6, x_455); +x_6 = x_456; goto _start; } } @@ -15945,45 +19057,55 @@ goto _start; } else { -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; uint8_t x_377; -x_368 = lean_ctor_get(x_21, 0); -lean_inc(x_368); -lean_dec(x_21); -x_369 = lean_ctor_get(x_22, 0); -lean_inc(x_369); +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; lean_object* x_468; uint8_t x_469; +x_458 = lean_ctor_get(x_20, 0); +lean_inc(x_458); +lean_dec(x_20); +x_459 = lean_ctor_get(x_21, 0); +lean_inc(x_459); +if (lean_is_exclusive(x_21)) { + lean_ctor_release(x_21, 0); + lean_ctor_release(x_21, 1); + x_460 = x_21; +} else { + lean_dec_ref(x_21); + x_460 = lean_box(0); +} +x_461 = lean_ctor_get(x_22, 0); +lean_inc(x_461); if (lean_is_exclusive(x_22)) { lean_ctor_release(x_22, 0); lean_ctor_release(x_22, 1); - x_370 = x_22; + x_462 = x_22; } else { lean_dec_ref(x_22); - x_370 = lean_box(0); + x_462 = lean_box(0); } -x_371 = lean_ctor_get(x_23, 0); -lean_inc(x_371); -x_372 = lean_ctor_get(x_23, 1); -lean_inc(x_372); +x_463 = lean_ctor_get(x_23, 0); +lean_inc(x_463); +x_464 = lean_ctor_get(x_23, 1); +lean_inc(x_464); if (lean_is_exclusive(x_23)) { lean_ctor_release(x_23, 0); lean_ctor_release(x_23, 1); - x_373 = x_23; + x_465 = x_23; } else { lean_dec_ref(x_23); - x_373 = lean_box(0); + x_465 = lean_box(0); } -x_374 = lean_ctor_get(x_25, 0); -lean_inc(x_374); -x_375 = lean_ctor_get(x_25, 1); -lean_inc(x_375); -x_376 = lean_ctor_get(x_25, 2); -lean_inc(x_376); -x_377 = lean_nat_dec_lt(x_375, x_376); -if (x_377 == 0) +x_466 = lean_ctor_get(x_25, 0); +lean_inc(x_466); +x_467 = lean_ctor_get(x_25, 1); +lean_inc(x_467); +x_468 = lean_ctor_get(x_25, 2); +lean_inc(x_468); +x_469 = lean_nat_dec_lt(x_467, x_468); +if (x_469 == 0) { -lean_object* x_378; lean_object* x_379; lean_object* x_380; lean_object* x_381; -lean_dec(x_376); -lean_dec(x_375); -lean_dec(x_374); +lean_object* x_470; lean_object* x_471; lean_object* x_472; lean_object* x_473; lean_object* x_474; +lean_dec(x_468); +lean_dec(x_467); +lean_dec(x_466); lean_dec(x_18); lean_dec(x_14); lean_dec(x_13); @@ -15992,71 +19114,78 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -if (lean_is_scalar(x_373)) { - x_378 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_465)) { + x_470 = lean_alloc_ctor(0, 2, 0); } else { - x_378 = x_373; + x_470 = x_465; } -lean_ctor_set(x_378, 0, x_371); -lean_ctor_set(x_378, 1, x_372); -if (lean_is_scalar(x_370)) { - x_379 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_470, 0, x_463); +lean_ctor_set(x_470, 1, x_464); +if (lean_is_scalar(x_462)) { + x_471 = lean_alloc_ctor(0, 2, 0); } else { - x_379 = x_370; + x_471 = x_462; } -lean_ctor_set(x_379, 0, x_369); -lean_ctor_set(x_379, 1, x_378); -x_380 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_380, 0, x_368); -lean_ctor_set(x_380, 1, x_379); -lean_ctor_set(x_20, 1, x_380); -x_381 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_381, 0, x_7); -lean_ctor_set(x_381, 1, x_15); -return x_381; +lean_ctor_set(x_471, 0, x_461); +lean_ctor_set(x_471, 1, x_470); +if (lean_is_scalar(x_460)) { + x_472 = lean_alloc_ctor(0, 2, 0); +} else { + x_472 = x_460; +} +lean_ctor_set(x_472, 0, x_459); +lean_ctor_set(x_472, 1, x_471); +x_473 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_473, 0, x_458); +lean_ctor_set(x_473, 1, x_472); +lean_ctor_set(x_19, 1, x_473); +x_474 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_474, 0, x_7); +lean_ctor_set(x_474, 1, x_15); +return x_474; } else { -lean_object* x_382; lean_object* x_383; uint8_t x_384; lean_object* x_385; lean_object* x_386; lean_object* x_387; uint8_t x_388; +lean_object* x_475; lean_object* x_476; uint8_t x_477; lean_object* x_478; lean_object* x_479; lean_object* x_480; uint8_t x_481; if (lean_is_exclusive(x_25)) { lean_ctor_release(x_25, 0); lean_ctor_release(x_25, 1); lean_ctor_release(x_25, 2); - x_382 = x_25; + x_475 = x_25; } else { lean_dec_ref(x_25); - x_382 = lean_box(0); + x_475 = lean_box(0); } -x_383 = lean_array_fget(x_374, x_375); -x_384 = lean_unbox(x_383); -lean_dec(x_383); -x_385 = lean_unsigned_to_nat(1u); -x_386 = lean_nat_add(x_375, x_385); -lean_dec(x_375); -if (lean_is_scalar(x_382)) { - x_387 = lean_alloc_ctor(0, 3, 0); +x_476 = lean_array_fget(x_466, x_467); +x_477 = lean_unbox(x_476); +lean_dec(x_476); +x_478 = lean_unsigned_to_nat(1u); +x_479 = lean_nat_add(x_467, x_478); +lean_dec(x_467); +if (lean_is_scalar(x_475)) { + x_480 = lean_alloc_ctor(0, 3, 0); } else { - x_387 = x_382; + x_480 = x_475; } -lean_ctor_set(x_387, 0, x_374); -lean_ctor_set(x_387, 1, x_386); -lean_ctor_set(x_387, 2, x_376); -x_388 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); -if (x_388 == 0) +lean_ctor_set(x_480, 0, x_466); +lean_ctor_set(x_480, 1, x_479); +lean_ctor_set(x_480, 2, x_468); +x_481 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); +if (x_481 == 0) { -lean_object* x_389; uint8_t x_390; uint8_t x_391; uint8_t x_392; lean_object* x_393; -lean_dec(x_373); -lean_dec(x_370); -lean_free_object(x_20); +lean_object* x_482; uint8_t x_483; uint8_t x_484; uint8_t x_485; lean_object* x_486; +lean_dec(x_465); +lean_dec(x_462); +lean_dec(x_460); lean_free_object(x_19); lean_free_object(x_7); -x_389 = lean_box(0); -x_390 = lean_unbox(x_368); -lean_dec(x_368); -x_391 = lean_unbox(x_369); -lean_dec(x_369); -x_392 = lean_unbox(x_372); -lean_dec(x_372); +x_482 = lean_box(0); +x_483 = lean_unbox(x_459); +lean_dec(x_459); +x_484 = lean_unbox(x_461); +lean_dec(x_461); +x_485 = lean_unbox(x_464); +lean_dec(x_464); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -16064,64 +19193,64 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_393 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_387, x_384, x_18, x_28, x_31, x_390, x_391, x_371, x_392, x_389, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_393) == 0) +x_486 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_480, x_477, x_18, x_28, x_458, x_483, x_484, x_463, x_485, x_482, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_486) == 0) { -lean_object* x_394; -x_394 = lean_ctor_get(x_393, 0); -lean_inc(x_394); -if (lean_obj_tag(x_394) == 0) +lean_object* x_487; +x_487 = lean_ctor_get(x_486, 0); +lean_inc(x_487); +if (lean_obj_tag(x_487) == 0) { -lean_object* x_395; lean_object* x_396; lean_object* x_397; lean_object* x_398; +lean_object* x_488; lean_object* x_489; lean_object* x_490; lean_object* x_491; 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); -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; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +x_488 = lean_ctor_get(x_486, 1); +lean_inc(x_488); +if (lean_is_exclusive(x_486)) { + lean_ctor_release(x_486, 0); + lean_ctor_release(x_486, 1); + x_489 = x_486; } else { - lean_dec_ref(x_393); - x_396 = lean_box(0); + lean_dec_ref(x_486); + x_489 = lean_box(0); } -x_397 = lean_ctor_get(x_394, 0); -lean_inc(x_397); -lean_dec(x_394); -if (lean_is_scalar(x_396)) { - x_398 = lean_alloc_ctor(0, 2, 0); +x_490 = lean_ctor_get(x_487, 0); +lean_inc(x_490); +lean_dec(x_487); +if (lean_is_scalar(x_489)) { + x_491 = lean_alloc_ctor(0, 2, 0); } else { - x_398 = x_396; + x_491 = x_489; } -lean_ctor_set(x_398, 0, x_397); -lean_ctor_set(x_398, 1, x_395); -return x_398; +lean_ctor_set(x_491, 0, x_490); +lean_ctor_set(x_491, 1, x_488); +return x_491; } else { -lean_object* x_399; lean_object* x_400; size_t x_401; size_t x_402; -x_399 = lean_ctor_get(x_393, 1); -lean_inc(x_399); -lean_dec(x_393); -x_400 = lean_ctor_get(x_394, 0); -lean_inc(x_400); -lean_dec(x_394); -x_401 = 1; -x_402 = lean_usize_add(x_6, x_401); -x_6 = x_402; -x_7 = x_400; -x_15 = x_399; +lean_object* x_492; lean_object* x_493; size_t x_494; size_t x_495; +x_492 = lean_ctor_get(x_486, 1); +lean_inc(x_492); +lean_dec(x_486); +x_493 = lean_ctor_get(x_487, 0); +lean_inc(x_493); +lean_dec(x_487); +x_494 = 1; +x_495 = lean_usize_add(x_6, x_494); +x_6 = x_495; +x_7 = x_493; +x_15 = x_492; goto _start; } } else { -lean_object* x_404; lean_object* x_405; lean_object* x_406; lean_object* x_407; +lean_object* x_497; lean_object* x_498; lean_object* x_499; lean_object* x_500; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -16129,49 +19258,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_404 = lean_ctor_get(x_393, 0); -lean_inc(x_404); -x_405 = lean_ctor_get(x_393, 1); -lean_inc(x_405); -if (lean_is_exclusive(x_393)) { - lean_ctor_release(x_393, 0); - lean_ctor_release(x_393, 1); - x_406 = x_393; +x_497 = lean_ctor_get(x_486, 0); +lean_inc(x_497); +x_498 = lean_ctor_get(x_486, 1); +lean_inc(x_498); +if (lean_is_exclusive(x_486)) { + lean_ctor_release(x_486, 0); + lean_ctor_release(x_486, 1); + x_499 = x_486; } else { - lean_dec_ref(x_393); - x_406 = lean_box(0); + lean_dec_ref(x_486); + x_499 = lean_box(0); } -if (lean_is_scalar(x_406)) { - x_407 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_499)) { + x_500 = lean_alloc_ctor(1, 2, 0); } else { - x_407 = x_406; + x_500 = x_499; } -lean_ctor_set(x_407, 0, x_404); -lean_ctor_set(x_407, 1, x_405); -return x_407; +lean_ctor_set(x_500, 0, x_497); +lean_ctor_set(x_500, 1, x_498); +return x_500; } } else { -lean_object* x_408; uint8_t x_409; -x_408 = lean_array_get_size(x_2); -x_409 = lean_nat_dec_lt(x_371, x_408); -lean_dec(x_408); -if (x_409 == 0) +lean_object* x_501; uint8_t x_502; +x_501 = lean_array_get_size(x_2); +x_502 = lean_nat_dec_lt(x_463, x_501); +lean_dec(x_501); +if (x_502 == 0) { -lean_object* x_410; uint8_t x_411; uint8_t x_412; uint8_t x_413; lean_object* x_414; -lean_dec(x_373); -lean_dec(x_370); -lean_free_object(x_20); +lean_object* x_503; uint8_t x_504; uint8_t x_505; uint8_t x_506; lean_object* x_507; +lean_dec(x_465); +lean_dec(x_462); +lean_dec(x_460); lean_free_object(x_19); lean_free_object(x_7); -x_410 = lean_box(0); -x_411 = lean_unbox(x_368); -lean_dec(x_368); -x_412 = lean_unbox(x_369); -lean_dec(x_369); -x_413 = lean_unbox(x_372); -lean_dec(x_372); +x_503 = lean_box(0); +x_504 = lean_unbox(x_459); +lean_dec(x_459); +x_505 = lean_unbox(x_461); +lean_dec(x_461); +x_506 = lean_unbox(x_464); +lean_dec(x_464); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -16179,15 +19308,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_414 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_387, x_384, x_18, x_28, x_31, x_411, x_412, x_371, x_413, x_410, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_414) == 0) +x_507 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_480, x_477, x_18, x_28, x_458, x_504, x_505, x_463, x_506, x_503, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_507) == 0) { -lean_object* x_415; -x_415 = lean_ctor_get(x_414, 0); -lean_inc(x_415); -if (lean_obj_tag(x_415) == 0) +lean_object* x_508; +x_508 = lean_ctor_get(x_507, 0); +lean_inc(x_508); +if (lean_obj_tag(x_508) == 0) { -lean_object* x_416; lean_object* x_417; lean_object* x_418; lean_object* x_419; +lean_object* x_509; lean_object* x_510; lean_object* x_511; lean_object* x_512; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -16195,48 +19324,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_416 = lean_ctor_get(x_414, 1); -lean_inc(x_416); -if (lean_is_exclusive(x_414)) { - lean_ctor_release(x_414, 0); - lean_ctor_release(x_414, 1); - x_417 = x_414; +x_509 = lean_ctor_get(x_507, 1); +lean_inc(x_509); +if (lean_is_exclusive(x_507)) { + lean_ctor_release(x_507, 0); + lean_ctor_release(x_507, 1); + x_510 = x_507; } else { - lean_dec_ref(x_414); - x_417 = lean_box(0); + lean_dec_ref(x_507); + x_510 = lean_box(0); } -x_418 = lean_ctor_get(x_415, 0); -lean_inc(x_418); -lean_dec(x_415); -if (lean_is_scalar(x_417)) { - x_419 = lean_alloc_ctor(0, 2, 0); +x_511 = lean_ctor_get(x_508, 0); +lean_inc(x_511); +lean_dec(x_508); +if (lean_is_scalar(x_510)) { + x_512 = lean_alloc_ctor(0, 2, 0); } else { - x_419 = x_417; + x_512 = x_510; } -lean_ctor_set(x_419, 0, x_418); -lean_ctor_set(x_419, 1, x_416); -return x_419; +lean_ctor_set(x_512, 0, x_511); +lean_ctor_set(x_512, 1, x_509); +return x_512; } else { -lean_object* x_420; lean_object* x_421; size_t x_422; size_t x_423; -x_420 = lean_ctor_get(x_414, 1); -lean_inc(x_420); -lean_dec(x_414); -x_421 = lean_ctor_get(x_415, 0); -lean_inc(x_421); -lean_dec(x_415); -x_422 = 1; -x_423 = lean_usize_add(x_6, x_422); -x_6 = x_423; -x_7 = x_421; -x_15 = x_420; +lean_object* x_513; lean_object* x_514; size_t x_515; size_t x_516; +x_513 = lean_ctor_get(x_507, 1); +lean_inc(x_513); +lean_dec(x_507); +x_514 = lean_ctor_get(x_508, 0); +lean_inc(x_514); +lean_dec(x_508); +x_515 = 1; +x_516 = lean_usize_add(x_6, x_515); +x_6 = x_516; +x_7 = x_514; +x_15 = x_513; goto _start; } } else { -lean_object* x_425; lean_object* x_426; lean_object* x_427; lean_object* x_428; +lean_object* x_518; lean_object* x_519; lean_object* x_520; lean_object* x_521; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -16244,49 +19373,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_425 = lean_ctor_get(x_414, 0); -lean_inc(x_425); -x_426 = lean_ctor_get(x_414, 1); -lean_inc(x_426); -if (lean_is_exclusive(x_414)) { - lean_ctor_release(x_414, 0); - lean_ctor_release(x_414, 1); - x_427 = x_414; +x_518 = lean_ctor_get(x_507, 0); +lean_inc(x_518); +x_519 = lean_ctor_get(x_507, 1); +lean_inc(x_519); +if (lean_is_exclusive(x_507)) { + lean_ctor_release(x_507, 0); + lean_ctor_release(x_507, 1); + x_520 = x_507; } else { - lean_dec_ref(x_414); - x_427 = lean_box(0); + lean_dec_ref(x_507); + x_520 = lean_box(0); } -if (lean_is_scalar(x_427)) { - x_428 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_520)) { + x_521 = lean_alloc_ctor(1, 2, 0); } else { - x_428 = x_427; + x_521 = x_520; } -lean_ctor_set(x_428, 0, x_425); -lean_ctor_set(x_428, 1, x_426); -return x_428; +lean_ctor_set(x_521, 0, x_518); +lean_ctor_set(x_521, 1, x_519); +return x_521; } } else { -lean_object* x_429; uint8_t x_430; -x_429 = lean_array_fget(x_2, x_371); -x_430 = l_Lean_Meta_ParamInfo_isInstImplicit(x_429); -lean_dec(x_429); -if (x_430 == 0) +lean_object* x_522; uint8_t x_523; +x_522 = lean_array_fget(x_2, x_463); +x_523 = l_Lean_Meta_ParamInfo_isInstImplicit(x_522); +lean_dec(x_522); +if (x_523 == 0) { -lean_object* x_431; uint8_t x_432; uint8_t x_433; uint8_t x_434; lean_object* x_435; -lean_dec(x_373); -lean_dec(x_370); -lean_free_object(x_20); +lean_object* x_524; uint8_t x_525; uint8_t x_526; uint8_t x_527; lean_object* x_528; +lean_dec(x_465); +lean_dec(x_462); +lean_dec(x_460); lean_free_object(x_19); lean_free_object(x_7); -x_431 = lean_box(0); -x_432 = lean_unbox(x_368); -lean_dec(x_368); -x_433 = lean_unbox(x_369); -lean_dec(x_369); -x_434 = lean_unbox(x_372); -lean_dec(x_372); +x_524 = lean_box(0); +x_525 = lean_unbox(x_459); +lean_dec(x_459); +x_526 = lean_unbox(x_461); +lean_dec(x_461); +x_527 = lean_unbox(x_464); +lean_dec(x_464); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -16294,15 +19423,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_435 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_387, x_384, x_18, x_28, x_31, x_432, x_433, x_371, x_434, x_431, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_435) == 0) +x_528 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_480, x_477, x_18, x_28, x_458, x_525, x_526, x_463, x_527, x_524, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_528) == 0) { -lean_object* x_436; -x_436 = lean_ctor_get(x_435, 0); -lean_inc(x_436); -if (lean_obj_tag(x_436) == 0) +lean_object* x_529; +x_529 = lean_ctor_get(x_528, 0); +lean_inc(x_529); +if (lean_obj_tag(x_529) == 0) { -lean_object* x_437; lean_object* x_438; lean_object* x_439; lean_object* x_440; +lean_object* x_530; lean_object* x_531; lean_object* x_532; lean_object* x_533; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -16310,48 +19439,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_437 = lean_ctor_get(x_435, 1); -lean_inc(x_437); -if (lean_is_exclusive(x_435)) { - lean_ctor_release(x_435, 0); - lean_ctor_release(x_435, 1); - x_438 = x_435; +x_530 = lean_ctor_get(x_528, 1); +lean_inc(x_530); +if (lean_is_exclusive(x_528)) { + lean_ctor_release(x_528, 0); + lean_ctor_release(x_528, 1); + x_531 = x_528; } else { - lean_dec_ref(x_435); - x_438 = lean_box(0); + lean_dec_ref(x_528); + x_531 = lean_box(0); } -x_439 = lean_ctor_get(x_436, 0); -lean_inc(x_439); -lean_dec(x_436); -if (lean_is_scalar(x_438)) { - x_440 = lean_alloc_ctor(0, 2, 0); +x_532 = lean_ctor_get(x_529, 0); +lean_inc(x_532); +lean_dec(x_529); +if (lean_is_scalar(x_531)) { + x_533 = lean_alloc_ctor(0, 2, 0); } else { - x_440 = x_438; + x_533 = x_531; } -lean_ctor_set(x_440, 0, x_439); -lean_ctor_set(x_440, 1, x_437); -return x_440; +lean_ctor_set(x_533, 0, x_532); +lean_ctor_set(x_533, 1, x_530); +return x_533; } else { -lean_object* x_441; lean_object* x_442; size_t x_443; size_t x_444; -x_441 = lean_ctor_get(x_435, 1); -lean_inc(x_441); -lean_dec(x_435); -x_442 = lean_ctor_get(x_436, 0); -lean_inc(x_442); -lean_dec(x_436); -x_443 = 1; -x_444 = lean_usize_add(x_6, x_443); -x_6 = x_444; -x_7 = x_442; -x_15 = x_441; +lean_object* x_534; lean_object* x_535; size_t x_536; size_t x_537; +x_534 = lean_ctor_get(x_528, 1); +lean_inc(x_534); +lean_dec(x_528); +x_535 = lean_ctor_get(x_529, 0); +lean_inc(x_535); +lean_dec(x_529); +x_536 = 1; +x_537 = lean_usize_add(x_6, x_536); +x_6 = x_537; +x_7 = x_535; +x_15 = x_534; goto _start; } } else { -lean_object* x_446; lean_object* x_447; lean_object* x_448; lean_object* x_449; +lean_object* x_539; lean_object* x_540; lean_object* x_541; lean_object* x_542; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -16359,57 +19488,63 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_446 = lean_ctor_get(x_435, 0); -lean_inc(x_446); -x_447 = lean_ctor_get(x_435, 1); -lean_inc(x_447); -if (lean_is_exclusive(x_435)) { - lean_ctor_release(x_435, 0); - lean_ctor_release(x_435, 1); - x_448 = x_435; +x_539 = lean_ctor_get(x_528, 0); +lean_inc(x_539); +x_540 = lean_ctor_get(x_528, 1); +lean_inc(x_540); +if (lean_is_exclusive(x_528)) { + lean_ctor_release(x_528, 0); + lean_ctor_release(x_528, 1); + x_541 = x_528; } else { - lean_dec_ref(x_435); - x_448 = lean_box(0); + lean_dec_ref(x_528); + x_541 = lean_box(0); } -if (lean_is_scalar(x_448)) { - x_449 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_541)) { + x_542 = lean_alloc_ctor(1, 2, 0); } else { - x_449 = x_448; + x_542 = x_541; } -lean_ctor_set(x_449, 0, x_446); -lean_ctor_set(x_449, 1, x_447); -return x_449; +lean_ctor_set(x_542, 0, x_539); +lean_ctor_set(x_542, 1, x_540); +return x_542; } } else { -lean_object* x_450; lean_object* x_451; lean_object* x_452; lean_object* x_453; lean_object* x_454; size_t x_455; size_t x_456; -x_450 = lean_array_push(x_31, x_18); -x_451 = lean_nat_add(x_371, x_385); -lean_dec(x_371); -if (lean_is_scalar(x_373)) { - x_452 = lean_alloc_ctor(0, 2, 0); +lean_object* x_543; lean_object* x_544; lean_object* x_545; lean_object* x_546; lean_object* x_547; lean_object* x_548; size_t x_549; size_t x_550; +x_543 = lean_array_push(x_458, x_18); +x_544 = lean_nat_add(x_463, x_478); +lean_dec(x_463); +if (lean_is_scalar(x_465)) { + x_545 = lean_alloc_ctor(0, 2, 0); } else { - x_452 = x_373; + x_545 = x_465; } -lean_ctor_set(x_452, 0, x_451); -lean_ctor_set(x_452, 1, x_372); -if (lean_is_scalar(x_370)) { - x_453 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_545, 0, x_544); +lean_ctor_set(x_545, 1, x_464); +if (lean_is_scalar(x_462)) { + x_546 = lean_alloc_ctor(0, 2, 0); } else { - x_453 = x_370; + x_546 = x_462; } -lean_ctor_set(x_453, 0, x_369); -lean_ctor_set(x_453, 1, x_452); -x_454 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_454, 0, x_368); -lean_ctor_set(x_454, 1, x_453); -lean_ctor_set(x_20, 1, x_454); -lean_ctor_set(x_20, 0, x_450); -lean_ctor_set(x_7, 0, x_387); -x_455 = 1; -x_456 = lean_usize_add(x_6, x_455); -x_6 = x_456; +lean_ctor_set(x_546, 0, x_461); +lean_ctor_set(x_546, 1, x_545); +if (lean_is_scalar(x_460)) { + x_547 = lean_alloc_ctor(0, 2, 0); +} else { + x_547 = x_460; +} +lean_ctor_set(x_547, 0, x_459); +lean_ctor_set(x_547, 1, x_546); +x_548 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_548, 0, x_543); +lean_ctor_set(x_548, 1, x_547); +lean_ctor_set(x_19, 1, x_548); +lean_ctor_set(x_7, 0, x_480); +x_549 = 1; +x_550 = lean_usize_add(x_6, x_549); +x_6 = x_550; goto _start; } } @@ -16419,55 +19554,65 @@ goto _start; } else { -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; lean_object* x_468; uint8_t x_469; -x_458 = lean_ctor_get(x_20, 0); -lean_inc(x_458); -lean_dec(x_20); -x_459 = lean_ctor_get(x_21, 0); -lean_inc(x_459); +lean_object* x_552; lean_object* x_553; lean_object* x_554; lean_object* x_555; lean_object* x_556; lean_object* x_557; lean_object* x_558; lean_object* x_559; lean_object* x_560; lean_object* x_561; lean_object* x_562; lean_object* x_563; lean_object* x_564; uint8_t x_565; +x_552 = lean_ctor_get(x_19, 0); +lean_inc(x_552); +lean_dec(x_19); +x_553 = lean_ctor_get(x_20, 0); +lean_inc(x_553); +if (lean_is_exclusive(x_20)) { + lean_ctor_release(x_20, 0); + lean_ctor_release(x_20, 1); + x_554 = x_20; +} else { + lean_dec_ref(x_20); + x_554 = lean_box(0); +} +x_555 = lean_ctor_get(x_21, 0); +lean_inc(x_555); if (lean_is_exclusive(x_21)) { lean_ctor_release(x_21, 0); lean_ctor_release(x_21, 1); - x_460 = x_21; + x_556 = x_21; } else { lean_dec_ref(x_21); - x_460 = lean_box(0); + x_556 = lean_box(0); } -x_461 = lean_ctor_get(x_22, 0); -lean_inc(x_461); +x_557 = lean_ctor_get(x_22, 0); +lean_inc(x_557); if (lean_is_exclusive(x_22)) { lean_ctor_release(x_22, 0); lean_ctor_release(x_22, 1); - x_462 = x_22; + x_558 = x_22; } else { lean_dec_ref(x_22); - x_462 = lean_box(0); + x_558 = lean_box(0); } -x_463 = lean_ctor_get(x_23, 0); -lean_inc(x_463); -x_464 = lean_ctor_get(x_23, 1); -lean_inc(x_464); +x_559 = lean_ctor_get(x_23, 0); +lean_inc(x_559); +x_560 = lean_ctor_get(x_23, 1); +lean_inc(x_560); if (lean_is_exclusive(x_23)) { lean_ctor_release(x_23, 0); lean_ctor_release(x_23, 1); - x_465 = x_23; + x_561 = x_23; } else { lean_dec_ref(x_23); - x_465 = lean_box(0); + x_561 = lean_box(0); } -x_466 = lean_ctor_get(x_25, 0); -lean_inc(x_466); -x_467 = lean_ctor_get(x_25, 1); -lean_inc(x_467); -x_468 = lean_ctor_get(x_25, 2); -lean_inc(x_468); -x_469 = lean_nat_dec_lt(x_467, x_468); -if (x_469 == 0) +x_562 = lean_ctor_get(x_25, 0); +lean_inc(x_562); +x_563 = lean_ctor_get(x_25, 1); +lean_inc(x_563); +x_564 = lean_ctor_get(x_25, 2); +lean_inc(x_564); +x_565 = lean_nat_dec_lt(x_563, x_564); +if (x_565 == 0) { -lean_object* x_470; lean_object* x_471; lean_object* x_472; lean_object* x_473; lean_object* x_474; -lean_dec(x_468); -lean_dec(x_467); -lean_dec(x_466); +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_dec(x_564); +lean_dec(x_563); +lean_dec(x_562); lean_dec(x_18); lean_dec(x_14); lean_dec(x_13); @@ -16476,78 +19621,85 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -if (lean_is_scalar(x_465)) { - x_470 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_561)) { + x_566 = lean_alloc_ctor(0, 2, 0); } else { - x_470 = x_465; + x_566 = x_561; } -lean_ctor_set(x_470, 0, x_463); -lean_ctor_set(x_470, 1, x_464); -if (lean_is_scalar(x_462)) { - x_471 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_566, 0, x_559); +lean_ctor_set(x_566, 1, x_560); +if (lean_is_scalar(x_558)) { + x_567 = lean_alloc_ctor(0, 2, 0); } else { - x_471 = x_462; + x_567 = x_558; } -lean_ctor_set(x_471, 0, x_461); -lean_ctor_set(x_471, 1, x_470); -if (lean_is_scalar(x_460)) { - x_472 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_567, 0, x_557); +lean_ctor_set(x_567, 1, x_566); +if (lean_is_scalar(x_556)) { + x_568 = lean_alloc_ctor(0, 2, 0); +} else { + x_568 = x_556; +} +lean_ctor_set(x_568, 0, x_555); +lean_ctor_set(x_568, 1, x_567); +if (lean_is_scalar(x_554)) { + x_569 = lean_alloc_ctor(0, 2, 0); } else { - x_472 = x_460; + x_569 = x_554; } -lean_ctor_set(x_472, 0, x_459); -lean_ctor_set(x_472, 1, x_471); -x_473 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_473, 0, x_458); -lean_ctor_set(x_473, 1, x_472); -lean_ctor_set(x_19, 1, x_473); -x_474 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_474, 0, x_7); -lean_ctor_set(x_474, 1, x_15); -return x_474; +lean_ctor_set(x_569, 0, x_553); +lean_ctor_set(x_569, 1, x_568); +x_570 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_570, 0, x_552); +lean_ctor_set(x_570, 1, x_569); +lean_ctor_set(x_7, 1, x_570); +x_571 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_571, 0, x_7); +lean_ctor_set(x_571, 1, x_15); +return x_571; } else { -lean_object* x_475; lean_object* x_476; uint8_t x_477; lean_object* x_478; lean_object* x_479; lean_object* x_480; uint8_t x_481; +lean_object* x_572; lean_object* x_573; uint8_t x_574; lean_object* x_575; lean_object* x_576; lean_object* x_577; uint8_t x_578; if (lean_is_exclusive(x_25)) { lean_ctor_release(x_25, 0); lean_ctor_release(x_25, 1); lean_ctor_release(x_25, 2); - x_475 = x_25; + x_572 = x_25; } else { lean_dec_ref(x_25); - x_475 = lean_box(0); + x_572 = lean_box(0); } -x_476 = lean_array_fget(x_466, x_467); -x_477 = lean_unbox(x_476); -lean_dec(x_476); -x_478 = lean_unsigned_to_nat(1u); -x_479 = lean_nat_add(x_467, x_478); -lean_dec(x_467); -if (lean_is_scalar(x_475)) { - x_480 = lean_alloc_ctor(0, 3, 0); +x_573 = lean_array_fget(x_562, x_563); +x_574 = lean_unbox(x_573); +lean_dec(x_573); +x_575 = lean_unsigned_to_nat(1u); +x_576 = lean_nat_add(x_563, x_575); +lean_dec(x_563); +if (lean_is_scalar(x_572)) { + x_577 = lean_alloc_ctor(0, 3, 0); } else { - x_480 = x_475; + x_577 = x_572; } -lean_ctor_set(x_480, 0, x_466); -lean_ctor_set(x_480, 1, x_479); -lean_ctor_set(x_480, 2, x_468); -x_481 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); -if (x_481 == 0) +lean_ctor_set(x_577, 0, x_562); +lean_ctor_set(x_577, 1, x_576); +lean_ctor_set(x_577, 2, x_564); +x_578 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); +if (x_578 == 0) { -lean_object* x_482; uint8_t x_483; uint8_t x_484; uint8_t x_485; lean_object* x_486; -lean_dec(x_465); -lean_dec(x_462); -lean_dec(x_460); -lean_free_object(x_19); +lean_object* x_579; uint8_t x_580; uint8_t x_581; uint8_t x_582; lean_object* x_583; +lean_dec(x_561); +lean_dec(x_558); +lean_dec(x_556); +lean_dec(x_554); lean_free_object(x_7); -x_482 = lean_box(0); -x_483 = lean_unbox(x_459); -lean_dec(x_459); -x_484 = lean_unbox(x_461); -lean_dec(x_461); -x_485 = lean_unbox(x_464); -lean_dec(x_464); +x_579 = lean_box(0); +x_580 = lean_unbox(x_555); +lean_dec(x_555); +x_581 = lean_unbox(x_557); +lean_dec(x_557); +x_582 = lean_unbox(x_560); +lean_dec(x_560); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -16555,15 +19707,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_486 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_480, x_477, x_18, x_28, x_458, x_483, x_484, x_463, x_485, x_482, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_486) == 0) +x_583 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_577, x_574, x_18, x_552, x_553, x_580, x_581, x_559, x_582, x_579, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_583) == 0) { -lean_object* x_487; -x_487 = lean_ctor_get(x_486, 0); -lean_inc(x_487); -if (lean_obj_tag(x_487) == 0) +lean_object* x_584; +x_584 = lean_ctor_get(x_583, 0); +lean_inc(x_584); +if (lean_obj_tag(x_584) == 0) { -lean_object* x_488; lean_object* x_489; lean_object* x_490; lean_object* x_491; +lean_object* x_585; lean_object* x_586; lean_object* x_587; lean_object* x_588; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -16571,48 +19723,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_488 = lean_ctor_get(x_486, 1); -lean_inc(x_488); -if (lean_is_exclusive(x_486)) { - lean_ctor_release(x_486, 0); - lean_ctor_release(x_486, 1); - x_489 = x_486; +x_585 = lean_ctor_get(x_583, 1); +lean_inc(x_585); +if (lean_is_exclusive(x_583)) { + lean_ctor_release(x_583, 0); + lean_ctor_release(x_583, 1); + x_586 = x_583; } else { - lean_dec_ref(x_486); - x_489 = lean_box(0); + lean_dec_ref(x_583); + x_586 = lean_box(0); } -x_490 = lean_ctor_get(x_487, 0); -lean_inc(x_490); -lean_dec(x_487); -if (lean_is_scalar(x_489)) { - x_491 = lean_alloc_ctor(0, 2, 0); +x_587 = lean_ctor_get(x_584, 0); +lean_inc(x_587); +lean_dec(x_584); +if (lean_is_scalar(x_586)) { + x_588 = lean_alloc_ctor(0, 2, 0); } else { - x_491 = x_489; + x_588 = x_586; } -lean_ctor_set(x_491, 0, x_490); -lean_ctor_set(x_491, 1, x_488); -return x_491; +lean_ctor_set(x_588, 0, x_587); +lean_ctor_set(x_588, 1, x_585); +return x_588; } else { -lean_object* x_492; lean_object* x_493; size_t x_494; size_t x_495; -x_492 = lean_ctor_get(x_486, 1); -lean_inc(x_492); -lean_dec(x_486); -x_493 = lean_ctor_get(x_487, 0); -lean_inc(x_493); -lean_dec(x_487); -x_494 = 1; -x_495 = lean_usize_add(x_6, x_494); -x_6 = x_495; -x_7 = x_493; -x_15 = x_492; +lean_object* x_589; lean_object* x_590; size_t x_591; size_t x_592; +x_589 = lean_ctor_get(x_583, 1); +lean_inc(x_589); +lean_dec(x_583); +x_590 = lean_ctor_get(x_584, 0); +lean_inc(x_590); +lean_dec(x_584); +x_591 = 1; +x_592 = lean_usize_add(x_6, x_591); +x_6 = x_592; +x_7 = x_590; +x_15 = x_589; goto _start; } } else { -lean_object* x_497; lean_object* x_498; lean_object* x_499; lean_object* x_500; +lean_object* x_594; lean_object* x_595; lean_object* x_596; lean_object* x_597; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -16620,49 +19772,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_497 = lean_ctor_get(x_486, 0); -lean_inc(x_497); -x_498 = lean_ctor_get(x_486, 1); -lean_inc(x_498); -if (lean_is_exclusive(x_486)) { - lean_ctor_release(x_486, 0); - lean_ctor_release(x_486, 1); - x_499 = x_486; +x_594 = lean_ctor_get(x_583, 0); +lean_inc(x_594); +x_595 = lean_ctor_get(x_583, 1); +lean_inc(x_595); +if (lean_is_exclusive(x_583)) { + lean_ctor_release(x_583, 0); + lean_ctor_release(x_583, 1); + x_596 = x_583; } else { - lean_dec_ref(x_486); - x_499 = lean_box(0); + lean_dec_ref(x_583); + x_596 = lean_box(0); } -if (lean_is_scalar(x_499)) { - x_500 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_596)) { + x_597 = lean_alloc_ctor(1, 2, 0); } else { - x_500 = x_499; + x_597 = x_596; } -lean_ctor_set(x_500, 0, x_497); -lean_ctor_set(x_500, 1, x_498); -return x_500; +lean_ctor_set(x_597, 0, x_594); +lean_ctor_set(x_597, 1, x_595); +return x_597; } } else { -lean_object* x_501; uint8_t x_502; -x_501 = lean_array_get_size(x_2); -x_502 = lean_nat_dec_lt(x_463, x_501); -lean_dec(x_501); -if (x_502 == 0) +lean_object* x_598; uint8_t x_599; +x_598 = lean_array_get_size(x_2); +x_599 = lean_nat_dec_lt(x_559, x_598); +lean_dec(x_598); +if (x_599 == 0) { -lean_object* x_503; uint8_t x_504; uint8_t x_505; uint8_t x_506; lean_object* x_507; -lean_dec(x_465); -lean_dec(x_462); -lean_dec(x_460); -lean_free_object(x_19); +lean_object* x_600; uint8_t x_601; uint8_t x_602; uint8_t x_603; lean_object* x_604; +lean_dec(x_561); +lean_dec(x_558); +lean_dec(x_556); +lean_dec(x_554); lean_free_object(x_7); -x_503 = lean_box(0); -x_504 = lean_unbox(x_459); -lean_dec(x_459); -x_505 = lean_unbox(x_461); -lean_dec(x_461); -x_506 = lean_unbox(x_464); -lean_dec(x_464); +x_600 = lean_box(0); +x_601 = lean_unbox(x_555); +lean_dec(x_555); +x_602 = lean_unbox(x_557); +lean_dec(x_557); +x_603 = lean_unbox(x_560); +lean_dec(x_560); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -16670,15 +19822,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_507 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_480, x_477, x_18, x_28, x_458, x_504, x_505, x_463, x_506, x_503, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_507) == 0) +x_604 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_577, x_574, x_18, x_552, x_553, x_601, x_602, x_559, x_603, x_600, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_604) == 0) { -lean_object* x_508; -x_508 = lean_ctor_get(x_507, 0); -lean_inc(x_508); -if (lean_obj_tag(x_508) == 0) +lean_object* x_605; +x_605 = lean_ctor_get(x_604, 0); +lean_inc(x_605); +if (lean_obj_tag(x_605) == 0) { -lean_object* x_509; lean_object* x_510; lean_object* x_511; lean_object* x_512; +lean_object* x_606; lean_object* x_607; lean_object* x_608; lean_object* x_609; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -16686,48 +19838,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_509 = lean_ctor_get(x_507, 1); -lean_inc(x_509); -if (lean_is_exclusive(x_507)) { - lean_ctor_release(x_507, 0); - lean_ctor_release(x_507, 1); - x_510 = x_507; +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_507); - x_510 = lean_box(0); + lean_dec_ref(x_604); + x_607 = lean_box(0); } -x_511 = lean_ctor_get(x_508, 0); -lean_inc(x_511); -lean_dec(x_508); -if (lean_is_scalar(x_510)) { - x_512 = lean_alloc_ctor(0, 2, 0); +x_608 = lean_ctor_get(x_605, 0); +lean_inc(x_608); +lean_dec(x_605); +if (lean_is_scalar(x_607)) { + x_609 = lean_alloc_ctor(0, 2, 0); } else { - x_512 = x_510; + x_609 = x_607; } -lean_ctor_set(x_512, 0, x_511); -lean_ctor_set(x_512, 1, x_509); -return x_512; +lean_ctor_set(x_609, 0, x_608); +lean_ctor_set(x_609, 1, x_606); +return x_609; } else { -lean_object* x_513; lean_object* x_514; size_t x_515; size_t x_516; -x_513 = lean_ctor_get(x_507, 1); -lean_inc(x_513); -lean_dec(x_507); -x_514 = lean_ctor_get(x_508, 0); -lean_inc(x_514); -lean_dec(x_508); -x_515 = 1; -x_516 = lean_usize_add(x_6, x_515); -x_6 = x_516; -x_7 = x_514; -x_15 = x_513; +lean_object* x_610; lean_object* x_611; size_t x_612; size_t x_613; +x_610 = lean_ctor_get(x_604, 1); +lean_inc(x_610); +lean_dec(x_604); +x_611 = lean_ctor_get(x_605, 0); +lean_inc(x_611); +lean_dec(x_605); +x_612 = 1; +x_613 = lean_usize_add(x_6, x_612); +x_6 = x_613; +x_7 = x_611; +x_15 = x_610; goto _start; } } else { -lean_object* x_518; lean_object* x_519; lean_object* x_520; lean_object* x_521; +lean_object* x_615; lean_object* x_616; lean_object* x_617; lean_object* x_618; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -16735,49 +19887,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_518 = lean_ctor_get(x_507, 0); -lean_inc(x_518); -x_519 = lean_ctor_get(x_507, 1); -lean_inc(x_519); -if (lean_is_exclusive(x_507)) { - lean_ctor_release(x_507, 0); - lean_ctor_release(x_507, 1); - x_520 = x_507; +x_615 = lean_ctor_get(x_604, 0); +lean_inc(x_615); +x_616 = lean_ctor_get(x_604, 1); +lean_inc(x_616); +if (lean_is_exclusive(x_604)) { + lean_ctor_release(x_604, 0); + lean_ctor_release(x_604, 1); + x_617 = x_604; } else { - lean_dec_ref(x_507); - x_520 = lean_box(0); + lean_dec_ref(x_604); + x_617 = lean_box(0); } -if (lean_is_scalar(x_520)) { - x_521 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_617)) { + x_618 = lean_alloc_ctor(1, 2, 0); } else { - x_521 = x_520; + x_618 = x_617; } -lean_ctor_set(x_521, 0, x_518); -lean_ctor_set(x_521, 1, x_519); -return x_521; +lean_ctor_set(x_618, 0, x_615); +lean_ctor_set(x_618, 1, x_616); +return x_618; } } else { -lean_object* x_522; uint8_t x_523; -x_522 = lean_array_fget(x_2, x_463); -x_523 = l_Lean_Meta_ParamInfo_isInstImplicit(x_522); -lean_dec(x_522); -if (x_523 == 0) +lean_object* x_619; uint8_t x_620; +x_619 = lean_array_fget(x_2, x_559); +x_620 = l_Lean_Meta_ParamInfo_isInstImplicit(x_619); +lean_dec(x_619); +if (x_620 == 0) { -lean_object* x_524; uint8_t x_525; uint8_t x_526; uint8_t x_527; lean_object* x_528; -lean_dec(x_465); -lean_dec(x_462); -lean_dec(x_460); -lean_free_object(x_19); +lean_object* x_621; uint8_t x_622; uint8_t x_623; uint8_t x_624; lean_object* x_625; +lean_dec(x_561); +lean_dec(x_558); +lean_dec(x_556); +lean_dec(x_554); lean_free_object(x_7); -x_524 = lean_box(0); -x_525 = lean_unbox(x_459); -lean_dec(x_459); -x_526 = lean_unbox(x_461); -lean_dec(x_461); -x_527 = lean_unbox(x_464); -lean_dec(x_464); +x_621 = lean_box(0); +x_622 = lean_unbox(x_555); +lean_dec(x_555); +x_623 = lean_unbox(x_557); +lean_dec(x_557); +x_624 = lean_unbox(x_560); +lean_dec(x_560); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -16785,15 +19937,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_528 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_480, x_477, x_18, x_28, x_458, x_525, x_526, x_463, x_527, x_524, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_528) == 0) +x_625 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_577, x_574, x_18, x_552, x_553, x_622, x_623, x_559, x_624, x_621, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_625) == 0) { -lean_object* x_529; -x_529 = lean_ctor_get(x_528, 0); -lean_inc(x_529); -if (lean_obj_tag(x_529) == 0) +lean_object* x_626; +x_626 = lean_ctor_get(x_625, 0); +lean_inc(x_626); +if (lean_obj_tag(x_626) == 0) { -lean_object* x_530; lean_object* x_531; lean_object* x_532; lean_object* x_533; +lean_object* x_627; lean_object* x_628; lean_object* x_629; lean_object* x_630; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -16801,48 +19953,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_530 = lean_ctor_get(x_528, 1); -lean_inc(x_530); -if (lean_is_exclusive(x_528)) { - lean_ctor_release(x_528, 0); - lean_ctor_release(x_528, 1); - x_531 = x_528; +x_627 = lean_ctor_get(x_625, 1); +lean_inc(x_627); +if (lean_is_exclusive(x_625)) { + lean_ctor_release(x_625, 0); + lean_ctor_release(x_625, 1); + x_628 = x_625; } else { - lean_dec_ref(x_528); - x_531 = lean_box(0); + lean_dec_ref(x_625); + x_628 = lean_box(0); } -x_532 = lean_ctor_get(x_529, 0); -lean_inc(x_532); -lean_dec(x_529); -if (lean_is_scalar(x_531)) { - x_533 = lean_alloc_ctor(0, 2, 0); +x_629 = lean_ctor_get(x_626, 0); +lean_inc(x_629); +lean_dec(x_626); +if (lean_is_scalar(x_628)) { + x_630 = lean_alloc_ctor(0, 2, 0); } else { - x_533 = x_531; + x_630 = x_628; } -lean_ctor_set(x_533, 0, x_532); -lean_ctor_set(x_533, 1, x_530); -return x_533; +lean_ctor_set(x_630, 0, x_629); +lean_ctor_set(x_630, 1, x_627); +return x_630; } else { -lean_object* x_534; lean_object* x_535; size_t x_536; size_t x_537; -x_534 = lean_ctor_get(x_528, 1); -lean_inc(x_534); -lean_dec(x_528); -x_535 = lean_ctor_get(x_529, 0); -lean_inc(x_535); -lean_dec(x_529); -x_536 = 1; -x_537 = lean_usize_add(x_6, x_536); -x_6 = x_537; -x_7 = x_535; -x_15 = x_534; +lean_object* x_631; lean_object* x_632; size_t x_633; size_t x_634; +x_631 = lean_ctor_get(x_625, 1); +lean_inc(x_631); +lean_dec(x_625); +x_632 = lean_ctor_get(x_626, 0); +lean_inc(x_632); +lean_dec(x_626); +x_633 = 1; +x_634 = lean_usize_add(x_6, x_633); +x_6 = x_634; +x_7 = x_632; +x_15 = x_631; goto _start; } } else { -lean_object* x_539; lean_object* x_540; lean_object* x_541; lean_object* x_542; +lean_object* x_636; lean_object* x_637; lean_object* x_638; lean_object* x_639; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -16850,63 +20002,70 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_539 = lean_ctor_get(x_528, 0); -lean_inc(x_539); -x_540 = lean_ctor_get(x_528, 1); -lean_inc(x_540); -if (lean_is_exclusive(x_528)) { - lean_ctor_release(x_528, 0); - lean_ctor_release(x_528, 1); - x_541 = x_528; +x_636 = lean_ctor_get(x_625, 0); +lean_inc(x_636); +x_637 = lean_ctor_get(x_625, 1); +lean_inc(x_637); +if (lean_is_exclusive(x_625)) { + lean_ctor_release(x_625, 0); + lean_ctor_release(x_625, 1); + x_638 = x_625; } else { - lean_dec_ref(x_528); - x_541 = lean_box(0); + lean_dec_ref(x_625); + x_638 = lean_box(0); } -if (lean_is_scalar(x_541)) { - x_542 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_638)) { + x_639 = lean_alloc_ctor(1, 2, 0); } else { - x_542 = x_541; + x_639 = x_638; } -lean_ctor_set(x_542, 0, x_539); -lean_ctor_set(x_542, 1, x_540); -return x_542; +lean_ctor_set(x_639, 0, x_636); +lean_ctor_set(x_639, 1, x_637); +return x_639; } } else { -lean_object* x_543; lean_object* x_544; lean_object* x_545; lean_object* x_546; lean_object* x_547; lean_object* x_548; size_t x_549; size_t x_550; -x_543 = lean_array_push(x_458, x_18); -x_544 = lean_nat_add(x_463, x_478); -lean_dec(x_463); -if (lean_is_scalar(x_465)) { - x_545 = lean_alloc_ctor(0, 2, 0); +lean_object* x_640; lean_object* x_641; lean_object* x_642; lean_object* x_643; lean_object* x_644; lean_object* x_645; lean_object* x_646; size_t x_647; size_t x_648; +x_640 = lean_array_push(x_553, x_18); +x_641 = lean_nat_add(x_559, x_575); +lean_dec(x_559); +if (lean_is_scalar(x_561)) { + x_642 = lean_alloc_ctor(0, 2, 0); } else { - x_545 = x_465; + x_642 = x_561; } -lean_ctor_set(x_545, 0, x_544); -lean_ctor_set(x_545, 1, x_464); -if (lean_is_scalar(x_462)) { - x_546 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_642, 0, x_641); +lean_ctor_set(x_642, 1, x_560); +if (lean_is_scalar(x_558)) { + x_643 = lean_alloc_ctor(0, 2, 0); } else { - x_546 = x_462; + x_643 = x_558; } -lean_ctor_set(x_546, 0, x_461); -lean_ctor_set(x_546, 1, x_545); -if (lean_is_scalar(x_460)) { - x_547 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_643, 0, x_557); +lean_ctor_set(x_643, 1, x_642); +if (lean_is_scalar(x_556)) { + x_644 = lean_alloc_ctor(0, 2, 0); } else { - x_547 = x_460; + x_644 = x_556; } -lean_ctor_set(x_547, 0, x_459); -lean_ctor_set(x_547, 1, x_546); -x_548 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_548, 0, x_543); -lean_ctor_set(x_548, 1, x_547); -lean_ctor_set(x_19, 1, x_548); -lean_ctor_set(x_7, 0, x_480); -x_549 = 1; -x_550 = lean_usize_add(x_6, x_549); -x_6 = x_550; +lean_ctor_set(x_644, 0, x_555); +lean_ctor_set(x_644, 1, x_643); +if (lean_is_scalar(x_554)) { + x_645 = lean_alloc_ctor(0, 2, 0); +} else { + x_645 = x_554; +} +lean_ctor_set(x_645, 0, x_640); +lean_ctor_set(x_645, 1, x_644); +x_646 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_646, 0, x_552); +lean_ctor_set(x_646, 1, x_645); +lean_ctor_set(x_7, 1, x_646); +lean_ctor_set(x_7, 0, x_577); +x_647 = 1; +x_648 = lean_usize_add(x_6, x_647); +x_6 = x_648; goto _start; } } @@ -16916,65 +20075,75 @@ goto _start; } else { -lean_object* x_552; lean_object* x_553; lean_object* x_554; lean_object* x_555; lean_object* x_556; lean_object* x_557; lean_object* x_558; lean_object* x_559; lean_object* x_560; lean_object* x_561; lean_object* x_562; lean_object* x_563; lean_object* x_564; uint8_t x_565; -x_552 = lean_ctor_get(x_19, 0); -lean_inc(x_552); -lean_dec(x_19); -x_553 = lean_ctor_get(x_20, 0); -lean_inc(x_553); +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_object* x_657; lean_object* x_658; lean_object* x_659; lean_object* x_660; lean_object* x_661; lean_object* x_662; lean_object* x_663; lean_object* x_664; uint8_t x_665; +x_650 = lean_ctor_get(x_7, 0); +lean_inc(x_650); +lean_dec(x_7); +x_651 = lean_ctor_get(x_19, 0); +lean_inc(x_651); +if (lean_is_exclusive(x_19)) { + lean_ctor_release(x_19, 0); + lean_ctor_release(x_19, 1); + x_652 = x_19; +} else { + lean_dec_ref(x_19); + x_652 = lean_box(0); +} +x_653 = lean_ctor_get(x_20, 0); +lean_inc(x_653); if (lean_is_exclusive(x_20)) { lean_ctor_release(x_20, 0); lean_ctor_release(x_20, 1); - x_554 = x_20; + x_654 = x_20; } else { lean_dec_ref(x_20); - x_554 = lean_box(0); + x_654 = lean_box(0); } -x_555 = lean_ctor_get(x_21, 0); -lean_inc(x_555); +x_655 = lean_ctor_get(x_21, 0); +lean_inc(x_655); if (lean_is_exclusive(x_21)) { lean_ctor_release(x_21, 0); lean_ctor_release(x_21, 1); - x_556 = x_21; + x_656 = x_21; } else { lean_dec_ref(x_21); - x_556 = lean_box(0); + x_656 = lean_box(0); } -x_557 = lean_ctor_get(x_22, 0); -lean_inc(x_557); +x_657 = lean_ctor_get(x_22, 0); +lean_inc(x_657); if (lean_is_exclusive(x_22)) { lean_ctor_release(x_22, 0); lean_ctor_release(x_22, 1); - x_558 = x_22; + x_658 = x_22; } else { lean_dec_ref(x_22); - x_558 = lean_box(0); + x_658 = lean_box(0); } -x_559 = lean_ctor_get(x_23, 0); -lean_inc(x_559); -x_560 = lean_ctor_get(x_23, 1); -lean_inc(x_560); +x_659 = lean_ctor_get(x_23, 0); +lean_inc(x_659); +x_660 = lean_ctor_get(x_23, 1); +lean_inc(x_660); if (lean_is_exclusive(x_23)) { lean_ctor_release(x_23, 0); lean_ctor_release(x_23, 1); - x_561 = x_23; + x_661 = x_23; } else { lean_dec_ref(x_23); - x_561 = lean_box(0); + x_661 = lean_box(0); } -x_562 = lean_ctor_get(x_25, 0); -lean_inc(x_562); -x_563 = lean_ctor_get(x_25, 1); -lean_inc(x_563); -x_564 = lean_ctor_get(x_25, 2); -lean_inc(x_564); -x_565 = lean_nat_dec_lt(x_563, x_564); -if (x_565 == 0) +x_662 = lean_ctor_get(x_650, 0); +lean_inc(x_662); +x_663 = lean_ctor_get(x_650, 1); +lean_inc(x_663); +x_664 = lean_ctor_get(x_650, 2); +lean_inc(x_664); +x_665 = lean_nat_dec_lt(x_663, x_664); +if (x_665 == 0) { -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_dec(x_564); -lean_dec(x_563); -lean_dec(x_562); +lean_object* x_666; lean_object* x_667; lean_object* x_668; lean_object* x_669; lean_object* x_670; lean_object* x_671; lean_object* x_672; +lean_dec(x_664); +lean_dec(x_663); +lean_dec(x_662); lean_dec(x_18); lean_dec(x_14); lean_dec(x_13); @@ -16983,85 +20152,91 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -if (lean_is_scalar(x_561)) { - x_566 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_661)) { + x_666 = lean_alloc_ctor(0, 2, 0); } else { - x_566 = x_561; + x_666 = x_661; } -lean_ctor_set(x_566, 0, x_559); -lean_ctor_set(x_566, 1, x_560); -if (lean_is_scalar(x_558)) { - x_567 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_666, 0, x_659); +lean_ctor_set(x_666, 1, x_660); +if (lean_is_scalar(x_658)) { + x_667 = lean_alloc_ctor(0, 2, 0); } else { - x_567 = x_558; + x_667 = x_658; } -lean_ctor_set(x_567, 0, x_557); -lean_ctor_set(x_567, 1, x_566); -if (lean_is_scalar(x_556)) { - x_568 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_667, 0, x_657); +lean_ctor_set(x_667, 1, x_666); +if (lean_is_scalar(x_656)) { + x_668 = lean_alloc_ctor(0, 2, 0); } else { - x_568 = x_556; + x_668 = x_656; } -lean_ctor_set(x_568, 0, x_555); -lean_ctor_set(x_568, 1, x_567); -if (lean_is_scalar(x_554)) { - x_569 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_668, 0, x_655); +lean_ctor_set(x_668, 1, x_667); +if (lean_is_scalar(x_654)) { + x_669 = lean_alloc_ctor(0, 2, 0); } else { - x_569 = x_554; + x_669 = x_654; } -lean_ctor_set(x_569, 0, x_553); -lean_ctor_set(x_569, 1, x_568); -x_570 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_570, 0, x_552); -lean_ctor_set(x_570, 1, x_569); -lean_ctor_set(x_7, 1, x_570); -x_571 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_571, 0, x_7); -lean_ctor_set(x_571, 1, x_15); -return x_571; +lean_ctor_set(x_669, 0, x_653); +lean_ctor_set(x_669, 1, x_668); +if (lean_is_scalar(x_652)) { + x_670 = lean_alloc_ctor(0, 2, 0); +} else { + x_670 = x_652; +} +lean_ctor_set(x_670, 0, x_651); +lean_ctor_set(x_670, 1, x_669); +x_671 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_671, 0, x_650); +lean_ctor_set(x_671, 1, x_670); +x_672 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_672, 0, x_671); +lean_ctor_set(x_672, 1, x_15); +return x_672; } else { -lean_object* x_572; lean_object* x_573; uint8_t x_574; lean_object* x_575; lean_object* x_576; lean_object* x_577; uint8_t x_578; -if (lean_is_exclusive(x_25)) { - lean_ctor_release(x_25, 0); - lean_ctor_release(x_25, 1); - lean_ctor_release(x_25, 2); - x_572 = x_25; +lean_object* x_673; lean_object* x_674; uint8_t x_675; lean_object* x_676; lean_object* x_677; lean_object* x_678; uint8_t x_679; +if (lean_is_exclusive(x_650)) { + lean_ctor_release(x_650, 0); + lean_ctor_release(x_650, 1); + lean_ctor_release(x_650, 2); + x_673 = x_650; } else { - lean_dec_ref(x_25); - x_572 = lean_box(0); + lean_dec_ref(x_650); + x_673 = lean_box(0); } -x_573 = lean_array_fget(x_562, x_563); -x_574 = lean_unbox(x_573); -lean_dec(x_573); -x_575 = lean_unsigned_to_nat(1u); -x_576 = lean_nat_add(x_563, x_575); -lean_dec(x_563); -if (lean_is_scalar(x_572)) { - x_577 = lean_alloc_ctor(0, 3, 0); +x_674 = lean_array_fget(x_662, x_663); +x_675 = lean_unbox(x_674); +lean_dec(x_674); +x_676 = lean_unsigned_to_nat(1u); +x_677 = lean_nat_add(x_663, x_676); +lean_dec(x_663); +if (lean_is_scalar(x_673)) { + x_678 = lean_alloc_ctor(0, 3, 0); } else { - x_577 = x_572; + x_678 = x_673; } -lean_ctor_set(x_577, 0, x_562); -lean_ctor_set(x_577, 1, x_576); -lean_ctor_set(x_577, 2, x_564); -x_578 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); -if (x_578 == 0) +lean_ctor_set(x_678, 0, x_662); +lean_ctor_set(x_678, 1, x_677); +lean_ctor_set(x_678, 2, x_664); +x_679 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); +if (x_679 == 0) { -lean_object* x_579; uint8_t x_580; uint8_t x_581; uint8_t x_582; lean_object* x_583; -lean_dec(x_561); -lean_dec(x_558); -lean_dec(x_556); -lean_dec(x_554); -lean_free_object(x_7); -x_579 = lean_box(0); -x_580 = lean_unbox(x_555); -lean_dec(x_555); -x_581 = lean_unbox(x_557); -lean_dec(x_557); -x_582 = lean_unbox(x_560); -lean_dec(x_560); +lean_object* x_680; uint8_t x_681; uint8_t x_682; uint8_t x_683; lean_object* x_684; +lean_dec(x_661); +lean_dec(x_658); +lean_dec(x_656); +lean_dec(x_654); +lean_dec(x_652); +x_680 = lean_box(0); +x_681 = lean_unbox(x_655); +lean_dec(x_655); +x_682 = lean_unbox(x_657); +lean_dec(x_657); +x_683 = lean_unbox(x_660); +lean_dec(x_660); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -17069,15 +20244,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_583 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_577, x_574, x_18, x_552, x_553, x_580, x_581, x_559, x_582, x_579, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_583) == 0) +x_684 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_678, x_675, x_18, x_651, x_653, x_681, x_682, x_659, x_683, x_680, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_684) == 0) { -lean_object* x_584; -x_584 = lean_ctor_get(x_583, 0); -lean_inc(x_584); -if (lean_obj_tag(x_584) == 0) +lean_object* x_685; +x_685 = lean_ctor_get(x_684, 0); +lean_inc(x_685); +if (lean_obj_tag(x_685) == 0) { -lean_object* x_585; lean_object* x_586; lean_object* x_587; lean_object* x_588; +lean_object* x_686; lean_object* x_687; lean_object* x_688; lean_object* x_689; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -17085,48 +20260,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_585 = lean_ctor_get(x_583, 1); -lean_inc(x_585); -if (lean_is_exclusive(x_583)) { - lean_ctor_release(x_583, 0); - lean_ctor_release(x_583, 1); - x_586 = x_583; +x_686 = lean_ctor_get(x_684, 1); +lean_inc(x_686); +if (lean_is_exclusive(x_684)) { + lean_ctor_release(x_684, 0); + lean_ctor_release(x_684, 1); + x_687 = x_684; } else { - lean_dec_ref(x_583); - x_586 = lean_box(0); -} -x_587 = lean_ctor_get(x_584, 0); -lean_inc(x_587); -lean_dec(x_584); -if (lean_is_scalar(x_586)) { - x_588 = lean_alloc_ctor(0, 2, 0); + lean_dec_ref(x_684); + x_687 = lean_box(0); +} +x_688 = lean_ctor_get(x_685, 0); +lean_inc(x_688); +lean_dec(x_685); +if (lean_is_scalar(x_687)) { + x_689 = lean_alloc_ctor(0, 2, 0); } else { - x_588 = x_586; + x_689 = x_687; } -lean_ctor_set(x_588, 0, x_587); -lean_ctor_set(x_588, 1, x_585); -return x_588; +lean_ctor_set(x_689, 0, x_688); +lean_ctor_set(x_689, 1, x_686); +return x_689; } else { -lean_object* x_589; lean_object* x_590; size_t x_591; size_t x_592; -x_589 = lean_ctor_get(x_583, 1); -lean_inc(x_589); -lean_dec(x_583); -x_590 = lean_ctor_get(x_584, 0); -lean_inc(x_590); -lean_dec(x_584); -x_591 = 1; -x_592 = lean_usize_add(x_6, x_591); -x_6 = x_592; -x_7 = x_590; -x_15 = x_589; +lean_object* x_690; lean_object* x_691; size_t x_692; size_t x_693; +x_690 = lean_ctor_get(x_684, 1); +lean_inc(x_690); +lean_dec(x_684); +x_691 = lean_ctor_get(x_685, 0); +lean_inc(x_691); +lean_dec(x_685); +x_692 = 1; +x_693 = lean_usize_add(x_6, x_692); +x_6 = x_693; +x_7 = x_691; +x_15 = x_690; goto _start; } } else { -lean_object* x_594; lean_object* x_595; lean_object* x_596; lean_object* x_597; +lean_object* x_695; lean_object* x_696; lean_object* x_697; lean_object* x_698; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -17134,49 +20309,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_594 = lean_ctor_get(x_583, 0); -lean_inc(x_594); -x_595 = lean_ctor_get(x_583, 1); -lean_inc(x_595); -if (lean_is_exclusive(x_583)) { - lean_ctor_release(x_583, 0); - lean_ctor_release(x_583, 1); - x_596 = x_583; +x_695 = lean_ctor_get(x_684, 0); +lean_inc(x_695); +x_696 = lean_ctor_get(x_684, 1); +lean_inc(x_696); +if (lean_is_exclusive(x_684)) { + lean_ctor_release(x_684, 0); + lean_ctor_release(x_684, 1); + x_697 = x_684; } else { - lean_dec_ref(x_583); - x_596 = lean_box(0); + lean_dec_ref(x_684); + x_697 = lean_box(0); } -if (lean_is_scalar(x_596)) { - x_597 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_697)) { + x_698 = lean_alloc_ctor(1, 2, 0); } else { - x_597 = x_596; + x_698 = x_697; } -lean_ctor_set(x_597, 0, x_594); -lean_ctor_set(x_597, 1, x_595); -return x_597; +lean_ctor_set(x_698, 0, x_695); +lean_ctor_set(x_698, 1, x_696); +return x_698; } } else { -lean_object* x_598; uint8_t x_599; -x_598 = lean_array_get_size(x_2); -x_599 = lean_nat_dec_lt(x_559, x_598); -lean_dec(x_598); -if (x_599 == 0) +lean_object* x_699; uint8_t x_700; +x_699 = lean_array_get_size(x_2); +x_700 = lean_nat_dec_lt(x_659, x_699); +lean_dec(x_699); +if (x_700 == 0) { -lean_object* x_600; uint8_t x_601; uint8_t x_602; uint8_t x_603; lean_object* x_604; -lean_dec(x_561); -lean_dec(x_558); -lean_dec(x_556); -lean_dec(x_554); -lean_free_object(x_7); -x_600 = lean_box(0); -x_601 = lean_unbox(x_555); -lean_dec(x_555); -x_602 = lean_unbox(x_557); -lean_dec(x_557); -x_603 = lean_unbox(x_560); -lean_dec(x_560); +lean_object* x_701; uint8_t x_702; uint8_t x_703; uint8_t x_704; lean_object* x_705; +lean_dec(x_661); +lean_dec(x_658); +lean_dec(x_656); +lean_dec(x_654); +lean_dec(x_652); +x_701 = lean_box(0); +x_702 = lean_unbox(x_655); +lean_dec(x_655); +x_703 = lean_unbox(x_657); +lean_dec(x_657); +x_704 = lean_unbox(x_660); +lean_dec(x_660); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -17184,15 +20359,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_604 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_577, x_574, x_18, x_552, x_553, x_601, x_602, x_559, x_603, x_600, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_604) == 0) +x_705 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_678, x_675, x_18, x_651, x_653, x_702, x_703, x_659, x_704, x_701, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_705) == 0) { -lean_object* x_605; -x_605 = lean_ctor_get(x_604, 0); -lean_inc(x_605); -if (lean_obj_tag(x_605) == 0) +lean_object* x_706; +x_706 = lean_ctor_get(x_705, 0); +lean_inc(x_706); +if (lean_obj_tag(x_706) == 0) { -lean_object* x_606; lean_object* x_607; lean_object* x_608; lean_object* x_609; +lean_object* x_707; lean_object* x_708; lean_object* x_709; lean_object* x_710; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -17200,48 +20375,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -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; +x_707 = lean_ctor_get(x_705, 1); +lean_inc(x_707); +if (lean_is_exclusive(x_705)) { + lean_ctor_release(x_705, 0); + lean_ctor_release(x_705, 1); + x_708 = x_705; } else { - lean_dec_ref(x_604); - x_607 = lean_box(0); + lean_dec_ref(x_705); + x_708 = lean_box(0); } -x_608 = lean_ctor_get(x_605, 0); -lean_inc(x_608); -lean_dec(x_605); -if (lean_is_scalar(x_607)) { - x_609 = lean_alloc_ctor(0, 2, 0); +x_709 = lean_ctor_get(x_706, 0); +lean_inc(x_709); +lean_dec(x_706); +if (lean_is_scalar(x_708)) { + x_710 = lean_alloc_ctor(0, 2, 0); } else { - x_609 = x_607; + x_710 = x_708; } -lean_ctor_set(x_609, 0, x_608); -lean_ctor_set(x_609, 1, x_606); -return x_609; +lean_ctor_set(x_710, 0, x_709); +lean_ctor_set(x_710, 1, x_707); +return x_710; } else { -lean_object* x_610; lean_object* x_611; size_t x_612; size_t x_613; -x_610 = lean_ctor_get(x_604, 1); -lean_inc(x_610); -lean_dec(x_604); -x_611 = lean_ctor_get(x_605, 0); -lean_inc(x_611); -lean_dec(x_605); -x_612 = 1; -x_613 = lean_usize_add(x_6, x_612); -x_6 = x_613; -x_7 = x_611; -x_15 = x_610; +lean_object* x_711; lean_object* x_712; size_t x_713; size_t x_714; +x_711 = lean_ctor_get(x_705, 1); +lean_inc(x_711); +lean_dec(x_705); +x_712 = lean_ctor_get(x_706, 0); +lean_inc(x_712); +lean_dec(x_706); +x_713 = 1; +x_714 = lean_usize_add(x_6, x_713); +x_6 = x_714; +x_7 = x_712; +x_15 = x_711; goto _start; } } else { -lean_object* x_615; lean_object* x_616; lean_object* x_617; lean_object* x_618; +lean_object* x_716; lean_object* x_717; lean_object* x_718; lean_object* x_719; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -17249,49 +20424,49 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_615 = lean_ctor_get(x_604, 0); -lean_inc(x_615); -x_616 = lean_ctor_get(x_604, 1); -lean_inc(x_616); -if (lean_is_exclusive(x_604)) { - lean_ctor_release(x_604, 0); - lean_ctor_release(x_604, 1); - x_617 = x_604; +x_716 = lean_ctor_get(x_705, 0); +lean_inc(x_716); +x_717 = lean_ctor_get(x_705, 1); +lean_inc(x_717); +if (lean_is_exclusive(x_705)) { + lean_ctor_release(x_705, 0); + lean_ctor_release(x_705, 1); + x_718 = x_705; } else { - lean_dec_ref(x_604); - x_617 = lean_box(0); + lean_dec_ref(x_705); + x_718 = lean_box(0); } -if (lean_is_scalar(x_617)) { - x_618 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_718)) { + x_719 = lean_alloc_ctor(1, 2, 0); } else { - x_618 = x_617; + x_719 = x_718; } -lean_ctor_set(x_618, 0, x_615); -lean_ctor_set(x_618, 1, x_616); -return x_618; +lean_ctor_set(x_719, 0, x_716); +lean_ctor_set(x_719, 1, x_717); +return x_719; } } else { -lean_object* x_619; uint8_t x_620; -x_619 = lean_array_fget(x_2, x_559); -x_620 = l_Lean_Meta_ParamInfo_isInstImplicit(x_619); -lean_dec(x_619); -if (x_620 == 0) +lean_object* x_720; uint8_t x_721; +x_720 = lean_array_fget(x_2, x_659); +x_721 = l_Lean_Meta_ParamInfo_isInstImplicit(x_720); +lean_dec(x_720); +if (x_721 == 0) { -lean_object* x_621; uint8_t x_622; uint8_t x_623; uint8_t x_624; lean_object* x_625; -lean_dec(x_561); -lean_dec(x_558); -lean_dec(x_556); -lean_dec(x_554); -lean_free_object(x_7); -x_621 = lean_box(0); -x_622 = lean_unbox(x_555); -lean_dec(x_555); -x_623 = lean_unbox(x_557); -lean_dec(x_557); -x_624 = lean_unbox(x_560); -lean_dec(x_560); +lean_object* x_722; uint8_t x_723; uint8_t x_724; uint8_t x_725; lean_object* x_726; +lean_dec(x_661); +lean_dec(x_658); +lean_dec(x_656); +lean_dec(x_654); +lean_dec(x_652); +x_722 = lean_box(0); +x_723 = lean_unbox(x_655); +lean_dec(x_655); +x_724 = lean_unbox(x_657); +lean_dec(x_657); +x_725 = lean_unbox(x_660); +lean_dec(x_660); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -17299,15 +20474,15 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_625 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_577, x_574, x_18, x_552, x_553, x_622, x_623, x_559, x_624, x_621, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_625) == 0) -{ -lean_object* x_626; -x_626 = lean_ctor_get(x_625, 0); -lean_inc(x_626); -if (lean_obj_tag(x_626) == 0) +x_726 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_678, x_675, x_18, x_651, x_653, x_723, x_724, x_659, x_725, x_722, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_726) == 0) { -lean_object* x_627; lean_object* x_628; lean_object* x_629; lean_object* x_630; +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_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -17315,48 +20490,48 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_627 = lean_ctor_get(x_625, 1); -lean_inc(x_627); -if (lean_is_exclusive(x_625)) { - lean_ctor_release(x_625, 0); - lean_ctor_release(x_625, 1); - x_628 = x_625; +x_728 = lean_ctor_get(x_726, 1); +lean_inc(x_728); +if (lean_is_exclusive(x_726)) { + lean_ctor_release(x_726, 0); + lean_ctor_release(x_726, 1); + x_729 = x_726; } else { - lean_dec_ref(x_625); - x_628 = lean_box(0); + lean_dec_ref(x_726); + x_729 = lean_box(0); } -x_629 = lean_ctor_get(x_626, 0); -lean_inc(x_629); -lean_dec(x_626); -if (lean_is_scalar(x_628)) { - x_630 = lean_alloc_ctor(0, 2, 0); +x_730 = lean_ctor_get(x_727, 0); +lean_inc(x_730); +lean_dec(x_727); +if (lean_is_scalar(x_729)) { + x_731 = lean_alloc_ctor(0, 2, 0); } else { - x_630 = x_628; + x_731 = x_729; } -lean_ctor_set(x_630, 0, x_629); -lean_ctor_set(x_630, 1, x_627); -return x_630; +lean_ctor_set(x_731, 0, x_730); +lean_ctor_set(x_731, 1, x_728); +return x_731; } else { -lean_object* x_631; lean_object* x_632; size_t x_633; size_t x_634; -x_631 = lean_ctor_get(x_625, 1); -lean_inc(x_631); -lean_dec(x_625); -x_632 = lean_ctor_get(x_626, 0); -lean_inc(x_632); -lean_dec(x_626); -x_633 = 1; -x_634 = lean_usize_add(x_6, x_633); -x_6 = x_634; -x_7 = x_632; -x_15 = x_631; +lean_object* x_732; lean_object* x_733; size_t x_734; size_t x_735; +x_732 = lean_ctor_get(x_726, 1); +lean_inc(x_732); +lean_dec(x_726); +x_733 = lean_ctor_get(x_727, 0); +lean_inc(x_733); +lean_dec(x_727); +x_734 = 1; +x_735 = lean_usize_add(x_6, x_734); +x_6 = x_735; +x_7 = x_733; +x_15 = x_732; goto _start; } } else { -lean_object* x_636; lean_object* x_637; lean_object* x_638; lean_object* x_639; +lean_object* x_737; lean_object* x_738; lean_object* x_739; lean_object* x_740; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -17364,70 +20539,76 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -x_636 = lean_ctor_get(x_625, 0); -lean_inc(x_636); -x_637 = lean_ctor_get(x_625, 1); -lean_inc(x_637); -if (lean_is_exclusive(x_625)) { - lean_ctor_release(x_625, 0); - lean_ctor_release(x_625, 1); - x_638 = x_625; +x_737 = lean_ctor_get(x_726, 0); +lean_inc(x_737); +x_738 = lean_ctor_get(x_726, 1); +lean_inc(x_738); +if (lean_is_exclusive(x_726)) { + lean_ctor_release(x_726, 0); + lean_ctor_release(x_726, 1); + x_739 = x_726; } else { - lean_dec_ref(x_625); - x_638 = lean_box(0); + lean_dec_ref(x_726); + x_739 = lean_box(0); } -if (lean_is_scalar(x_638)) { - x_639 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_739)) { + x_740 = lean_alloc_ctor(1, 2, 0); } else { - x_639 = x_638; + x_740 = x_739; } -lean_ctor_set(x_639, 0, x_636); -lean_ctor_set(x_639, 1, x_637); -return x_639; +lean_ctor_set(x_740, 0, x_737); +lean_ctor_set(x_740, 1, x_738); +return x_740; } } else { -lean_object* x_640; lean_object* x_641; lean_object* x_642; lean_object* x_643; lean_object* x_644; lean_object* x_645; lean_object* x_646; size_t x_647; size_t x_648; -x_640 = lean_array_push(x_553, x_18); -x_641 = lean_nat_add(x_559, x_575); -lean_dec(x_559); -if (lean_is_scalar(x_561)) { - x_642 = lean_alloc_ctor(0, 2, 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; size_t x_749; size_t x_750; +x_741 = lean_array_push(x_653, x_18); +x_742 = lean_nat_add(x_659, x_676); +lean_dec(x_659); +if (lean_is_scalar(x_661)) { + x_743 = lean_alloc_ctor(0, 2, 0); } else { - x_642 = x_561; + x_743 = x_661; } -lean_ctor_set(x_642, 0, x_641); -lean_ctor_set(x_642, 1, x_560); -if (lean_is_scalar(x_558)) { - x_643 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_743, 0, x_742); +lean_ctor_set(x_743, 1, x_660); +if (lean_is_scalar(x_658)) { + x_744 = lean_alloc_ctor(0, 2, 0); } else { - x_643 = x_558; + x_744 = x_658; } -lean_ctor_set(x_643, 0, x_557); -lean_ctor_set(x_643, 1, x_642); -if (lean_is_scalar(x_556)) { - x_644 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_744, 0, x_657); +lean_ctor_set(x_744, 1, x_743); +if (lean_is_scalar(x_656)) { + x_745 = lean_alloc_ctor(0, 2, 0); } else { - x_644 = x_556; + x_745 = x_656; } -lean_ctor_set(x_644, 0, x_555); -lean_ctor_set(x_644, 1, x_643); -if (lean_is_scalar(x_554)) { - x_645 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_745, 0, x_655); +lean_ctor_set(x_745, 1, x_744); +if (lean_is_scalar(x_654)) { + x_746 = lean_alloc_ctor(0, 2, 0); } else { - x_645 = x_554; + x_746 = x_654; } -lean_ctor_set(x_645, 0, x_640); -lean_ctor_set(x_645, 1, x_644); -x_646 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_646, 0, x_552); -lean_ctor_set(x_646, 1, x_645); -lean_ctor_set(x_7, 1, x_646); -lean_ctor_set(x_7, 0, x_577); -x_647 = 1; -x_648 = lean_usize_add(x_6, x_647); -x_6 = x_648; +lean_ctor_set(x_746, 0, x_741); +lean_ctor_set(x_746, 1, x_745); +if (lean_is_scalar(x_652)) { + x_747 = lean_alloc_ctor(0, 2, 0); +} else { + x_747 = x_652; +} +lean_ctor_set(x_747, 0, x_651); +lean_ctor_set(x_747, 1, x_746); +x_748 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_748, 0, x_678); +lean_ctor_set(x_748, 1, x_747); +x_749 = 1; +x_750 = lean_usize_add(x_6, x_749); +x_6 = x_750; +x_7 = x_748; goto _start; } } @@ -17435,679 +20616,1336 @@ goto _start; } } } -else +} +} +LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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_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_object* x_657; lean_object* x_658; lean_object* x_659; lean_object* x_660; lean_object* x_661; lean_object* x_662; lean_object* x_663; lean_object* x_664; uint8_t x_665; -x_650 = lean_ctor_get(x_7, 0); -lean_inc(x_650); -lean_dec(x_7); -x_651 = lean_ctor_get(x_19, 0); -lean_inc(x_651); -if (lean_is_exclusive(x_19)) { - lean_ctor_release(x_19, 0); - lean_ctor_release(x_19, 1); - x_652 = x_19; -} else { - lean_dec_ref(x_19); - x_652 = lean_box(0); +lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_10 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__1___closed__4; +x_11 = lean_panic_fn(x_10, x_1); +x_12 = lean_apply_8(x_11, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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) { +_start: +{ +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_inc(x_8); +x_17 = l_Lean_Expr_app___override(x_5, x_8); +x_18 = lean_array_push(x_6, x_8); +x_19 = l_Lean_Expr_bindingBody_x21(x_7); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set(x_20, 1, x_19); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_17); +lean_ctor_set(x_21, 1, x_20); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_1); +lean_ctor_set(x_22, 1, x_21); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_2); +lean_ctor_set(x_23, 1, x_22); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_3); +lean_ctor_set(x_24, 1, x_23); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_4); +lean_ctor_set(x_25, 1, x_24); +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_16); +return x_27; +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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, 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_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_17 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_17, 0, x_1); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_2); +lean_ctor_set(x_18, 1, x_3); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_4); +lean_ctor_set(x_19, 1, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_5); +lean_ctor_set(x_20, 1, x_19); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 1, x_20); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_7); +lean_ctor_set(x_22, 1, x_21); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_17); +lean_ctor_set(x_23, 1, x_22); +x_24 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_24, 0, 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_16); +return x_25; +} +} +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__1; +x_2 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__2; +x_3 = lean_unsigned_to_nat(605u); +x_4 = lean_unsigned_to_nat(11u); +x_5 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___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_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("congr", 5); +return x_1; +} +} +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__3; +x_2 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__4; +x_3 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__5; +x_4 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__2; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } -x_653 = lean_ctor_get(x_20, 0); -lean_inc(x_653); -if (lean_is_exclusive(x_20)) { - lean_ctor_release(x_20, 0); - lean_ctor_release(x_20, 1); - x_654 = x_20; -} else { - lean_dec_ref(x_20); - x_654 = lean_box(0); } -x_655 = lean_ctor_get(x_21, 0); -lean_inc(x_655); -if (lean_is_exclusive(x_21)) { - lean_ctor_release(x_21, 0); - lean_ctor_release(x_21, 1); - x_656 = x_21; -} else { - lean_dec_ref(x_21); - x_656 = lean_box(0); +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("failed to synthesize instance", 29); +return x_1; } -x_657 = lean_ctor_get(x_22, 0); -lean_inc(x_657); -if (lean_is_exclusive(x_22)) { - lean_ctor_release(x_22, 0); - lean_ctor_release(x_22, 1); - x_658 = x_22; -} else { - lean_dec_ref(x_22); - x_658 = lean_box(0); } -x_659 = lean_ctor_get(x_23, 0); -lean_inc(x_659); -x_660 = lean_ctor_get(x_23, 1); -lean_inc(x_660); -if (lean_is_exclusive(x_23)) { - lean_ctor_release(x_23, 0); - lean_ctor_release(x_23, 1); - x_661 = x_23; -} else { - lean_dec_ref(x_23); - x_661 = lean_box(0); +static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__4; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; } -x_662 = lean_ctor_get(x_650, 0); -lean_inc(x_662); -x_663 = lean_ctor_get(x_650, 1); -lean_inc(x_663); -x_664 = lean_ctor_get(x_650, 2); -lean_inc(x_664); -x_665 = lean_nat_dec_lt(x_663, x_664); -if (x_665 == 0) +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: { -lean_object* x_666; lean_object* x_667; lean_object* x_668; lean_object* x_669; lean_object* x_670; lean_object* x_671; lean_object* x_672; -lean_dec(x_664); -lean_dec(x_663); -lean_dec(x_662); -lean_dec(x_18); -lean_dec(x_14); +uint8_t x_15; +x_15 = lean_usize_dec_lt(x_5, x_4); +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); -if (lean_is_scalar(x_661)) { - x_666 = lean_alloc_ctor(0, 2, 0); -} else { - x_666 = x_661; -} -lean_ctor_set(x_666, 0, x_659); -lean_ctor_set(x_666, 1, x_660); -if (lean_is_scalar(x_658)) { - x_667 = lean_alloc_ctor(0, 2, 0); -} else { - x_667 = x_658; -} -lean_ctor_set(x_667, 0, x_657); -lean_ctor_set(x_667, 1, x_666); -if (lean_is_scalar(x_656)) { - x_668 = lean_alloc_ctor(0, 2, 0); -} else { - x_668 = x_656; -} -lean_ctor_set(x_668, 0, x_655); -lean_ctor_set(x_668, 1, x_667); -if (lean_is_scalar(x_654)) { - x_669 = lean_alloc_ctor(0, 2, 0); -} else { - x_669 = x_654; -} -lean_ctor_set(x_669, 0, x_653); -lean_ctor_set(x_669, 1, x_668); -if (lean_is_scalar(x_652)) { - x_670 = lean_alloc_ctor(0, 2, 0); -} else { - x_670 = x_652; +lean_dec(x_7); +lean_dec(x_2); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_6); +lean_ctor_set(x_16, 1, x_14); +return x_16; } -lean_ctor_set(x_670, 0, x_651); -lean_ctor_set(x_670, 1, x_669); -x_671 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_671, 0, x_650); -lean_ctor_set(x_671, 1, x_670); -x_672 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_672, 0, x_671); -lean_ctor_set(x_672, 1, x_15); -return x_672; +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; 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_17 = lean_array_uget(x_3, x_5); +x_27 = lean_ctor_get(x_6, 1); +lean_inc(x_27); +lean_dec(x_6); +x_28 = lean_ctor_get(x_27, 1); +lean_inc(x_28); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +x_30 = lean_ctor_get(x_29, 1); +lean_inc(x_30); +x_31 = lean_ctor_get(x_30, 1); +lean_inc(x_31); +x_32 = !lean_is_exclusive(x_28); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; uint8_t x_35; +x_33 = lean_ctor_get(x_28, 0); +x_34 = lean_ctor_get(x_28, 1); +lean_dec(x_34); +x_35 = !lean_is_exclusive(x_27); +if (x_35 == 0) +{ +lean_object* x_36; lean_object* x_37; uint8_t x_38; +x_36 = lean_ctor_get(x_27, 0); +x_37 = lean_ctor_get(x_27, 1); +lean_dec(x_37); +x_38 = !lean_is_exclusive(x_29); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = lean_ctor_get(x_29, 0); +x_40 = lean_ctor_get(x_29, 1); +lean_dec(x_40); +x_41 = !lean_is_exclusive(x_30); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; uint8_t x_44; +x_42 = lean_ctor_get(x_30, 0); +x_43 = lean_ctor_get(x_30, 1); +lean_dec(x_43); +x_44 = !lean_is_exclusive(x_31); +if (x_44 == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_45 = lean_ctor_get(x_31, 0); +x_46 = lean_ctor_get(x_31, 1); +x_47 = lean_ctor_get(x_33, 0); +lean_inc(x_47); +x_48 = lean_ctor_get(x_33, 1); +lean_inc(x_48); +x_49 = lean_ctor_get(x_33, 2); +lean_inc(x_49); +x_50 = lean_nat_dec_lt(x_48, x_49); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_47); +lean_dec(x_17); +lean_inc(x_2); +x_51 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_51, 0, x_2); +lean_ctor_set(x_51, 1, x_27); +x_52 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_52, 0, x_51); +x_18 = x_52; +x_19 = x_14; +goto block_26; } else { -lean_object* x_673; lean_object* x_674; uint8_t x_675; lean_object* x_676; lean_object* x_677; lean_object* x_678; uint8_t x_679; -if (lean_is_exclusive(x_650)) { - lean_ctor_release(x_650, 0); - lean_ctor_release(x_650, 1); - lean_ctor_release(x_650, 2); - x_673 = x_650; -} else { - lean_dec_ref(x_650); - x_673 = lean_box(0); +uint8_t x_53; +x_53 = !lean_is_exclusive(x_33); +if (x_53 == 0) +{ +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; lean_object* x_63; uint8_t x_64; +x_54 = lean_ctor_get(x_33, 2); +lean_dec(x_54); +x_55 = lean_ctor_get(x_33, 1); +lean_dec(x_55); +x_56 = lean_ctor_get(x_33, 0); +lean_dec(x_56); +x_57 = lean_array_fget(x_47, x_48); +x_58 = lean_unbox(x_57); +lean_dec(x_57); +x_59 = lean_unsigned_to_nat(1u); +x_60 = lean_nat_add(x_48, x_59); +lean_dec(x_48); +lean_ctor_set(x_33, 1, x_60); +x_61 = lean_ctor_get(x_36, 0); +lean_inc(x_61); +x_62 = lean_ctor_get(x_36, 1); +lean_inc(x_62); +x_63 = lean_ctor_get(x_36, 2); +lean_inc(x_63); +x_64 = lean_nat_dec_lt(x_62, x_63); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; +lean_dec(x_63); +lean_dec(x_62); +lean_dec(x_61); +lean_dec(x_17); +lean_inc(x_2); +x_65 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_65, 0, x_2); +lean_ctor_set(x_65, 1, x_27); +x_66 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_66, 0, x_65); +x_18 = x_66; +x_19 = x_14; +goto block_26; } -x_674 = lean_array_fget(x_662, x_663); -x_675 = lean_unbox(x_674); -lean_dec(x_674); -x_676 = lean_unsigned_to_nat(1u); -x_677 = lean_nat_add(x_663, x_676); -lean_dec(x_663); -if (lean_is_scalar(x_673)) { - x_678 = lean_alloc_ctor(0, 3, 0); -} else { - x_678 = x_673; +else +{ +uint8_t x_67; +x_67 = !lean_is_exclusive(x_36); +if (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; +x_68 = lean_ctor_get(x_36, 2); +lean_dec(x_68); +x_69 = lean_ctor_get(x_36, 1); +lean_dec(x_69); +x_70 = lean_ctor_get(x_36, 0); +lean_dec(x_70); +x_71 = lean_array_fget(x_61, x_62); +x_72 = lean_nat_add(x_62, x_59); +lean_dec(x_62); +lean_ctor_set(x_36, 1, x_72); +lean_inc(x_17); +x_73 = l_Lean_Expr_app___override(x_42, x_17); +x_74 = l_Lean_Expr_bindingBody_x21(x_46); +lean_dec(x_46); +x_75 = lean_box(x_58); +switch (lean_obj_tag(x_75)) { +case 0: +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; +lean_dec(x_17); +x_76 = lean_array_push(x_45, x_71); +lean_ctor_set(x_31, 1, x_74); +lean_ctor_set(x_31, 0, x_76); +lean_ctor_set(x_30, 0, x_73); +lean_inc(x_2); +x_77 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_77, 0, x_2); +lean_ctor_set(x_77, 1, x_27); +x_78 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_78, 0, x_77); +x_18 = x_78; +x_19 = x_14; +goto block_26; } -lean_ctor_set(x_678, 0, x_662); -lean_ctor_set(x_678, 1, x_677); -lean_ctor_set(x_678, 2, x_664); -x_679 = lean_ctor_get_uint8(x_3, sizeof(void*)*2 + 14); -if (x_679 == 0) +case 2: { -lean_object* x_680; uint8_t x_681; uint8_t x_682; uint8_t x_683; lean_object* x_684; -lean_dec(x_661); -lean_dec(x_658); -lean_dec(x_656); -lean_dec(x_654); -lean_dec(x_652); -x_680 = lean_box(0); -x_681 = lean_unbox(x_655); -lean_dec(x_655); -x_682 = lean_unbox(x_657); -lean_dec(x_657); -x_683 = lean_unbox(x_660); -lean_dec(x_660); -lean_inc(x_14); +lean_object* x_79; lean_object* x_80; uint8_t x_81; +lean_dec(x_71); +lean_inc(x_17); +x_79 = lean_array_push(x_45, x_17); +x_80 = lean_array_get_size(x_1); +x_81 = lean_nat_dec_lt(x_39, x_80); +lean_dec(x_80); +if (x_81 == 0) +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_82 = l_Lean_Meta_Simp_instInhabitedResult; +x_83 = l___private_Init_GetElem_0__outOfBounds___rarg(x_82); 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_684 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_678, x_675, x_18, x_651, x_653, x_681, x_682, x_659, x_683, x_680, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_684) == 0) +lean_inc(x_83); +x_84 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_83, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_84) == 0) { -lean_object* x_685; -x_685 = lean_ctor_get(x_684, 0); -lean_inc(x_685); -if (lean_obj_tag(x_685) == 0) +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_85 = lean_ctor_get(x_84, 0); +lean_inc(x_85); +x_86 = lean_ctor_get(x_84, 1); +lean_inc(x_86); +lean_dec(x_84); +x_87 = lean_nat_add(x_39, x_59); +lean_dec(x_39); +x_88 = lean_ctor_get(x_83, 0); +lean_inc(x_88); +lean_dec(x_83); +lean_inc(x_85); +lean_inc(x_88); +x_89 = l_Lean_mkAppB(x_73, x_88, x_85); +x_90 = lean_array_push(x_79, x_88); +x_91 = lean_array_push(x_90, x_85); +x_92 = l_Lean_Expr_bindingBody_x21(x_74); +lean_dec(x_74); +x_93 = l_Lean_Expr_bindingBody_x21(x_92); +lean_dec(x_92); +lean_ctor_set(x_31, 1, x_93); +lean_ctor_set(x_31, 0, x_91); +lean_ctor_set(x_30, 0, x_89); +lean_ctor_set(x_29, 0, x_87); +lean_inc(x_2); +x_94 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_94, 0, x_2); +lean_ctor_set(x_94, 1, x_27); +x_95 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_95, 0, x_94); +x_18 = x_95; +x_19 = x_86; +goto block_26; +} +else { -lean_object* x_686; lean_object* x_687; lean_object* x_688; lean_object* x_689; -lean_dec(x_14); +uint8_t x_96; +lean_dec(x_83); +lean_dec(x_79); +lean_dec(x_74); +lean_dec(x_73); +lean_dec(x_36); +lean_dec(x_33); +lean_free_object(x_31); +lean_free_object(x_30); +lean_free_object(x_29); +lean_dec(x_39); +lean_free_object(x_27); +lean_free_object(x_28); 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_686 = lean_ctor_get(x_684, 1); -lean_inc(x_686); -if (lean_is_exclusive(x_684)) { - lean_ctor_release(x_684, 0); - lean_ctor_release(x_684, 1); - x_687 = x_684; -} else { - lean_dec_ref(x_684); - x_687 = lean_box(0); +lean_dec(x_7); +lean_dec(x_2); +x_96 = !lean_is_exclusive(x_84); +if (x_96 == 0) +{ +return x_84; +} +else +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; +x_97 = lean_ctor_get(x_84, 0); +x_98 = lean_ctor_get(x_84, 1); +lean_inc(x_98); +lean_inc(x_97); +lean_dec(x_84); +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; } -x_688 = lean_ctor_get(x_685, 0); -lean_inc(x_688); -lean_dec(x_685); -if (lean_is_scalar(x_687)) { - x_689 = lean_alloc_ctor(0, 2, 0); -} else { - x_689 = x_687; } -lean_ctor_set(x_689, 0, x_688); -lean_ctor_set(x_689, 1, x_686); -return x_689; } else { -lean_object* x_690; lean_object* x_691; size_t x_692; size_t x_693; -x_690 = lean_ctor_get(x_684, 1); -lean_inc(x_690); -lean_dec(x_684); -x_691 = lean_ctor_get(x_685, 0); -lean_inc(x_691); -lean_dec(x_685); -x_692 = 1; -x_693 = lean_usize_add(x_6, x_692); -x_6 = x_693; -x_7 = x_691; -x_15 = x_690; -goto _start; -} +lean_object* x_100; lean_object* x_101; +x_100 = lean_array_fget(x_1, x_39); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_100); +x_101 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_100, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_101) == 0) +{ +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; +x_102 = lean_ctor_get(x_101, 0); +lean_inc(x_102); +x_103 = lean_ctor_get(x_101, 1); +lean_inc(x_103); +lean_dec(x_101); +x_104 = lean_nat_add(x_39, x_59); +lean_dec(x_39); +x_105 = lean_ctor_get(x_100, 0); +lean_inc(x_105); +lean_dec(x_100); +lean_inc(x_102); +lean_inc(x_105); +x_106 = l_Lean_mkAppB(x_73, x_105, x_102); +x_107 = lean_array_push(x_79, x_105); +x_108 = lean_array_push(x_107, x_102); +x_109 = l_Lean_Expr_bindingBody_x21(x_74); +lean_dec(x_74); +x_110 = l_Lean_Expr_bindingBody_x21(x_109); +lean_dec(x_109); +lean_ctor_set(x_31, 1, x_110); +lean_ctor_set(x_31, 0, x_108); +lean_ctor_set(x_30, 0, x_106); +lean_ctor_set(x_29, 0, x_104); +lean_inc(x_2); +x_111 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_111, 0, x_2); +lean_ctor_set(x_111, 1, x_27); +x_112 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_112, 0, x_111); +x_18 = x_112; +x_19 = x_103; +goto block_26; } else { -lean_object* x_695; lean_object* x_696; lean_object* x_697; lean_object* x_698; -lean_dec(x_14); +uint8_t x_113; +lean_dec(x_100); +lean_dec(x_79); +lean_dec(x_74); +lean_dec(x_73); +lean_dec(x_36); +lean_dec(x_33); +lean_free_object(x_31); +lean_free_object(x_30); +lean_free_object(x_29); +lean_dec(x_39); +lean_free_object(x_27); +lean_free_object(x_28); 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_695 = lean_ctor_get(x_684, 0); -lean_inc(x_695); -x_696 = lean_ctor_get(x_684, 1); -lean_inc(x_696); -if (lean_is_exclusive(x_684)) { - lean_ctor_release(x_684, 0); - lean_ctor_release(x_684, 1); - x_697 = x_684; -} else { - lean_dec_ref(x_684); - x_697 = lean_box(0); +lean_dec(x_7); +lean_dec(x_2); +x_113 = !lean_is_exclusive(x_101); +if (x_113 == 0) +{ +return x_101; } -if (lean_is_scalar(x_697)) { - x_698 = lean_alloc_ctor(1, 2, 0); -} else { - x_698 = x_697; +else +{ +lean_object* x_114; lean_object* x_115; lean_object* x_116; +x_114 = lean_ctor_get(x_101, 0); +x_115 = lean_ctor_get(x_101, 1); +lean_inc(x_115); +lean_inc(x_114); +lean_dec(x_101); +x_116 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_116, 0, x_114); +lean_ctor_set(x_116, 1, x_115); +return x_116; } -lean_ctor_set(x_698, 0, x_695); -lean_ctor_set(x_698, 1, x_696); -return x_698; } } -else +} +case 3: { -lean_object* x_699; uint8_t x_700; -x_699 = lean_array_get_size(x_2); -x_700 = lean_nat_dec_lt(x_659, x_699); -lean_dec(x_699); -if (x_700 == 0) +lean_object* x_117; lean_object* x_118; lean_object* x_119; +lean_dec(x_71); +x_117 = lean_array_push(x_45, x_17); +lean_ctor_set(x_31, 1, x_74); +lean_ctor_set(x_31, 0, x_117); +lean_ctor_set(x_30, 0, x_73); +lean_inc(x_2); +x_118 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_118, 0, x_2); +lean_ctor_set(x_118, 1, x_27); +x_119 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_119, 0, x_118); +x_18 = x_119; +x_19 = x_14; +goto block_26; +} +case 5: { -lean_object* x_701; uint8_t x_702; uint8_t x_703; uint8_t x_704; lean_object* x_705; -lean_dec(x_661); -lean_dec(x_658); -lean_dec(x_656); -lean_dec(x_654); -lean_dec(x_652); -x_701 = lean_box(0); -x_702 = lean_unbox(x_655); -lean_dec(x_655); -x_703 = lean_unbox(x_657); -lean_dec(x_657); -x_704 = lean_unbox(x_660); -lean_dec(x_660); -lean_inc(x_14); +lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; +lean_dec(x_71); +lean_free_object(x_31); +lean_free_object(x_30); +lean_free_object(x_29); +lean_free_object(x_27); +lean_free_object(x_28); +lean_inc(x_17); +x_120 = lean_array_push(x_45, x_17); +x_121 = l_Lean_Expr_bindingDomain_x21(x_74); +x_122 = lean_expr_instantiate_rev(x_121, x_120); +lean_dec(x_121); 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_705 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_678, x_675, x_18, x_651, x_653, x_702, x_703, x_659, x_704, x_701, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_705) == 0) +lean_inc(x_17); +x_123 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_123) == 0) { -lean_object* x_706; -x_706 = lean_ctor_get(x_705, 0); -lean_inc(x_706); -if (lean_obj_tag(x_706) == 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_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_122); +x_126 = l_Lean_Meta_isExprDefEq(x_124, x_122, x_10, x_11, x_12, x_13, x_125); +if (lean_obj_tag(x_126) == 0) +{ +lean_object* x_127; uint8_t x_128; +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_dec(x_17); +x_129 = lean_ctor_get(x_126, 1); +lean_inc(x_129); +lean_dec(x_126); +x_130 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_122); +x_131 = l_Lean_Meta_trySynthInstance(x_122, x_130, x_10, x_11, x_12, x_13, x_129); +if (lean_obj_tag(x_131) == 0) +{ +lean_object* x_132; +x_132 = lean_ctor_get(x_131, 0); +lean_inc(x_132); +if (lean_obj_tag(x_132) == 1) +{ +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; +lean_dec(x_122); +x_133 = lean_ctor_get(x_131, 1); +lean_inc(x_133); +lean_dec(x_131); +x_134 = lean_ctor_get(x_132, 0); +lean_inc(x_134); +lean_dec(x_132); +lean_inc(x_2); +x_135 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_39, x_33, x_36, x_2, x_73, x_120, x_74, x_134, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_133); +lean_dec(x_74); +x_136 = lean_ctor_get(x_135, 0); +lean_inc(x_136); +x_137 = lean_ctor_get(x_135, 1); +lean_inc(x_137); +lean_dec(x_135); +x_18 = x_136; +x_19 = x_137; +goto block_26; +} +else +{ +lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; uint8_t x_142; +lean_dec(x_132); +x_138 = lean_ctor_get(x_131, 1); +lean_inc(x_138); +lean_dec(x_131); +x_139 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; +x_140 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_139, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_138); +x_141 = lean_ctor_get(x_140, 0); +lean_inc(x_141); +x_142 = lean_unbox(x_141); +lean_dec(x_141); +if (x_142 == 0) +{ +lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; +lean_dec(x_122); +x_143 = lean_ctor_get(x_140, 1); +lean_inc(x_143); +lean_dec(x_140); +x_144 = lean_box(0); +x_145 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_130, x_120, x_74, x_73, x_39, x_33, x_36, x_144, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_143); +x_146 = lean_ctor_get(x_145, 0); +lean_inc(x_146); +x_147 = lean_ctor_get(x_145, 1); +lean_inc(x_147); +lean_dec(x_145); +x_18 = x_146; +x_19 = x_147; +goto block_26; +} +else +{ +uint8_t x_148; +x_148 = !lean_is_exclusive(x_140); +if (x_148 == 0) +{ +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; +x_149 = lean_ctor_get(x_140, 1); +x_150 = lean_ctor_get(x_140, 0); +lean_dec(x_150); +x_151 = l_Lean_indentExpr(x_122); +x_152 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; +lean_ctor_set_tag(x_140, 7); +lean_ctor_set(x_140, 1, x_151); +lean_ctor_set(x_140, 0, x_152); +x_153 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; +x_154 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_154, 0, x_140); +lean_ctor_set(x_154, 1, x_153); +x_155 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_139, x_154, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_149); +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 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_130, x_120, x_74, x_73, x_39, x_33, x_36, x_156, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_157); +lean_dec(x_156); +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_18 = x_159; +x_19 = x_160; +goto block_26; +} +else +{ +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; +x_161 = lean_ctor_get(x_140, 1); +lean_inc(x_161); +lean_dec(x_140); +x_162 = l_Lean_indentExpr(x_122); +x_163 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; +x_164 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_164, 0, x_163); +lean_ctor_set(x_164, 1, x_162); +x_165 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; +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 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_139, x_166, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_161); +x_168 = lean_ctor_get(x_167, 0); +lean_inc(x_168); +x_169 = lean_ctor_get(x_167, 1); +lean_inc(x_169); +lean_dec(x_167); +x_170 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_130, x_120, x_74, x_73, x_39, x_33, x_36, x_168, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_169); +lean_dec(x_168); +x_171 = lean_ctor_get(x_170, 0); +lean_inc(x_171); +x_172 = lean_ctor_get(x_170, 1); +lean_inc(x_172); +lean_dec(x_170); +x_18 = x_171; +x_19 = x_172; +goto block_26; +} +} +} +} +else { -lean_object* x_707; lean_object* x_708; lean_object* x_709; lean_object* x_710; -lean_dec(x_14); +uint8_t x_173; +lean_dec(x_122); +lean_dec(x_120); +lean_dec(x_74); +lean_dec(x_73); +lean_dec(x_36); +lean_dec(x_33); +lean_dec(x_39); 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_707 = lean_ctor_get(x_705, 1); -lean_inc(x_707); -if (lean_is_exclusive(x_705)) { - lean_ctor_release(x_705, 0); - lean_ctor_release(x_705, 1); - x_708 = x_705; -} else { - lean_dec_ref(x_705); - x_708 = lean_box(0); +lean_dec(x_7); +lean_dec(x_2); +x_173 = !lean_is_exclusive(x_131); +if (x_173 == 0) +{ +return x_131; +} +else +{ +lean_object* x_174; lean_object* x_175; lean_object* x_176; +x_174 = lean_ctor_get(x_131, 0); +x_175 = lean_ctor_get(x_131, 1); +lean_inc(x_175); +lean_inc(x_174); +lean_dec(x_131); +x_176 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_176, 0, x_174); +lean_ctor_set(x_176, 1, x_175); +return x_176; } -x_709 = lean_ctor_get(x_706, 0); -lean_inc(x_709); -lean_dec(x_706); -if (lean_is_scalar(x_708)) { - x_710 = lean_alloc_ctor(0, 2, 0); -} else { - x_710 = x_708; } -lean_ctor_set(x_710, 0, x_709); -lean_ctor_set(x_710, 1, x_707); -return x_710; } else { -lean_object* x_711; lean_object* x_712; size_t x_713; size_t x_714; -x_711 = lean_ctor_get(x_705, 1); -lean_inc(x_711); -lean_dec(x_705); -x_712 = lean_ctor_get(x_706, 0); -lean_inc(x_712); -lean_dec(x_706); -x_713 = 1; -x_714 = lean_usize_add(x_6, x_713); -x_6 = x_714; -x_7 = x_712; -x_15 = x_711; -goto _start; +lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; +lean_dec(x_122); +x_177 = lean_ctor_get(x_126, 1); +lean_inc(x_177); +lean_dec(x_126); +lean_inc(x_2); +x_178 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_39, x_33, x_36, x_2, x_73, x_120, x_74, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_177); +lean_dec(x_74); +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_18 = x_179; +x_19 = x_180; +goto block_26; } } else { -lean_object* x_716; lean_object* x_717; lean_object* x_718; lean_object* x_719; -lean_dec(x_14); +uint8_t x_181; +lean_dec(x_122); +lean_dec(x_120); +lean_dec(x_74); +lean_dec(x_73); +lean_dec(x_36); +lean_dec(x_33); +lean_dec(x_39); +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_716 = lean_ctor_get(x_705, 0); -lean_inc(x_716); -x_717 = lean_ctor_get(x_705, 1); -lean_inc(x_717); -if (lean_is_exclusive(x_705)) { - lean_ctor_release(x_705, 0); - lean_ctor_release(x_705, 1); - x_718 = x_705; -} else { - lean_dec_ref(x_705); - x_718 = lean_box(0); +lean_dec(x_7); +lean_dec(x_2); +x_181 = !lean_is_exclusive(x_126); +if (x_181 == 0) +{ +return x_126; } -if (lean_is_scalar(x_718)) { - x_719 = lean_alloc_ctor(1, 2, 0); -} else { - x_719 = x_718; +else +{ +lean_object* x_182; lean_object* x_183; lean_object* x_184; +x_182 = lean_ctor_get(x_126, 0); +x_183 = lean_ctor_get(x_126, 1); +lean_inc(x_183); +lean_inc(x_182); +lean_dec(x_126); +x_184 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_184, 0, x_182); +lean_ctor_set(x_184, 1, x_183); +return x_184; } -lean_ctor_set(x_719, 0, x_716); -lean_ctor_set(x_719, 1, x_717); -return x_719; } } else { -lean_object* x_720; uint8_t x_721; -x_720 = lean_array_fget(x_2, x_659); -x_721 = l_Lean_Meta_ParamInfo_isInstImplicit(x_720); -lean_dec(x_720); -if (x_721 == 0) +uint8_t x_185; +lean_dec(x_122); +lean_dec(x_120); +lean_dec(x_74); +lean_dec(x_73); +lean_dec(x_36); +lean_dec(x_33); +lean_dec(x_39); +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); +lean_dec(x_7); +lean_dec(x_2); +x_185 = !lean_is_exclusive(x_123); +if (x_185 == 0) { -lean_object* x_722; uint8_t x_723; uint8_t x_724; uint8_t x_725; lean_object* x_726; -lean_dec(x_661); -lean_dec(x_658); -lean_dec(x_656); -lean_dec(x_654); -lean_dec(x_652); -x_722 = lean_box(0); -x_723 = lean_unbox(x_655); -lean_dec(x_655); -x_724 = lean_unbox(x_657); -lean_dec(x_657); -x_725 = lean_unbox(x_660); -lean_dec(x_660); -lean_inc(x_14); +return x_123; +} +else +{ +lean_object* x_186; lean_object* x_187; lean_object* x_188; +x_186 = lean_ctor_get(x_123, 0); +x_187 = lean_ctor_get(x_123, 1); +lean_inc(x_187); +lean_inc(x_186); +lean_dec(x_123); +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; +} +} +} +default: +{ +lean_object* x_189; lean_object* x_190; +lean_dec(x_75); +lean_dec(x_71); +lean_dec(x_17); +x_189 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__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_726 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_678, x_675, x_18, x_651, x_653, x_723, x_724, x_659, x_725, x_722, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_726) == 0) +lean_inc(x_7); +x_190 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_189, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_190) == 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_191; lean_object* x_192; lean_object* x_193; +x_191 = lean_ctor_get(x_190, 1); +lean_inc(x_191); +lean_dec(x_190); +lean_ctor_set(x_31, 1, x_74); +lean_ctor_set(x_30, 0, x_73); +lean_inc(x_2); +x_192 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_192, 0, x_2); +lean_ctor_set(x_192, 1, x_27); +x_193 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_193, 0, x_192); +x_18 = x_193; +x_19 = x_191; +goto block_26; +} +else { -lean_object* x_728; lean_object* x_729; lean_object* x_730; lean_object* x_731; -lean_dec(x_14); +uint8_t x_194; +lean_dec(x_74); +lean_dec(x_73); +lean_dec(x_36); +lean_dec(x_33); +lean_free_object(x_31); +lean_dec(x_45); +lean_free_object(x_30); +lean_free_object(x_29); +lean_dec(x_39); +lean_free_object(x_27); +lean_free_object(x_28); 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_728 = lean_ctor_get(x_726, 1); -lean_inc(x_728); -if (lean_is_exclusive(x_726)) { - lean_ctor_release(x_726, 0); - lean_ctor_release(x_726, 1); - x_729 = x_726; -} else { - lean_dec_ref(x_726); - x_729 = lean_box(0); +lean_dec(x_7); +lean_dec(x_2); +x_194 = !lean_is_exclusive(x_190); +if (x_194 == 0) +{ +return x_190; +} +else +{ +lean_object* x_195; lean_object* x_196; lean_object* x_197; +x_195 = lean_ctor_get(x_190, 0); +x_196 = lean_ctor_get(x_190, 1); +lean_inc(x_196); +lean_inc(x_195); +lean_dec(x_190); +x_197 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_197, 0, x_195); +lean_ctor_set(x_197, 1, x_196); +return x_197; +} +} } -x_730 = lean_ctor_get(x_727, 0); -lean_inc(x_730); -lean_dec(x_727); -if (lean_is_scalar(x_729)) { - x_731 = lean_alloc_ctor(0, 2, 0); -} else { - x_731 = x_729; } -lean_ctor_set(x_731, 0, x_730); -lean_ctor_set(x_731, 1, x_728); -return x_731; } else { -lean_object* x_732; lean_object* x_733; size_t x_734; size_t x_735; -x_732 = lean_ctor_get(x_726, 1); -lean_inc(x_732); -lean_dec(x_726); -x_733 = lean_ctor_get(x_727, 0); -lean_inc(x_733); -lean_dec(x_727); -x_734 = 1; -x_735 = lean_usize_add(x_6, x_734); -x_6 = x_735; -x_7 = x_733; -x_15 = x_732; -goto _start; +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_dec(x_36); +x_198 = lean_array_fget(x_61, x_62); +x_199 = lean_nat_add(x_62, x_59); +lean_dec(x_62); +x_200 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_200, 0, x_61); +lean_ctor_set(x_200, 1, x_199); +lean_ctor_set(x_200, 2, x_63); +lean_inc(x_17); +x_201 = l_Lean_Expr_app___override(x_42, x_17); +x_202 = l_Lean_Expr_bindingBody_x21(x_46); +lean_dec(x_46); +x_203 = lean_box(x_58); +switch (lean_obj_tag(x_203)) { +case 0: +{ +lean_object* x_204; lean_object* x_205; lean_object* x_206; +lean_dec(x_17); +x_204 = lean_array_push(x_45, x_198); +lean_ctor_set(x_31, 1, x_202); +lean_ctor_set(x_31, 0, x_204); +lean_ctor_set(x_30, 0, x_201); +lean_ctor_set(x_27, 0, x_200); +lean_inc(x_2); +x_205 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_205, 0, x_2); +lean_ctor_set(x_205, 1, x_27); +x_206 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_206, 0, x_205); +x_18 = x_206; +x_19 = x_14; +goto block_26; } +case 2: +{ +lean_object* x_207; lean_object* x_208; uint8_t x_209; +lean_dec(x_198); +lean_inc(x_17); +x_207 = lean_array_push(x_45, x_17); +x_208 = lean_array_get_size(x_1); +x_209 = lean_nat_dec_lt(x_39, x_208); +lean_dec(x_208); +if (x_209 == 0) +{ +lean_object* x_210; lean_object* x_211; lean_object* x_212; +x_210 = l_Lean_Meta_Simp_instInhabitedResult; +x_211 = l___private_Init_GetElem_0__outOfBounds___rarg(x_210); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_211); +x_212 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_211, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_212) == 0) +{ +lean_object* x_213; lean_object* x_214; 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; +x_213 = lean_ctor_get(x_212, 0); +lean_inc(x_213); +x_214 = lean_ctor_get(x_212, 1); +lean_inc(x_214); +lean_dec(x_212); +x_215 = lean_nat_add(x_39, x_59); +lean_dec(x_39); +x_216 = lean_ctor_get(x_211, 0); +lean_inc(x_216); +lean_dec(x_211); +lean_inc(x_213); +lean_inc(x_216); +x_217 = l_Lean_mkAppB(x_201, x_216, x_213); +x_218 = lean_array_push(x_207, x_216); +x_219 = lean_array_push(x_218, x_213); +x_220 = l_Lean_Expr_bindingBody_x21(x_202); +lean_dec(x_202); +x_221 = l_Lean_Expr_bindingBody_x21(x_220); +lean_dec(x_220); +lean_ctor_set(x_31, 1, x_221); +lean_ctor_set(x_31, 0, x_219); +lean_ctor_set(x_30, 0, x_217); +lean_ctor_set(x_29, 0, x_215); +lean_ctor_set(x_27, 0, x_200); +lean_inc(x_2); +x_222 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_222, 0, x_2); +lean_ctor_set(x_222, 1, x_27); +x_223 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_223, 0, x_222); +x_18 = x_223; +x_19 = x_214; +goto block_26; } else { -lean_object* x_737; lean_object* x_738; lean_object* x_739; lean_object* x_740; -lean_dec(x_14); +lean_object* x_224; lean_object* x_225; lean_object* x_226; lean_object* x_227; +lean_dec(x_211); +lean_dec(x_207); +lean_dec(x_202); +lean_dec(x_201); +lean_dec(x_200); +lean_dec(x_33); +lean_free_object(x_31); +lean_free_object(x_30); +lean_free_object(x_29); +lean_dec(x_39); +lean_free_object(x_27); +lean_free_object(x_28); 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_737 = lean_ctor_get(x_726, 0); -lean_inc(x_737); -x_738 = lean_ctor_get(x_726, 1); -lean_inc(x_738); -if (lean_is_exclusive(x_726)) { - lean_ctor_release(x_726, 0); - lean_ctor_release(x_726, 1); - x_739 = x_726; +lean_dec(x_7); +lean_dec(x_2); +x_224 = lean_ctor_get(x_212, 0); +lean_inc(x_224); +x_225 = lean_ctor_get(x_212, 1); +lean_inc(x_225); +if (lean_is_exclusive(x_212)) { + lean_ctor_release(x_212, 0); + lean_ctor_release(x_212, 1); + x_226 = x_212; } else { - lean_dec_ref(x_726); - x_739 = lean_box(0); + lean_dec_ref(x_212); + x_226 = lean_box(0); } -if (lean_is_scalar(x_739)) { - x_740 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_226)) { + x_227 = lean_alloc_ctor(1, 2, 0); } else { - x_740 = x_739; + x_227 = x_226; } -lean_ctor_set(x_740, 0, x_737); -lean_ctor_set(x_740, 1, x_738); -return x_740; +lean_ctor_set(x_227, 0, x_224); +lean_ctor_set(x_227, 1, x_225); +return x_227; } } else { -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; size_t x_749; size_t x_750; -x_741 = lean_array_push(x_653, x_18); -x_742 = lean_nat_add(x_659, x_676); -lean_dec(x_659); -if (lean_is_scalar(x_661)) { - x_743 = lean_alloc_ctor(0, 2, 0); -} else { - x_743 = x_661; -} -lean_ctor_set(x_743, 0, x_742); -lean_ctor_set(x_743, 1, x_660); -if (lean_is_scalar(x_658)) { - x_744 = lean_alloc_ctor(0, 2, 0); -} else { - x_744 = x_658; -} -lean_ctor_set(x_744, 0, x_657); -lean_ctor_set(x_744, 1, x_743); -if (lean_is_scalar(x_656)) { - x_745 = lean_alloc_ctor(0, 2, 0); -} else { - x_745 = x_656; +lean_object* x_228; lean_object* x_229; +x_228 = lean_array_fget(x_1, x_39); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_228); +x_229 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_228, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_229) == 0) +{ +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; +x_230 = lean_ctor_get(x_229, 0); +lean_inc(x_230); +x_231 = lean_ctor_get(x_229, 1); +lean_inc(x_231); +lean_dec(x_229); +x_232 = lean_nat_add(x_39, x_59); +lean_dec(x_39); +x_233 = lean_ctor_get(x_228, 0); +lean_inc(x_233); +lean_dec(x_228); +lean_inc(x_230); +lean_inc(x_233); +x_234 = l_Lean_mkAppB(x_201, x_233, x_230); +x_235 = lean_array_push(x_207, x_233); +x_236 = lean_array_push(x_235, x_230); +x_237 = l_Lean_Expr_bindingBody_x21(x_202); +lean_dec(x_202); +x_238 = l_Lean_Expr_bindingBody_x21(x_237); +lean_dec(x_237); +lean_ctor_set(x_31, 1, x_238); +lean_ctor_set(x_31, 0, x_236); +lean_ctor_set(x_30, 0, x_234); +lean_ctor_set(x_29, 0, x_232); +lean_ctor_set(x_27, 0, x_200); +lean_inc(x_2); +x_239 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_239, 0, x_2); +lean_ctor_set(x_239, 1, x_27); +x_240 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_240, 0, x_239); +x_18 = x_240; +x_19 = x_231; +goto block_26; } -lean_ctor_set(x_745, 0, x_655); -lean_ctor_set(x_745, 1, x_744); -if (lean_is_scalar(x_654)) { - x_746 = lean_alloc_ctor(0, 2, 0); +else +{ +lean_object* x_241; lean_object* x_242; lean_object* x_243; lean_object* x_244; +lean_dec(x_228); +lean_dec(x_207); +lean_dec(x_202); +lean_dec(x_201); +lean_dec(x_200); +lean_dec(x_33); +lean_free_object(x_31); +lean_free_object(x_30); +lean_free_object(x_29); +lean_dec(x_39); +lean_free_object(x_27); +lean_free_object(x_28); +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); +x_241 = lean_ctor_get(x_229, 0); +lean_inc(x_241); +x_242 = lean_ctor_get(x_229, 1); +lean_inc(x_242); +if (lean_is_exclusive(x_229)) { + lean_ctor_release(x_229, 0); + lean_ctor_release(x_229, 1); + x_243 = x_229; } else { - x_746 = x_654; + lean_dec_ref(x_229); + x_243 = lean_box(0); } -lean_ctor_set(x_746, 0, x_741); -lean_ctor_set(x_746, 1, x_745); -if (lean_is_scalar(x_652)) { - x_747 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_243)) { + x_244 = lean_alloc_ctor(1, 2, 0); } else { - x_747 = x_652; -} -lean_ctor_set(x_747, 0, x_651); -lean_ctor_set(x_747, 1, x_746); -x_748 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_748, 0, x_678); -lean_ctor_set(x_748, 1, x_747); -x_749 = 1; -x_750 = lean_usize_add(x_6, x_749); -x_6 = x_750; -x_7 = x_748; -goto _start; -} -} -} -} + x_244 = x_243; } +lean_ctor_set(x_244, 0, x_241); +lean_ctor_set(x_244, 1, x_242); +return x_244; } } } -LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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: +case 3: { -lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_10 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__1___closed__4; -x_11 = lean_panic_fn(x_10, x_1); -x_12 = lean_apply_8(x_11, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -return x_12; -} +lean_object* x_245; lean_object* x_246; lean_object* x_247; +lean_dec(x_198); +x_245 = lean_array_push(x_45, x_17); +lean_ctor_set(x_31, 1, x_202); +lean_ctor_set(x_31, 0, x_245); +lean_ctor_set(x_30, 0, x_201); +lean_ctor_set(x_27, 0, x_200); +lean_inc(x_2); +x_246 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_246, 0, x_2); +lean_ctor_set(x_246, 1, x_27); +x_247 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_247, 0, x_246); +x_18 = x_247; +x_19 = x_14; +goto block_26; } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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) { -_start: +case 5: { -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_inc(x_7); -x_16 = l_Lean_Expr_app___override(x_4, x_7); -x_17 = lean_array_push(x_5, x_7); -x_18 = l_Lean_Expr_bindingBody_x21(x_6); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_17); -lean_ctor_set(x_19, 1, x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_16); -lean_ctor_set(x_20, 1, x_19); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_1); -lean_ctor_set(x_21, 1, x_20); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_2); -lean_ctor_set(x_22, 1, x_21); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_3); -lean_ctor_set(x_23, 1, x_22); -x_24 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_24, 0, 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_15); -return x_25; -} -} -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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, lean_object* x_13, lean_object* x_14, lean_object* x_15) { -_start: +lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; +lean_dec(x_198); +lean_free_object(x_31); +lean_free_object(x_30); +lean_free_object(x_29); +lean_free_object(x_27); +lean_free_object(x_28); +lean_inc(x_17); +x_248 = lean_array_push(x_45, x_17); +x_249 = l_Lean_Expr_bindingDomain_x21(x_202); +x_250 = lean_expr_instantiate_rev(x_249, x_248); +lean_dec(x_249); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_17); +x_251 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_251) == 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; -x_16 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_16, 0, x_1); -x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_2); -lean_ctor_set(x_17, 1, x_3); -x_18 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_18, 0, x_4); -lean_ctor_set(x_18, 1, x_17); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_5); -lean_ctor_set(x_19, 1, x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_6); -lean_ctor_set(x_20, 1, x_19); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_16); -lean_ctor_set(x_21, 1, x_20); -x_22 = lean_alloc_ctor(0, 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_15); -return x_23; -} -} -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1() { -_start: +lean_object* x_252; lean_object* x_253; lean_object* x_254; +x_252 = lean_ctor_get(x_251, 0); +lean_inc(x_252); +x_253 = lean_ctor_get(x_251, 1); +lean_inc(x_253); +lean_dec(x_251); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_250); +x_254 = l_Lean_Meta_isExprDefEq(x_252, x_250, x_10, x_11, x_12, x_13, x_253); +if (lean_obj_tag(x_254) == 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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__1; -x_2 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__2; -x_3 = lean_unsigned_to_nat(593u); -x_4 = lean_unsigned_to_nat(11u); -x_5 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__2() { -_start: +lean_object* x_255; uint8_t x_256; +x_255 = lean_ctor_get(x_254, 0); +lean_inc(x_255); +x_256 = lean_unbox(x_255); +lean_dec(x_255); +if (x_256 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("congr", 5); -return x_1; -} -} -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3() { -_start: +lean_object* x_257; lean_object* x_258; lean_object* x_259; +lean_dec(x_17); +x_257 = lean_ctor_get(x_254, 1); +lean_inc(x_257); +lean_dec(x_254); +x_258 = lean_box(0); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_250); +x_259 = l_Lean_Meta_trySynthInstance(x_250, x_258, x_10, x_11, x_12, x_13, x_257); +if (lean_obj_tag(x_259) == 0) { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__3; -x_2 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__4; -x_3 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__5; -x_4 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__2; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} -} -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__4() { -_start: +lean_object* x_260; +x_260 = lean_ctor_get(x_259, 0); +lean_inc(x_260); +if (lean_obj_tag(x_260) == 1) { -lean_object* x_1; -x_1 = lean_mk_string_from_bytes("failed to synthesize instance", 29); -return x_1; +lean_object* x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; +lean_dec(x_250); +x_261 = lean_ctor_get(x_259, 1); +lean_inc(x_261); +lean_dec(x_259); +x_262 = lean_ctor_get(x_260, 0); +lean_inc(x_262); +lean_dec(x_260); +lean_inc(x_2); +x_263 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_39, x_33, x_200, x_2, x_201, x_248, x_202, x_262, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_261); +lean_dec(x_202); +x_264 = lean_ctor_get(x_263, 0); +lean_inc(x_264); +x_265 = lean_ctor_get(x_263, 1); +lean_inc(x_265); +lean_dec(x_263); +x_18 = x_264; +x_19 = x_265; +goto block_26; } +else +{ +lean_object* x_266; lean_object* x_267; lean_object* x_268; lean_object* x_269; uint8_t x_270; +lean_dec(x_260); +x_266 = lean_ctor_get(x_259, 1); +lean_inc(x_266); +lean_dec(x_259); +x_267 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; +x_268 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_267, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_266); +x_269 = lean_ctor_get(x_268, 0); +lean_inc(x_269); +x_270 = lean_unbox(x_269); +lean_dec(x_269); +if (x_270 == 0) +{ +lean_object* x_271; lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; +lean_dec(x_250); +x_271 = lean_ctor_get(x_268, 1); +lean_inc(x_271); +lean_dec(x_268); +x_272 = lean_box(0); +x_273 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_258, x_248, x_202, x_201, x_39, x_33, x_200, x_272, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_271); +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_18 = x_274; +x_19 = x_275; +goto block_26; } -static lean_object* _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5() { -_start: +else { -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__4; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; +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; lean_object* x_283; lean_object* x_284; lean_object* x_285; lean_object* x_286; lean_object* x_287; lean_object* x_288; +x_276 = lean_ctor_get(x_268, 1); +lean_inc(x_276); +if (lean_is_exclusive(x_268)) { + lean_ctor_release(x_268, 0); + lean_ctor_release(x_268, 1); + x_277 = x_268; +} else { + lean_dec_ref(x_268); + x_277 = lean_box(0); +} +x_278 = l_Lean_indentExpr(x_250); +x_279 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; +if (lean_is_scalar(x_277)) { + x_280 = lean_alloc_ctor(7, 2, 0); +} else { + x_280 = x_277; + lean_ctor_set_tag(x_280, 7); +} +lean_ctor_set(x_280, 0, x_279); +lean_ctor_set(x_280, 1, x_278); +x_281 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; +x_282 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_282, 0, x_280); +lean_ctor_set(x_282, 1, x_281); +x_283 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_267, x_282, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_276); +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 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_258, x_248, x_202, x_201, x_39, x_33, x_200, x_284, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_285); +lean_dec(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); +lean_dec(x_286); +x_18 = x_287; +x_19 = x_288; +goto block_26; } } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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, 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_5, x_4); -if (x_15 == 0) +} +else { -lean_object* x_16; +lean_object* x_289; lean_object* x_290; lean_object* x_291; lean_object* x_292; +lean_dec(x_250); +lean_dec(x_248); +lean_dec(x_202); +lean_dec(x_201); +lean_dec(x_200); +lean_dec(x_33); +lean_dec(x_39); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -18116,147 +21954,100 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_16 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_16, 0, x_6); -lean_ctor_set(x_16, 1, x_14); -return x_16; +x_289 = lean_ctor_get(x_259, 0); +lean_inc(x_289); +x_290 = lean_ctor_get(x_259, 1); +lean_inc(x_290); +if (lean_is_exclusive(x_259)) { + lean_ctor_release(x_259, 0); + lean_ctor_release(x_259, 1); + x_291 = x_259; +} else { + lean_dec_ref(x_259); + x_291 = lean_box(0); +} +if (lean_is_scalar(x_291)) { + x_292 = lean_alloc_ctor(1, 2, 0); +} else { + x_292 = x_291; +} +lean_ctor_set(x_292, 0, x_289); +lean_ctor_set(x_292, 1, x_290); +return x_292; +} } else { -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_17 = lean_array_uget(x_3, x_5); -x_27 = lean_ctor_get(x_6, 1); -lean_inc(x_27); -lean_dec(x_6); -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -x_29 = lean_ctor_get(x_28, 1); -lean_inc(x_29); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -x_31 = !lean_is_exclusive(x_27); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; uint8_t x_34; -x_32 = lean_ctor_get(x_27, 0); -x_33 = lean_ctor_get(x_27, 1); -lean_dec(x_33); -x_34 = !lean_is_exclusive(x_28); -if (x_34 == 0) -{ -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = lean_ctor_get(x_28, 0); -x_36 = lean_ctor_get(x_28, 1); -lean_dec(x_36); -x_37 = !lean_is_exclusive(x_29); -if (x_37 == 0) -{ -lean_object* x_38; lean_object* x_39; uint8_t x_40; -x_38 = lean_ctor_get(x_29, 0); -x_39 = lean_ctor_get(x_29, 1); -lean_dec(x_39); -x_40 = !lean_is_exclusive(x_30); -if (x_40 == 0) -{ -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_41 = lean_ctor_get(x_30, 0); -x_42 = lean_ctor_get(x_30, 1); -x_43 = lean_ctor_get(x_32, 0); -lean_inc(x_43); -x_44 = lean_ctor_get(x_32, 1); -lean_inc(x_44); -x_45 = lean_ctor_get(x_32, 2); -lean_inc(x_45); -x_46 = lean_nat_dec_lt(x_44, x_45); -if (x_46 == 0) -{ -lean_object* x_47; lean_object* x_48; -lean_dec(x_45); -lean_dec(x_44); -lean_dec(x_43); -lean_dec(x_17); +lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; +lean_dec(x_250); +x_293 = lean_ctor_get(x_254, 1); +lean_inc(x_293); +lean_dec(x_254); lean_inc(x_2); -x_47 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_47, 0, x_2); -lean_ctor_set(x_47, 1, x_27); -x_48 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_48, 0, x_47); -x_18 = x_48; -x_19 = x_14; +x_294 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_39, x_33, x_200, x_2, x_201, x_248, x_202, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_293); +lean_dec(x_202); +x_295 = lean_ctor_get(x_294, 0); +lean_inc(x_295); +x_296 = lean_ctor_get(x_294, 1); +lean_inc(x_296); +lean_dec(x_294); +x_18 = x_295; +x_19 = x_296; goto block_26; } +} else { -uint8_t x_49; -x_49 = !lean_is_exclusive(x_32); -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; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_50 = lean_ctor_get(x_32, 2); -lean_dec(x_50); -x_51 = lean_ctor_get(x_32, 1); -lean_dec(x_51); -x_52 = lean_ctor_get(x_32, 0); -lean_dec(x_52); -x_53 = lean_array_fget(x_43, x_44); -x_54 = lean_unbox(x_53); -lean_dec(x_53); -x_55 = lean_unsigned_to_nat(1u); -x_56 = lean_nat_add(x_44, x_55); -lean_dec(x_44); -lean_ctor_set(x_32, 1, x_56); -lean_inc(x_17); -x_57 = l_Lean_Expr_app___override(x_38, x_17); -lean_inc(x_17); -x_58 = lean_array_push(x_41, x_17); -x_59 = l_Lean_Expr_bindingBody_x21(x_42); -lean_dec(x_42); -x_60 = lean_box(x_54); -switch (lean_obj_tag(x_60)) { -case 1: -{ -lean_object* x_61; lean_object* x_62; +lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; +lean_dec(x_250); +lean_dec(x_248); +lean_dec(x_202); +lean_dec(x_201); +lean_dec(x_200); +lean_dec(x_33); +lean_dec(x_39); lean_dec(x_17); -x_61 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__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); -lean_inc(x_7); -x_62 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_61, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_62) == 0) -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_63 = lean_ctor_get(x_62, 1); -lean_inc(x_63); -lean_dec(x_62); -lean_ctor_set(x_30, 1, x_59); -lean_ctor_set(x_30, 0, x_58); -lean_ctor_set(x_29, 0, x_57); -lean_inc(x_2); -x_64 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_64, 0, x_2); -lean_ctor_set(x_64, 1, x_27); -x_65 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_65, 0, x_64); -x_18 = x_65; -x_19 = x_63; -goto block_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_2); +x_297 = lean_ctor_get(x_254, 0); +lean_inc(x_297); +x_298 = lean_ctor_get(x_254, 1); +lean_inc(x_298); +if (lean_is_exclusive(x_254)) { + lean_ctor_release(x_254, 0); + lean_ctor_release(x_254, 1); + x_299 = x_254; +} else { + lean_dec_ref(x_254); + x_299 = lean_box(0); +} +if (lean_is_scalar(x_299)) { + x_300 = lean_alloc_ctor(1, 2, 0); +} else { + x_300 = x_299; +} +lean_ctor_set(x_300, 0, x_297); +lean_ctor_set(x_300, 1, x_298); +return x_300; +} } else { -uint8_t x_66; -lean_dec(x_59); -lean_dec(x_58); -lean_dec(x_57); -lean_dec(x_32); -lean_free_object(x_30); -lean_free_object(x_29); -lean_free_object(x_28); -lean_dec(x_35); -lean_free_object(x_27); +lean_object* x_301; lean_object* x_302; lean_object* x_303; lean_object* x_304; +lean_dec(x_250); +lean_dec(x_248); +lean_dec(x_202); +lean_dec(x_201); +lean_dec(x_200); +lean_dec(x_33); +lean_dec(x_39); +lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -18265,92 +22056,76 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_66 = !lean_is_exclusive(x_62); -if (x_66 == 0) -{ -return x_62; +x_301 = lean_ctor_get(x_251, 0); +lean_inc(x_301); +x_302 = lean_ctor_get(x_251, 1); +lean_inc(x_302); +if (lean_is_exclusive(x_251)) { + lean_ctor_release(x_251, 0); + lean_ctor_release(x_251, 1); + x_303 = x_251; +} else { + lean_dec_ref(x_251); + x_303 = lean_box(0); } -else -{ -lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_67 = lean_ctor_get(x_62, 0); -x_68 = lean_ctor_get(x_62, 1); -lean_inc(x_68); -lean_inc(x_67); -lean_dec(x_62); -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; +if (lean_is_scalar(x_303)) { + x_304 = lean_alloc_ctor(1, 2, 0); +} else { + x_304 = x_303; } +lean_ctor_set(x_304, 0, x_301); +lean_ctor_set(x_304, 1, x_302); +return x_304; } } -case 2: -{ -lean_object* x_70; uint8_t x_71; -x_70 = lean_array_get_size(x_1); -x_71 = lean_nat_dec_lt(x_35, x_70); -lean_dec(x_70); -if (x_71 == 0) +default: { -lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_72 = l_Lean_Meta_Simp_instInhabitedResult; -x_73 = l___private_Init_GetElem_0__outOfBounds___rarg(x_72); +lean_object* x_305; lean_object* x_306; +lean_dec(x_203); +lean_dec(x_198); +lean_dec(x_17); +x_305 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1; lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_73); -x_74 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_73, x_10, x_11, x_12, x_13, x_14); -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; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; -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_nat_add(x_35, x_55); -lean_dec(x_35); -x_78 = lean_ctor_get(x_73, 0); -lean_inc(x_78); -lean_dec(x_73); -lean_inc(x_75); -lean_inc(x_78); -x_79 = l_Lean_mkAppB(x_57, x_78, x_75); -x_80 = lean_array_push(x_58, x_78); -x_81 = lean_array_push(x_80, x_75); -x_82 = l_Lean_Expr_bindingBody_x21(x_59); -lean_dec(x_59); -x_83 = l_Lean_Expr_bindingBody_x21(x_82); -lean_dec(x_82); -lean_ctor_set(x_30, 1, x_83); -lean_ctor_set(x_30, 0, x_81); -lean_ctor_set(x_29, 0, x_79); -lean_ctor_set(x_28, 0, x_77); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_306 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_305, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_306) == 0) +{ +lean_object* x_307; lean_object* x_308; lean_object* x_309; +x_307 = lean_ctor_get(x_306, 1); +lean_inc(x_307); +lean_dec(x_306); +lean_ctor_set(x_31, 1, x_202); +lean_ctor_set(x_30, 0, x_201); +lean_ctor_set(x_27, 0, x_200); lean_inc(x_2); -x_84 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_84, 0, x_2); -lean_ctor_set(x_84, 1, x_27); -x_85 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_85, 0, x_84); -x_18 = x_85; -x_19 = x_76; +x_308 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_308, 0, x_2); +lean_ctor_set(x_308, 1, x_27); +x_309 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_309, 0, x_308); +x_18 = x_309; +x_19 = x_307; goto block_26; } else { -uint8_t x_86; -lean_dec(x_73); -lean_dec(x_59); -lean_dec(x_58); -lean_dec(x_57); -lean_dec(x_32); +lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; +lean_dec(x_202); +lean_dec(x_201); +lean_dec(x_200); +lean_dec(x_33); +lean_free_object(x_31); +lean_dec(x_45); lean_free_object(x_30); lean_free_object(x_29); -lean_free_object(x_28); -lean_dec(x_35); +lean_dec(x_39); lean_free_object(x_27); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -18359,85 +22134,193 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_86 = !lean_is_exclusive(x_74); -if (x_86 == 0) +x_310 = lean_ctor_get(x_306, 0); +lean_inc(x_310); +x_311 = lean_ctor_get(x_306, 1); +lean_inc(x_311); +if (lean_is_exclusive(x_306)) { + lean_ctor_release(x_306, 0); + lean_ctor_release(x_306, 1); + x_312 = x_306; +} else { + lean_dec_ref(x_306); + x_312 = lean_box(0); +} +if (lean_is_scalar(x_312)) { + x_313 = lean_alloc_ctor(1, 2, 0); +} else { + x_313 = x_312; +} +lean_ctor_set(x_313, 0, x_310); +lean_ctor_set(x_313, 1, x_311); +return x_313; +} +} +} +} +} +} +else { -return x_74; +lean_object* x_314; uint8_t 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; uint8_t x_322; +lean_dec(x_33); +x_314 = lean_array_fget(x_47, x_48); +x_315 = lean_unbox(x_314); +lean_dec(x_314); +x_316 = lean_unsigned_to_nat(1u); +x_317 = lean_nat_add(x_48, x_316); +lean_dec(x_48); +x_318 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_318, 0, x_47); +lean_ctor_set(x_318, 1, x_317); +lean_ctor_set(x_318, 2, x_49); +x_319 = lean_ctor_get(x_36, 0); +lean_inc(x_319); +x_320 = lean_ctor_get(x_36, 1); +lean_inc(x_320); +x_321 = lean_ctor_get(x_36, 2); +lean_inc(x_321); +x_322 = lean_nat_dec_lt(x_320, x_321); +if (x_322 == 0) +{ +lean_object* x_323; lean_object* x_324; +lean_dec(x_321); +lean_dec(x_320); +lean_dec(x_319); +lean_dec(x_17); +lean_ctor_set(x_28, 0, x_318); +lean_inc(x_2); +x_323 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_323, 0, x_2); +lean_ctor_set(x_323, 1, x_27); +x_324 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_324, 0, x_323); +x_18 = x_324; +x_19 = x_14; +goto block_26; } else { -lean_object* x_87; lean_object* x_88; lean_object* x_89; -x_87 = lean_ctor_get(x_74, 0); -x_88 = lean_ctor_get(x_74, 1); -lean_inc(x_88); -lean_inc(x_87); -lean_dec(x_74); -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; +lean_object* x_325; lean_object* x_326; lean_object* x_327; lean_object* x_328; lean_object* x_329; lean_object* x_330; lean_object* x_331; +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + lean_ctor_release(x_36, 2); + x_325 = x_36; +} else { + lean_dec_ref(x_36); + x_325 = lean_box(0); } +x_326 = lean_array_fget(x_319, x_320); +x_327 = lean_nat_add(x_320, x_316); +lean_dec(x_320); +if (lean_is_scalar(x_325)) { + x_328 = lean_alloc_ctor(0, 3, 0); +} else { + x_328 = x_325; } +lean_ctor_set(x_328, 0, x_319); +lean_ctor_set(x_328, 1, x_327); +lean_ctor_set(x_328, 2, x_321); +lean_inc(x_17); +x_329 = l_Lean_Expr_app___override(x_42, x_17); +x_330 = l_Lean_Expr_bindingBody_x21(x_46); +lean_dec(x_46); +x_331 = lean_box(x_315); +switch (lean_obj_tag(x_331)) { +case 0: +{ +lean_object* x_332; lean_object* x_333; lean_object* x_334; +lean_dec(x_17); +x_332 = lean_array_push(x_45, x_326); +lean_ctor_set(x_31, 1, x_330); +lean_ctor_set(x_31, 0, x_332); +lean_ctor_set(x_30, 0, x_329); +lean_ctor_set(x_28, 0, x_318); +lean_ctor_set(x_27, 0, x_328); +lean_inc(x_2); +x_333 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_333, 0, x_2); +lean_ctor_set(x_333, 1, x_27); +x_334 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_334, 0, x_333); +x_18 = x_334; +x_19 = x_14; +goto block_26; } -else +case 2: { -lean_object* x_90; lean_object* x_91; -x_90 = lean_array_fget(x_1, x_35); +lean_object* x_335; lean_object* x_336; uint8_t x_337; +lean_dec(x_326); +lean_inc(x_17); +x_335 = lean_array_push(x_45, x_17); +x_336 = lean_array_get_size(x_1); +x_337 = lean_nat_dec_lt(x_39, x_336); +lean_dec(x_336); +if (x_337 == 0) +{ +lean_object* x_338; lean_object* x_339; lean_object* x_340; +x_338 = l_Lean_Meta_Simp_instInhabitedResult; +x_339 = l___private_Init_GetElem_0__outOfBounds___rarg(x_338); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_90); -x_91 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_90, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_91) == 0) -{ -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_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_nat_add(x_35, x_55); -lean_dec(x_35); -x_95 = lean_ctor_get(x_90, 0); -lean_inc(x_95); -lean_dec(x_90); -lean_inc(x_92); -lean_inc(x_95); -x_96 = l_Lean_mkAppB(x_57, x_95, x_92); -x_97 = lean_array_push(x_58, x_95); -x_98 = lean_array_push(x_97, x_92); -x_99 = l_Lean_Expr_bindingBody_x21(x_59); -lean_dec(x_59); -x_100 = l_Lean_Expr_bindingBody_x21(x_99); -lean_dec(x_99); -lean_ctor_set(x_30, 1, x_100); -lean_ctor_set(x_30, 0, x_98); -lean_ctor_set(x_29, 0, x_96); -lean_ctor_set(x_28, 0, x_94); +lean_inc(x_339); +x_340 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_339, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_340) == 0) +{ +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; lean_object* x_348; lean_object* x_349; lean_object* x_350; lean_object* x_351; +x_341 = lean_ctor_get(x_340, 0); +lean_inc(x_341); +x_342 = lean_ctor_get(x_340, 1); +lean_inc(x_342); +lean_dec(x_340); +x_343 = lean_nat_add(x_39, x_316); +lean_dec(x_39); +x_344 = lean_ctor_get(x_339, 0); +lean_inc(x_344); +lean_dec(x_339); +lean_inc(x_341); +lean_inc(x_344); +x_345 = l_Lean_mkAppB(x_329, x_344, x_341); +x_346 = lean_array_push(x_335, x_344); +x_347 = lean_array_push(x_346, x_341); +x_348 = l_Lean_Expr_bindingBody_x21(x_330); +lean_dec(x_330); +x_349 = l_Lean_Expr_bindingBody_x21(x_348); +lean_dec(x_348); +lean_ctor_set(x_31, 1, x_349); +lean_ctor_set(x_31, 0, x_347); +lean_ctor_set(x_30, 0, x_345); +lean_ctor_set(x_29, 0, x_343); +lean_ctor_set(x_28, 0, x_318); +lean_ctor_set(x_27, 0, x_328); lean_inc(x_2); -x_101 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_101, 0, x_2); -lean_ctor_set(x_101, 1, x_27); -x_102 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_102, 0, x_101); -x_18 = x_102; -x_19 = x_93; +x_350 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_350, 0, x_2); +lean_ctor_set(x_350, 1, x_27); +x_351 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_351, 0, x_350); +x_18 = x_351; +x_19 = x_342; goto block_26; } else { -uint8_t x_103; -lean_dec(x_90); -lean_dec(x_59); -lean_dec(x_58); -lean_dec(x_57); -lean_dec(x_32); +lean_object* x_352; lean_object* x_353; lean_object* x_354; lean_object* x_355; +lean_dec(x_339); +lean_dec(x_335); +lean_dec(x_330); +lean_dec(x_329); +lean_dec(x_328); +lean_dec(x_318); +lean_free_object(x_31); lean_free_object(x_30); lean_free_object(x_29); -lean_free_object(x_28); -lean_dec(x_35); +lean_dec(x_39); lean_free_object(x_27); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -18446,71 +22329,91 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_103 = !lean_is_exclusive(x_91); -if (x_103 == 0) -{ -return x_91; -} -else -{ -lean_object* x_104; lean_object* x_105; lean_object* x_106; -x_104 = lean_ctor_get(x_91, 0); -x_105 = lean_ctor_get(x_91, 1); -lean_inc(x_105); -lean_inc(x_104); -lean_dec(x_91); -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; +x_352 = lean_ctor_get(x_340, 0); +lean_inc(x_352); +x_353 = lean_ctor_get(x_340, 1); +lean_inc(x_353); +if (lean_is_exclusive(x_340)) { + lean_ctor_release(x_340, 0); + lean_ctor_release(x_340, 1); + x_354 = x_340; +} else { + lean_dec_ref(x_340); + x_354 = lean_box(0); } +if (lean_is_scalar(x_354)) { + x_355 = lean_alloc_ctor(1, 2, 0); +} else { + x_355 = x_354; } +lean_ctor_set(x_355, 0, x_352); +lean_ctor_set(x_355, 1, x_353); +return x_355; } } -case 4: +else { -lean_object* x_107; lean_object* x_108; -lean_dec(x_17); -x_107 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1; +lean_object* x_356; lean_object* x_357; +x_356 = lean_array_fget(x_1, x_39); 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_108 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_107, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_108) == 0) +lean_inc(x_356); +x_357 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_356, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_357) == 0) { -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); -lean_ctor_set(x_30, 1, x_59); -lean_ctor_set(x_30, 0, x_58); -lean_ctor_set(x_29, 0, x_57); +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; lean_object* x_366; lean_object* x_367; lean_object* x_368; +x_358 = lean_ctor_get(x_357, 0); +lean_inc(x_358); +x_359 = lean_ctor_get(x_357, 1); +lean_inc(x_359); +lean_dec(x_357); +x_360 = lean_nat_add(x_39, x_316); +lean_dec(x_39); +x_361 = lean_ctor_get(x_356, 0); +lean_inc(x_361); +lean_dec(x_356); +lean_inc(x_358); +lean_inc(x_361); +x_362 = l_Lean_mkAppB(x_329, x_361, x_358); +x_363 = lean_array_push(x_335, x_361); +x_364 = lean_array_push(x_363, x_358); +x_365 = l_Lean_Expr_bindingBody_x21(x_330); +lean_dec(x_330); +x_366 = l_Lean_Expr_bindingBody_x21(x_365); +lean_dec(x_365); +lean_ctor_set(x_31, 1, x_366); +lean_ctor_set(x_31, 0, x_364); +lean_ctor_set(x_30, 0, x_362); +lean_ctor_set(x_29, 0, x_360); +lean_ctor_set(x_28, 0, x_318); +lean_ctor_set(x_27, 0, x_328); lean_inc(x_2); -x_110 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_110, 0, x_2); -lean_ctor_set(x_110, 1, x_27); -x_111 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_111, 0, x_110); -x_18 = x_111; -x_19 = x_109; +x_367 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_367, 0, x_2); +lean_ctor_set(x_367, 1, x_27); +x_368 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_368, 0, x_367); +x_18 = x_368; +x_19 = x_359; goto block_26; } else { -uint8_t x_112; -lean_dec(x_59); -lean_dec(x_58); -lean_dec(x_57); -lean_dec(x_32); +lean_object* x_369; lean_object* x_370; lean_object* x_371; lean_object* x_372; +lean_dec(x_356); +lean_dec(x_335); +lean_dec(x_330); +lean_dec(x_329); +lean_dec(x_328); +lean_dec(x_318); +lean_free_object(x_31); lean_free_object(x_30); lean_free_object(x_29); -lean_free_object(x_28); -lean_dec(x_35); +lean_dec(x_39); lean_free_object(x_27); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -18519,215 +22422,218 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_112 = !lean_is_exclusive(x_108); -if (x_112 == 0) -{ -return x_108; +x_369 = lean_ctor_get(x_357, 0); +lean_inc(x_369); +x_370 = lean_ctor_get(x_357, 1); +lean_inc(x_370); +if (lean_is_exclusive(x_357)) { + lean_ctor_release(x_357, 0); + lean_ctor_release(x_357, 1); + x_371 = x_357; +} else { + lean_dec_ref(x_357); + 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_113; lean_object* x_114; lean_object* x_115; -x_113 = lean_ctor_get(x_108, 0); -x_114 = lean_ctor_get(x_108, 1); -lean_inc(x_114); -lean_inc(x_113); -lean_dec(x_108); -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; } } +case 3: +{ +lean_object* x_373; lean_object* x_374; lean_object* x_375; +lean_dec(x_326); +x_373 = lean_array_push(x_45, x_17); +lean_ctor_set(x_31, 1, x_330); +lean_ctor_set(x_31, 0, x_373); +lean_ctor_set(x_30, 0, x_329); +lean_ctor_set(x_28, 0, x_318); +lean_ctor_set(x_27, 0, x_328); +lean_inc(x_2); +x_374 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_374, 0, x_2); +lean_ctor_set(x_374, 1, x_27); +x_375 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_375, 0, x_374); +x_18 = x_375; +x_19 = x_14; +goto block_26; } case 5: { -lean_object* x_116; lean_object* x_117; lean_object* x_118; +lean_object* x_376; lean_object* x_377; lean_object* x_378; lean_object* x_379; +lean_dec(x_326); +lean_free_object(x_31); lean_free_object(x_30); lean_free_object(x_29); -lean_free_object(x_28); lean_free_object(x_27); -x_116 = l_Lean_Expr_bindingDomain_x21(x_59); -x_117 = lean_expr_instantiate_rev(x_116, x_58); -lean_dec(x_116); +lean_free_object(x_28); +lean_inc(x_17); +x_376 = lean_array_push(x_45, x_17); +x_377 = l_Lean_Expr_bindingDomain_x21(x_330); +x_378 = lean_expr_instantiate_rev(x_377, x_376); +lean_dec(x_377); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_17); -x_118 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_118) == 0) -{ -lean_object* x_119; lean_object* x_120; lean_object* x_121; -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_379 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_379) == 0) +{ +lean_object* x_380; lean_object* x_381; lean_object* x_382; +x_380 = lean_ctor_get(x_379, 0); +lean_inc(x_380); +x_381 = lean_ctor_get(x_379, 1); +lean_inc(x_381); +lean_dec(x_379); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_117); -x_121 = l_Lean_Meta_isExprDefEq(x_119, x_117, x_10, x_11, x_12, x_13, x_120); -if (lean_obj_tag(x_121) == 0) +lean_inc(x_378); +x_382 = l_Lean_Meta_isExprDefEq(x_380, x_378, x_10, x_11, x_12, x_13, x_381); +if (lean_obj_tag(x_382) == 0) { -lean_object* x_122; uint8_t x_123; -x_122 = lean_ctor_get(x_121, 0); -lean_inc(x_122); -x_123 = lean_unbox(x_122); -lean_dec(x_122); -if (x_123 == 0) +lean_object* x_383; uint8_t x_384; +x_383 = lean_ctor_get(x_382, 0); +lean_inc(x_383); +x_384 = lean_unbox(x_383); +lean_dec(x_383); +if (x_384 == 0) { -lean_object* x_124; lean_object* x_125; lean_object* x_126; +lean_object* x_385; lean_object* x_386; lean_object* x_387; lean_dec(x_17); -x_124 = lean_ctor_get(x_121, 1); -lean_inc(x_124); -lean_dec(x_121); -x_125 = lean_box(0); +x_385 = lean_ctor_get(x_382, 1); +lean_inc(x_385); +lean_dec(x_382); +x_386 = lean_box(0); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_117); -x_126 = l_Lean_Meta_trySynthInstance(x_117, x_125, x_10, x_11, x_12, x_13, x_124); -if (lean_obj_tag(x_126) == 0) +lean_inc(x_378); +x_387 = l_Lean_Meta_trySynthInstance(x_378, x_386, x_10, x_11, x_12, x_13, x_385); +if (lean_obj_tag(x_387) == 0) { -lean_object* x_127; -x_127 = lean_ctor_get(x_126, 0); -lean_inc(x_127); -if (lean_obj_tag(x_127) == 1) +lean_object* x_388; +x_388 = lean_ctor_get(x_387, 0); +lean_inc(x_388); +if (lean_obj_tag(x_388) == 1) { -lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; -lean_dec(x_117); -x_128 = lean_ctor_get(x_126, 1); -lean_inc(x_128); -lean_dec(x_126); -x_129 = lean_ctor_get(x_127, 0); -lean_inc(x_129); -lean_dec(x_127); +lean_object* x_389; lean_object* x_390; lean_object* x_391; lean_object* x_392; lean_object* x_393; +lean_dec(x_378); +x_389 = lean_ctor_get(x_387, 1); +lean_inc(x_389); +lean_dec(x_387); +x_390 = lean_ctor_get(x_388, 0); +lean_inc(x_390); +lean_dec(x_388); lean_inc(x_2); -x_130 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_35, x_32, x_2, x_57, x_58, x_59, x_129, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_128); -lean_dec(x_59); -x_131 = lean_ctor_get(x_130, 0); -lean_inc(x_131); -x_132 = lean_ctor_get(x_130, 1); -lean_inc(x_132); -lean_dec(x_130); -x_18 = x_131; -x_19 = x_132; -goto block_26; -} -else -{ -lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; uint8_t x_137; -lean_dec(x_127); -x_133 = lean_ctor_get(x_126, 1); -lean_inc(x_133); -lean_dec(x_126); -x_134 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; -x_135 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_134, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_133); -x_136 = lean_ctor_get(x_135, 0); -lean_inc(x_136); -x_137 = lean_unbox(x_136); -lean_dec(x_136); -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_dec(x_117); -x_138 = lean_ctor_get(x_135, 1); -lean_inc(x_138); -lean_dec(x_135); -x_139 = lean_box(0); -x_140 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_125, x_58, x_59, x_57, x_35, x_32, x_139, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_138); -x_141 = lean_ctor_get(x_140, 0); -lean_inc(x_141); -x_142 = lean_ctor_get(x_140, 1); -lean_inc(x_142); -lean_dec(x_140); -x_18 = x_141; -x_19 = x_142; +x_391 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_39, x_318, x_328, x_2, x_329, x_376, x_330, x_390, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_389); +lean_dec(x_330); +x_392 = lean_ctor_get(x_391, 0); +lean_inc(x_392); +x_393 = lean_ctor_get(x_391, 1); +lean_inc(x_393); +lean_dec(x_391); +x_18 = x_392; +x_19 = x_393; goto block_26; } else { -uint8_t x_143; -x_143 = !lean_is_exclusive(x_135); -if (x_143 == 0) +lean_object* x_394; lean_object* x_395; lean_object* x_396; lean_object* x_397; uint8_t x_398; +lean_dec(x_388); +x_394 = lean_ctor_get(x_387, 1); +lean_inc(x_394); +lean_dec(x_387); +x_395 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; +x_396 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_395, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_394); +x_397 = lean_ctor_get(x_396, 0); +lean_inc(x_397); +x_398 = lean_unbox(x_397); +lean_dec(x_397); +if (x_398 == 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; -x_144 = lean_ctor_get(x_135, 1); -x_145 = lean_ctor_get(x_135, 0); -lean_dec(x_145); -x_146 = l_Lean_indentExpr(x_117); -x_147 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; -lean_ctor_set_tag(x_135, 7); -lean_ctor_set(x_135, 1, x_146); -lean_ctor_set(x_135, 0, x_147); -x_148 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; -x_149 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_149, 0, x_135); -lean_ctor_set(x_149, 1, x_148); -x_150 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_134, x_149, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_144); -x_151 = lean_ctor_get(x_150, 0); -lean_inc(x_151); -x_152 = lean_ctor_get(x_150, 1); -lean_inc(x_152); -lean_dec(x_150); -x_153 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_125, x_58, x_59, x_57, x_35, x_32, x_151, x_7, x_8, x_9, x_10, x_11, x_12, x_13, 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_155); -lean_dec(x_153); -x_18 = x_154; -x_19 = x_155; +lean_object* x_399; lean_object* x_400; lean_object* x_401; lean_object* x_402; lean_object* x_403; +lean_dec(x_378); +x_399 = lean_ctor_get(x_396, 1); +lean_inc(x_399); +lean_dec(x_396); +x_400 = lean_box(0); +x_401 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_386, x_376, x_330, x_329, x_39, x_318, x_328, x_400, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_399); +x_402 = lean_ctor_get(x_401, 0); +lean_inc(x_402); +x_403 = lean_ctor_get(x_401, 1); +lean_inc(x_403); +lean_dec(x_401); +x_18 = x_402; +x_19 = x_403; goto block_26; } 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; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; -x_156 = lean_ctor_get(x_135, 1); -lean_inc(x_156); -lean_dec(x_135); -x_157 = l_Lean_indentExpr(x_117); -x_158 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; -x_159 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_159, 0, x_158); -lean_ctor_set(x_159, 1, x_157); -x_160 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; -x_161 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_161, 0, x_159); -lean_ctor_set(x_161, 1, x_160); -x_162 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_134, x_161, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_156); -x_163 = lean_ctor_get(x_162, 0); -lean_inc(x_163); -x_164 = lean_ctor_get(x_162, 1); -lean_inc(x_164); -lean_dec(x_162); -x_165 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_125, x_58, x_59, x_57, x_35, x_32, x_163, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_164); -lean_dec(x_163); -x_166 = lean_ctor_get(x_165, 0); -lean_inc(x_166); -x_167 = lean_ctor_get(x_165, 1); -lean_inc(x_167); -lean_dec(x_165); -x_18 = x_166; -x_19 = x_167; +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; lean_object* x_415; lean_object* x_416; +x_404 = lean_ctor_get(x_396, 1); +lean_inc(x_404); +if (lean_is_exclusive(x_396)) { + lean_ctor_release(x_396, 0); + lean_ctor_release(x_396, 1); + x_405 = x_396; +} else { + lean_dec_ref(x_396); + x_405 = lean_box(0); +} +x_406 = l_Lean_indentExpr(x_378); +x_407 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; +if (lean_is_scalar(x_405)) { + x_408 = lean_alloc_ctor(7, 2, 0); +} else { + x_408 = x_405; + lean_ctor_set_tag(x_408, 7); +} +lean_ctor_set(x_408, 0, x_407); +lean_ctor_set(x_408, 1, x_406); +x_409 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; +x_410 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_410, 0, x_408); +lean_ctor_set(x_410, 1, x_409); +x_411 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_395, x_410, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_404); +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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_386, x_376, x_330, x_329, x_39, x_318, x_328, x_412, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_413); +lean_dec(x_412); +x_415 = lean_ctor_get(x_414, 0); +lean_inc(x_415); +x_416 = lean_ctor_get(x_414, 1); +lean_inc(x_416); +lean_dec(x_414); +x_18 = x_415; +x_19 = x_416; goto block_26; } } } -} else { -uint8_t x_168; -lean_dec(x_117); -lean_dec(x_59); -lean_dec(x_58); -lean_dec(x_57); -lean_dec(x_32); -lean_dec(x_35); +lean_object* x_417; lean_object* x_418; lean_object* x_419; lean_object* x_420; +lean_dec(x_378); +lean_dec(x_376); +lean_dec(x_330); +lean_dec(x_329); +lean_dec(x_328); +lean_dec(x_318); +lean_dec(x_39); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -18736,55 +22642,58 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_168 = !lean_is_exclusive(x_126); -if (x_168 == 0) -{ -return x_126; +x_417 = lean_ctor_get(x_387, 0); +lean_inc(x_417); +x_418 = lean_ctor_get(x_387, 1); +lean_inc(x_418); +if (lean_is_exclusive(x_387)) { + lean_ctor_release(x_387, 0); + lean_ctor_release(x_387, 1); + x_419 = x_387; +} else { + lean_dec_ref(x_387); + x_419 = lean_box(0); } -else -{ -lean_object* x_169; lean_object* x_170; lean_object* x_171; -x_169 = lean_ctor_get(x_126, 0); -x_170 = lean_ctor_get(x_126, 1); -lean_inc(x_170); -lean_inc(x_169); -lean_dec(x_126); -x_171 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_171, 0, x_169); -lean_ctor_set(x_171, 1, x_170); -return x_171; +if (lean_is_scalar(x_419)) { + x_420 = lean_alloc_ctor(1, 2, 0); +} else { + x_420 = x_419; } +lean_ctor_set(x_420, 0, x_417); +lean_ctor_set(x_420, 1, x_418); +return x_420; } } else { -lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; -lean_dec(x_117); -x_172 = lean_ctor_get(x_121, 1); -lean_inc(x_172); -lean_dec(x_121); +lean_object* x_421; lean_object* x_422; lean_object* x_423; lean_object* x_424; +lean_dec(x_378); +x_421 = lean_ctor_get(x_382, 1); +lean_inc(x_421); +lean_dec(x_382); lean_inc(x_2); -x_173 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_35, x_32, x_2, x_57, x_58, x_59, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_172); -lean_dec(x_59); -x_174 = lean_ctor_get(x_173, 0); -lean_inc(x_174); -x_175 = lean_ctor_get(x_173, 1); -lean_inc(x_175); -lean_dec(x_173); -x_18 = x_174; -x_19 = x_175; +x_422 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_39, x_318, x_328, x_2, x_329, x_376, x_330, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_421); +lean_dec(x_330); +x_423 = lean_ctor_get(x_422, 0); +lean_inc(x_423); +x_424 = lean_ctor_get(x_422, 1); +lean_inc(x_424); +lean_dec(x_422); +x_18 = x_423; +x_19 = x_424; goto block_26; } } else { -uint8_t x_176; -lean_dec(x_117); -lean_dec(x_59); -lean_dec(x_58); -lean_dec(x_57); -lean_dec(x_32); -lean_dec(x_35); +lean_object* x_425; lean_object* x_426; lean_object* x_427; lean_object* x_428; +lean_dec(x_378); +lean_dec(x_376); +lean_dec(x_330); +lean_dec(x_329); +lean_dec(x_328); +lean_dec(x_318); +lean_dec(x_39); lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); @@ -18794,35 +22703,38 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_176 = !lean_is_exclusive(x_121); -if (x_176 == 0) -{ -return x_121; +x_425 = lean_ctor_get(x_382, 0); +lean_inc(x_425); +x_426 = lean_ctor_get(x_382, 1); +lean_inc(x_426); +if (lean_is_exclusive(x_382)) { + lean_ctor_release(x_382, 0); + lean_ctor_release(x_382, 1); + x_427 = x_382; +} else { + lean_dec_ref(x_382); + x_427 = lean_box(0); } -else -{ -lean_object* x_177; lean_object* x_178; lean_object* x_179; -x_177 = lean_ctor_get(x_121, 0); -x_178 = lean_ctor_get(x_121, 1); -lean_inc(x_178); -lean_inc(x_177); -lean_dec(x_121); -x_179 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_179, 0, x_177); -lean_ctor_set(x_179, 1, x_178); -return x_179; +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 { -uint8_t x_180; -lean_dec(x_117); -lean_dec(x_59); -lean_dec(x_58); -lean_dec(x_57); -lean_dec(x_32); -lean_dec(x_35); +lean_object* x_429; lean_object* x_430; lean_object* x_431; lean_object* x_432; +lean_dec(x_378); +lean_dec(x_376); +lean_dec(x_330); +lean_dec(x_329); +lean_dec(x_328); +lean_dec(x_318); +lean_dec(x_39); lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); @@ -18832,73 +22744,35 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_180 = !lean_is_exclusive(x_118); -if (x_180 == 0) -{ -return x_118; +x_429 = lean_ctor_get(x_379, 0); +lean_inc(x_429); +x_430 = lean_ctor_get(x_379, 1); +lean_inc(x_430); +if (lean_is_exclusive(x_379)) { + lean_ctor_release(x_379, 0); + lean_ctor_release(x_379, 1); + x_431 = x_379; +} else { + lean_dec_ref(x_379); + x_431 = lean_box(0); } -else -{ -lean_object* x_181; lean_object* x_182; lean_object* x_183; -x_181 = lean_ctor_get(x_118, 0); -x_182 = lean_ctor_get(x_118, 1); -lean_inc(x_182); -lean_inc(x_181); -lean_dec(x_118); -x_183 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_183, 0, x_181); -lean_ctor_set(x_183, 1, x_182); -return x_183; +if (lean_is_scalar(x_431)) { + x_432 = lean_alloc_ctor(1, 2, 0); +} else { + x_432 = x_431; } +lean_ctor_set(x_432, 0, x_429); +lean_ctor_set(x_432, 1, x_430); +return x_432; } } default: { -lean_object* x_184; lean_object* x_185; -lean_dec(x_60); -lean_dec(x_17); -lean_ctor_set(x_30, 1, x_59); -lean_ctor_set(x_30, 0, x_58); -lean_ctor_set(x_29, 0, x_57); -lean_inc(x_2); -x_184 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_184, 0, x_2); -lean_ctor_set(x_184, 1, x_27); -x_185 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_185, 0, x_184); -x_18 = x_185; -x_19 = x_14; -goto block_26; -} -} -} -else -{ -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_dec(x_32); -x_186 = lean_array_fget(x_43, x_44); -x_187 = lean_unbox(x_186); -lean_dec(x_186); -x_188 = lean_unsigned_to_nat(1u); -x_189 = lean_nat_add(x_44, x_188); -lean_dec(x_44); -x_190 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_190, 0, x_43); -lean_ctor_set(x_190, 1, x_189); -lean_ctor_set(x_190, 2, x_45); -lean_inc(x_17); -x_191 = l_Lean_Expr_app___override(x_38, x_17); -lean_inc(x_17); -x_192 = lean_array_push(x_41, x_17); -x_193 = l_Lean_Expr_bindingBody_x21(x_42); -lean_dec(x_42); -x_194 = lean_box(x_187); -switch (lean_obj_tag(x_194)) { -case 1: -{ -lean_object* x_195; lean_object* x_196; +lean_object* x_433; lean_object* x_434; +lean_dec(x_331); +lean_dec(x_326); lean_dec(x_17); -x_195 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1; +x_433 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1; lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); @@ -18906,39 +22780,41 @@ lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); -x_196 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_195, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_196) == 0) +x_434 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_433, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_434) == 0) { -lean_object* x_197; lean_object* x_198; lean_object* x_199; -x_197 = lean_ctor_get(x_196, 1); -lean_inc(x_197); -lean_dec(x_196); -lean_ctor_set(x_30, 1, x_193); -lean_ctor_set(x_30, 0, x_192); -lean_ctor_set(x_29, 0, x_191); -lean_ctor_set(x_27, 0, x_190); +lean_object* x_435; lean_object* x_436; lean_object* x_437; +x_435 = lean_ctor_get(x_434, 1); +lean_inc(x_435); +lean_dec(x_434); +lean_ctor_set(x_31, 1, x_330); +lean_ctor_set(x_30, 0, x_329); +lean_ctor_set(x_28, 0, x_318); +lean_ctor_set(x_27, 0, x_328); lean_inc(x_2); -x_198 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_198, 0, x_2); -lean_ctor_set(x_198, 1, x_27); -x_199 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_199, 0, x_198); -x_18 = x_199; -x_19 = x_197; +x_436 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_436, 0, x_2); +lean_ctor_set(x_436, 1, x_27); +x_437 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_437, 0, x_436); +x_18 = x_437; +x_19 = x_435; goto block_26; } else { -lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; -lean_dec(x_193); -lean_dec(x_192); -lean_dec(x_191); -lean_dec(x_190); +lean_object* x_438; lean_object* x_439; lean_object* x_440; lean_object* x_441; +lean_dec(x_330); +lean_dec(x_329); +lean_dec(x_328); +lean_dec(x_318); +lean_free_object(x_31); +lean_dec(x_45); lean_free_object(x_30); lean_free_object(x_29); -lean_free_object(x_28); -lean_dec(x_35); +lean_dec(x_39); lean_free_object(x_27); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -18947,185 +22823,249 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_200 = lean_ctor_get(x_196, 0); -lean_inc(x_200); -x_201 = lean_ctor_get(x_196, 1); -lean_inc(x_201); -if (lean_is_exclusive(x_196)) { - lean_ctor_release(x_196, 0); - lean_ctor_release(x_196, 1); - x_202 = x_196; +x_438 = lean_ctor_get(x_434, 0); +lean_inc(x_438); +x_439 = lean_ctor_get(x_434, 1); +lean_inc(x_439); +if (lean_is_exclusive(x_434)) { + lean_ctor_release(x_434, 0); + lean_ctor_release(x_434, 1); + x_440 = x_434; } else { - lean_dec_ref(x_196); - x_202 = lean_box(0); + lean_dec_ref(x_434); + x_440 = lean_box(0); } -if (lean_is_scalar(x_202)) { - x_203 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_440)) { + x_441 = lean_alloc_ctor(1, 2, 0); } else { - x_203 = x_202; + x_441 = x_440; } -lean_ctor_set(x_203, 0, x_200); -lean_ctor_set(x_203, 1, x_201); -return x_203; +lean_ctor_set(x_441, 0, x_438); +lean_ctor_set(x_441, 1, x_439); +return x_441; } } -case 2: +} +} +} +} +} +else { -lean_object* x_204; uint8_t x_205; -x_204 = lean_array_get_size(x_1); -x_205 = lean_nat_dec_lt(x_35, x_204); -lean_dec(x_204); -if (x_205 == 0) +lean_object* x_442; lean_object* x_443; lean_object* x_444; lean_object* x_445; lean_object* x_446; uint8_t x_447; +x_442 = lean_ctor_get(x_31, 0); +x_443 = lean_ctor_get(x_31, 1); +lean_inc(x_443); +lean_inc(x_442); +lean_dec(x_31); +x_444 = lean_ctor_get(x_33, 0); +lean_inc(x_444); +x_445 = lean_ctor_get(x_33, 1); +lean_inc(x_445); +x_446 = lean_ctor_get(x_33, 2); +lean_inc(x_446); +x_447 = lean_nat_dec_lt(x_445, x_446); +if (x_447 == 0) { -lean_object* x_206; lean_object* x_207; lean_object* x_208; -x_206 = l_Lean_Meta_Simp_instInhabitedResult; -x_207 = l___private_Init_GetElem_0__outOfBounds___rarg(x_206); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_207); -x_208 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_207, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_208) == 0) -{ -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; lean_object* x_219; -x_209 = lean_ctor_get(x_208, 0); -lean_inc(x_209); -x_210 = lean_ctor_get(x_208, 1); -lean_inc(x_210); -lean_dec(x_208); -x_211 = lean_nat_add(x_35, x_188); -lean_dec(x_35); -x_212 = lean_ctor_get(x_207, 0); -lean_inc(x_212); -lean_dec(x_207); -lean_inc(x_209); -lean_inc(x_212); -x_213 = l_Lean_mkAppB(x_191, x_212, x_209); -x_214 = lean_array_push(x_192, x_212); -x_215 = lean_array_push(x_214, x_209); -x_216 = l_Lean_Expr_bindingBody_x21(x_193); -lean_dec(x_193); -x_217 = l_Lean_Expr_bindingBody_x21(x_216); -lean_dec(x_216); -lean_ctor_set(x_30, 1, x_217); -lean_ctor_set(x_30, 0, x_215); -lean_ctor_set(x_29, 0, x_213); -lean_ctor_set(x_28, 0, x_211); -lean_ctor_set(x_27, 0, x_190); +lean_object* x_448; lean_object* x_449; lean_object* x_450; +lean_dec(x_446); +lean_dec(x_445); +lean_dec(x_444); +lean_dec(x_17); +x_448 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_448, 0, x_442); +lean_ctor_set(x_448, 1, x_443); +lean_ctor_set(x_30, 1, x_448); lean_inc(x_2); -x_218 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_218, 0, x_2); -lean_ctor_set(x_218, 1, x_27); -x_219 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_219, 0, x_218); -x_18 = x_219; -x_19 = x_210; +x_449 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_449, 0, x_2); +lean_ctor_set(x_449, 1, x_27); +x_450 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_450, 0, x_449); +x_18 = x_450; +x_19 = x_14; goto block_26; } else { -lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; -lean_dec(x_207); -lean_dec(x_193); -lean_dec(x_192); -lean_dec(x_191); -lean_dec(x_190); -lean_free_object(x_30); -lean_free_object(x_29); -lean_free_object(x_28); -lean_dec(x_35); -lean_free_object(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_2); -x_220 = lean_ctor_get(x_208, 0); -lean_inc(x_220); -x_221 = lean_ctor_get(x_208, 1); -lean_inc(x_221); -if (lean_is_exclusive(x_208)) { - lean_ctor_release(x_208, 0); - lean_ctor_release(x_208, 1); - x_222 = x_208; +lean_object* x_451; lean_object* x_452; uint8_t 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; uint8_t x_460; +if (lean_is_exclusive(x_33)) { + lean_ctor_release(x_33, 0); + lean_ctor_release(x_33, 1); + lean_ctor_release(x_33, 2); + x_451 = x_33; } else { - lean_dec_ref(x_208); - x_222 = lean_box(0); + lean_dec_ref(x_33); + x_451 = lean_box(0); +} +x_452 = lean_array_fget(x_444, x_445); +x_453 = lean_unbox(x_452); +lean_dec(x_452); +x_454 = lean_unsigned_to_nat(1u); +x_455 = lean_nat_add(x_445, x_454); +lean_dec(x_445); +if (lean_is_scalar(x_451)) { + x_456 = lean_alloc_ctor(0, 3, 0); +} else { + x_456 = x_451; +} +lean_ctor_set(x_456, 0, x_444); +lean_ctor_set(x_456, 1, x_455); +lean_ctor_set(x_456, 2, x_446); +x_457 = lean_ctor_get(x_36, 0); +lean_inc(x_457); +x_458 = lean_ctor_get(x_36, 1); +lean_inc(x_458); +x_459 = lean_ctor_get(x_36, 2); +lean_inc(x_459); +x_460 = lean_nat_dec_lt(x_458, x_459); +if (x_460 == 0) +{ +lean_object* x_461; lean_object* x_462; lean_object* x_463; +lean_dec(x_459); +lean_dec(x_458); +lean_dec(x_457); +lean_dec(x_17); +x_461 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_461, 0, x_442); +lean_ctor_set(x_461, 1, x_443); +lean_ctor_set(x_30, 1, x_461); +lean_ctor_set(x_28, 0, x_456); +lean_inc(x_2); +x_462 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_462, 0, x_2); +lean_ctor_set(x_462, 1, x_27); +x_463 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_463, 0, x_462); +x_18 = x_463; +x_19 = x_14; +goto block_26; } -if (lean_is_scalar(x_222)) { - x_223 = lean_alloc_ctor(1, 2, 0); +else +{ +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_object* x_470; +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + lean_ctor_release(x_36, 2); + x_464 = x_36; } else { - x_223 = x_222; + lean_dec_ref(x_36); + x_464 = lean_box(0); } -lean_ctor_set(x_223, 0, x_220); -lean_ctor_set(x_223, 1, x_221); -return x_223; +x_465 = lean_array_fget(x_457, x_458); +x_466 = lean_nat_add(x_458, x_454); +lean_dec(x_458); +if (lean_is_scalar(x_464)) { + x_467 = lean_alloc_ctor(0, 3, 0); +} else { + x_467 = x_464; } +lean_ctor_set(x_467, 0, x_457); +lean_ctor_set(x_467, 1, x_466); +lean_ctor_set(x_467, 2, x_459); +lean_inc(x_17); +x_468 = l_Lean_Expr_app___override(x_42, x_17); +x_469 = l_Lean_Expr_bindingBody_x21(x_443); +lean_dec(x_443); +x_470 = lean_box(x_453); +switch (lean_obj_tag(x_470)) { +case 0: +{ +lean_object* x_471; lean_object* x_472; lean_object* x_473; lean_object* x_474; +lean_dec(x_17); +x_471 = lean_array_push(x_442, x_465); +x_472 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_472, 0, x_471); +lean_ctor_set(x_472, 1, x_469); +lean_ctor_set(x_30, 1, x_472); +lean_ctor_set(x_30, 0, x_468); +lean_ctor_set(x_28, 0, x_456); +lean_ctor_set(x_27, 0, x_467); +lean_inc(x_2); +x_473 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_473, 0, x_2); +lean_ctor_set(x_473, 1, x_27); +x_474 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_474, 0, x_473); +x_18 = x_474; +x_19 = x_14; +goto block_26; } -else +case 2: +{ +lean_object* x_475; lean_object* x_476; uint8_t x_477; +lean_dec(x_465); +lean_inc(x_17); +x_475 = lean_array_push(x_442, x_17); +x_476 = lean_array_get_size(x_1); +x_477 = lean_nat_dec_lt(x_39, x_476); +lean_dec(x_476); +if (x_477 == 0) { -lean_object* x_224; lean_object* x_225; -x_224 = lean_array_fget(x_1, x_35); +lean_object* x_478; lean_object* x_479; lean_object* x_480; +x_478 = l_Lean_Meta_Simp_instInhabitedResult; +x_479 = l___private_Init_GetElem_0__outOfBounds___rarg(x_478); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_224); -x_225 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_224, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_225) == 0) +lean_inc(x_479); +x_480 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_479, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_480) == 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; -x_226 = lean_ctor_get(x_225, 0); -lean_inc(x_226); -x_227 = lean_ctor_get(x_225, 1); -lean_inc(x_227); -lean_dec(x_225); -x_228 = lean_nat_add(x_35, x_188); -lean_dec(x_35); -x_229 = lean_ctor_get(x_224, 0); -lean_inc(x_229); -lean_dec(x_224); -lean_inc(x_226); -lean_inc(x_229); -x_230 = l_Lean_mkAppB(x_191, x_229, x_226); -x_231 = lean_array_push(x_192, x_229); -x_232 = lean_array_push(x_231, x_226); -x_233 = l_Lean_Expr_bindingBody_x21(x_193); -lean_dec(x_193); -x_234 = l_Lean_Expr_bindingBody_x21(x_233); -lean_dec(x_233); -lean_ctor_set(x_30, 1, x_234); -lean_ctor_set(x_30, 0, x_232); -lean_ctor_set(x_29, 0, x_230); -lean_ctor_set(x_28, 0, x_228); -lean_ctor_set(x_27, 0, x_190); +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_object* x_487; lean_object* x_488; lean_object* x_489; lean_object* x_490; lean_object* x_491; lean_object* x_492; +x_481 = lean_ctor_get(x_480, 0); +lean_inc(x_481); +x_482 = lean_ctor_get(x_480, 1); +lean_inc(x_482); +lean_dec(x_480); +x_483 = lean_nat_add(x_39, x_454); +lean_dec(x_39); +x_484 = lean_ctor_get(x_479, 0); +lean_inc(x_484); +lean_dec(x_479); +lean_inc(x_481); +lean_inc(x_484); +x_485 = l_Lean_mkAppB(x_468, x_484, x_481); +x_486 = lean_array_push(x_475, x_484); +x_487 = lean_array_push(x_486, x_481); +x_488 = l_Lean_Expr_bindingBody_x21(x_469); +lean_dec(x_469); +x_489 = l_Lean_Expr_bindingBody_x21(x_488); +lean_dec(x_488); +x_490 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_490, 0, x_487); +lean_ctor_set(x_490, 1, x_489); +lean_ctor_set(x_30, 1, x_490); +lean_ctor_set(x_30, 0, x_485); +lean_ctor_set(x_29, 0, x_483); +lean_ctor_set(x_28, 0, x_456); +lean_ctor_set(x_27, 0, x_467); lean_inc(x_2); -x_235 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_235, 0, x_2); -lean_ctor_set(x_235, 1, x_27); -x_236 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_236, 0, x_235); -x_18 = x_236; -x_19 = x_227; +x_491 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_491, 0, x_2); +lean_ctor_set(x_491, 1, x_27); +x_492 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_492, 0, x_491); +x_18 = x_492; +x_19 = x_482; goto block_26; } else { -lean_object* x_237; lean_object* x_238; lean_object* x_239; lean_object* x_240; -lean_dec(x_224); -lean_dec(x_193); -lean_dec(x_192); -lean_dec(x_191); -lean_dec(x_190); +lean_object* x_493; lean_object* x_494; lean_object* x_495; lean_object* x_496; +lean_dec(x_479); +lean_dec(x_475); +lean_dec(x_469); +lean_dec(x_468); +lean_dec(x_467); +lean_dec(x_456); lean_free_object(x_30); lean_free_object(x_29); -lean_free_object(x_28); -lean_dec(x_35); +lean_dec(x_39); lean_free_object(x_27); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -19134,74 +23074,92 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_237 = lean_ctor_get(x_225, 0); -lean_inc(x_237); -x_238 = lean_ctor_get(x_225, 1); -lean_inc(x_238); -if (lean_is_exclusive(x_225)) { - lean_ctor_release(x_225, 0); - lean_ctor_release(x_225, 1); - x_239 = x_225; +x_493 = lean_ctor_get(x_480, 0); +lean_inc(x_493); +x_494 = lean_ctor_get(x_480, 1); +lean_inc(x_494); +if (lean_is_exclusive(x_480)) { + lean_ctor_release(x_480, 0); + lean_ctor_release(x_480, 1); + x_495 = x_480; } else { - lean_dec_ref(x_225); - x_239 = lean_box(0); + lean_dec_ref(x_480); + x_495 = lean_box(0); } -if (lean_is_scalar(x_239)) { - x_240 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_495)) { + x_496 = lean_alloc_ctor(1, 2, 0); } else { - x_240 = x_239; -} -lean_ctor_set(x_240, 0, x_237); -lean_ctor_set(x_240, 1, x_238); -return x_240; + x_496 = x_495; } +lean_ctor_set(x_496, 0, x_493); +lean_ctor_set(x_496, 1, x_494); +return x_496; } } -case 4: +else { -lean_object* x_241; lean_object* x_242; -lean_dec(x_17); -x_241 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1; +lean_object* x_497; lean_object* x_498; +x_497 = lean_array_fget(x_1, x_39); 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_242 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_241, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_242) == 0) -{ -lean_object* x_243; lean_object* x_244; lean_object* x_245; -x_243 = lean_ctor_get(x_242, 1); -lean_inc(x_243); -lean_dec(x_242); -lean_ctor_set(x_30, 1, x_193); -lean_ctor_set(x_30, 0, x_192); -lean_ctor_set(x_29, 0, x_191); -lean_ctor_set(x_27, 0, x_190); +lean_inc(x_497); +x_498 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_497, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_498) == 0) +{ +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; +x_499 = lean_ctor_get(x_498, 0); +lean_inc(x_499); +x_500 = lean_ctor_get(x_498, 1); +lean_inc(x_500); +lean_dec(x_498); +x_501 = lean_nat_add(x_39, x_454); +lean_dec(x_39); +x_502 = lean_ctor_get(x_497, 0); +lean_inc(x_502); +lean_dec(x_497); +lean_inc(x_499); +lean_inc(x_502); +x_503 = l_Lean_mkAppB(x_468, x_502, x_499); +x_504 = lean_array_push(x_475, x_502); +x_505 = lean_array_push(x_504, x_499); +x_506 = l_Lean_Expr_bindingBody_x21(x_469); +lean_dec(x_469); +x_507 = l_Lean_Expr_bindingBody_x21(x_506); +lean_dec(x_506); +x_508 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_508, 0, x_505); +lean_ctor_set(x_508, 1, x_507); +lean_ctor_set(x_30, 1, x_508); +lean_ctor_set(x_30, 0, x_503); +lean_ctor_set(x_29, 0, x_501); +lean_ctor_set(x_28, 0, x_456); +lean_ctor_set(x_27, 0, x_467); lean_inc(x_2); -x_244 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_244, 0, x_2); -lean_ctor_set(x_244, 1, x_27); -x_245 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_245, 0, x_244); -x_18 = x_245; -x_19 = x_243; +x_509 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_509, 0, x_2); +lean_ctor_set(x_509, 1, x_27); +x_510 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_510, 0, x_509); +x_18 = x_510; +x_19 = x_500; goto block_26; } else { -lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; -lean_dec(x_193); -lean_dec(x_192); -lean_dec(x_191); -lean_dec(x_190); +lean_object* x_511; lean_object* x_512; lean_object* x_513; lean_object* x_514; +lean_dec(x_497); +lean_dec(x_475); +lean_dec(x_469); +lean_dec(x_468); +lean_dec(x_467); +lean_dec(x_456); lean_free_object(x_30); lean_free_object(x_29); -lean_free_object(x_28); -lean_dec(x_35); +lean_dec(x_39); lean_free_object(x_27); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -19210,192 +23168,219 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_246 = lean_ctor_get(x_242, 0); -lean_inc(x_246); -x_247 = lean_ctor_get(x_242, 1); -lean_inc(x_247); -if (lean_is_exclusive(x_242)) { - lean_ctor_release(x_242, 0); - lean_ctor_release(x_242, 1); - x_248 = x_242; +x_511 = lean_ctor_get(x_498, 0); +lean_inc(x_511); +x_512 = lean_ctor_get(x_498, 1); +lean_inc(x_512); +if (lean_is_exclusive(x_498)) { + lean_ctor_release(x_498, 0); + lean_ctor_release(x_498, 1); + x_513 = x_498; } else { - lean_dec_ref(x_242); - x_248 = lean_box(0); + lean_dec_ref(x_498); + x_513 = lean_box(0); } -if (lean_is_scalar(x_248)) { - x_249 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_513)) { + x_514 = lean_alloc_ctor(1, 2, 0); } else { - x_249 = x_248; + x_514 = x_513; } -lean_ctor_set(x_249, 0, x_246); -lean_ctor_set(x_249, 1, x_247); -return x_249; +lean_ctor_set(x_514, 0, x_511); +lean_ctor_set(x_514, 1, x_512); +return x_514; } } +} +case 3: +{ +lean_object* x_515; lean_object* x_516; lean_object* x_517; lean_object* x_518; +lean_dec(x_465); +x_515 = lean_array_push(x_442, x_17); +x_516 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_516, 0, x_515); +lean_ctor_set(x_516, 1, x_469); +lean_ctor_set(x_30, 1, x_516); +lean_ctor_set(x_30, 0, x_468); +lean_ctor_set(x_28, 0, x_456); +lean_ctor_set(x_27, 0, x_467); +lean_inc(x_2); +x_517 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_517, 0, x_2); +lean_ctor_set(x_517, 1, x_27); +x_518 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_518, 0, x_517); +x_18 = x_518; +x_19 = x_14; +goto block_26; +} case 5: { -lean_object* x_250; lean_object* x_251; lean_object* x_252; +lean_object* x_519; lean_object* x_520; lean_object* x_521; lean_object* x_522; +lean_dec(x_465); lean_free_object(x_30); lean_free_object(x_29); -lean_free_object(x_28); lean_free_object(x_27); -x_250 = l_Lean_Expr_bindingDomain_x21(x_193); -x_251 = lean_expr_instantiate_rev(x_250, x_192); -lean_dec(x_250); +lean_free_object(x_28); +lean_inc(x_17); +x_519 = lean_array_push(x_442, x_17); +x_520 = l_Lean_Expr_bindingDomain_x21(x_469); +x_521 = lean_expr_instantiate_rev(x_520, x_519); +lean_dec(x_520); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_17); -x_252 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_252) == 0) -{ -lean_object* x_253; lean_object* x_254; lean_object* x_255; -x_253 = lean_ctor_get(x_252, 0); -lean_inc(x_253); -x_254 = lean_ctor_get(x_252, 1); -lean_inc(x_254); -lean_dec(x_252); +x_522 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_522) == 0) +{ +lean_object* x_523; lean_object* x_524; lean_object* x_525; +x_523 = lean_ctor_get(x_522, 0); +lean_inc(x_523); +x_524 = lean_ctor_get(x_522, 1); +lean_inc(x_524); +lean_dec(x_522); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_251); -x_255 = l_Lean_Meta_isExprDefEq(x_253, x_251, x_10, x_11, x_12, x_13, x_254); -if (lean_obj_tag(x_255) == 0) +lean_inc(x_521); +x_525 = l_Lean_Meta_isExprDefEq(x_523, x_521, x_10, x_11, x_12, x_13, x_524); +if (lean_obj_tag(x_525) == 0) { -lean_object* x_256; uint8_t x_257; -x_256 = lean_ctor_get(x_255, 0); -lean_inc(x_256); -x_257 = lean_unbox(x_256); -lean_dec(x_256); -if (x_257 == 0) +lean_object* x_526; uint8_t x_527; +x_526 = lean_ctor_get(x_525, 0); +lean_inc(x_526); +x_527 = lean_unbox(x_526); +lean_dec(x_526); +if (x_527 == 0) { -lean_object* x_258; lean_object* x_259; lean_object* x_260; +lean_object* x_528; lean_object* x_529; lean_object* x_530; lean_dec(x_17); -x_258 = lean_ctor_get(x_255, 1); -lean_inc(x_258); -lean_dec(x_255); -x_259 = lean_box(0); +x_528 = lean_ctor_get(x_525, 1); +lean_inc(x_528); +lean_dec(x_525); +x_529 = lean_box(0); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_251); -x_260 = l_Lean_Meta_trySynthInstance(x_251, x_259, x_10, x_11, x_12, x_13, x_258); -if (lean_obj_tag(x_260) == 0) +lean_inc(x_521); +x_530 = l_Lean_Meta_trySynthInstance(x_521, x_529, x_10, x_11, x_12, x_13, x_528); +if (lean_obj_tag(x_530) == 0) { -lean_object* x_261; -x_261 = lean_ctor_get(x_260, 0); -lean_inc(x_261); -if (lean_obj_tag(x_261) == 1) +lean_object* x_531; +x_531 = lean_ctor_get(x_530, 0); +lean_inc(x_531); +if (lean_obj_tag(x_531) == 1) { -lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; -lean_dec(x_251); -x_262 = lean_ctor_get(x_260, 1); -lean_inc(x_262); -lean_dec(x_260); -x_263 = lean_ctor_get(x_261, 0); -lean_inc(x_263); -lean_dec(x_261); +lean_object* x_532; lean_object* x_533; lean_object* x_534; lean_object* x_535; lean_object* x_536; +lean_dec(x_521); +x_532 = lean_ctor_get(x_530, 1); +lean_inc(x_532); +lean_dec(x_530); +x_533 = lean_ctor_get(x_531, 0); +lean_inc(x_533); +lean_dec(x_531); lean_inc(x_2); -x_264 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_35, x_190, x_2, x_191, x_192, x_193, x_263, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_262); -lean_dec(x_193); -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_18 = x_265; -x_19 = x_266; +x_534 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_39, x_456, x_467, x_2, x_468, x_519, x_469, x_533, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_532); +lean_dec(x_469); +x_535 = lean_ctor_get(x_534, 0); +lean_inc(x_535); +x_536 = lean_ctor_get(x_534, 1); +lean_inc(x_536); +lean_dec(x_534); +x_18 = x_535; +x_19 = x_536; goto block_26; } else { -lean_object* x_267; lean_object* x_268; lean_object* x_269; lean_object* x_270; uint8_t x_271; -lean_dec(x_261); -x_267 = lean_ctor_get(x_260, 1); -lean_inc(x_267); -lean_dec(x_260); -x_268 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; -x_269 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_268, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_267); -x_270 = lean_ctor_get(x_269, 0); -lean_inc(x_270); -x_271 = lean_unbox(x_270); -lean_dec(x_270); -if (x_271 == 0) -{ -lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; lean_object* x_276; -lean_dec(x_251); -x_272 = lean_ctor_get(x_269, 1); -lean_inc(x_272); -lean_dec(x_269); -x_273 = lean_box(0); -x_274 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_259, x_192, x_193, x_191, x_35, x_190, x_273, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_272); -x_275 = lean_ctor_get(x_274, 0); -lean_inc(x_275); -x_276 = lean_ctor_get(x_274, 1); -lean_inc(x_276); -lean_dec(x_274); -x_18 = x_275; -x_19 = x_276; +lean_object* x_537; lean_object* x_538; lean_object* x_539; lean_object* x_540; uint8_t x_541; +lean_dec(x_531); +x_537 = lean_ctor_get(x_530, 1); +lean_inc(x_537); +lean_dec(x_530); +x_538 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; +x_539 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_538, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_537); +x_540 = lean_ctor_get(x_539, 0); +lean_inc(x_540); +x_541 = lean_unbox(x_540); +lean_dec(x_540); +if (x_541 == 0) +{ +lean_object* x_542; lean_object* x_543; lean_object* x_544; lean_object* x_545; lean_object* x_546; +lean_dec(x_521); +x_542 = lean_ctor_get(x_539, 1); +lean_inc(x_542); +lean_dec(x_539); +x_543 = lean_box(0); +x_544 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_529, x_519, x_469, x_468, x_39, x_456, x_467, x_543, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_542); +x_545 = lean_ctor_get(x_544, 0); +lean_inc(x_545); +x_546 = lean_ctor_get(x_544, 1); +lean_inc(x_546); +lean_dec(x_544); +x_18 = x_545; +x_19 = x_546; goto block_26; } else { -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; lean_object* x_285; lean_object* x_286; lean_object* x_287; lean_object* x_288; lean_object* x_289; -x_277 = lean_ctor_get(x_269, 1); -lean_inc(x_277); -if (lean_is_exclusive(x_269)) { - lean_ctor_release(x_269, 0); - lean_ctor_release(x_269, 1); - x_278 = x_269; -} else { - lean_dec_ref(x_269); - x_278 = lean_box(0); -} -x_279 = l_Lean_indentExpr(x_251); -x_280 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; -if (lean_is_scalar(x_278)) { - x_281 = lean_alloc_ctor(7, 2, 0); -} else { - x_281 = x_278; - lean_ctor_set_tag(x_281, 7); -} -lean_ctor_set(x_281, 0, x_280); -lean_ctor_set(x_281, 1, x_279); -x_282 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; -x_283 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_283, 0, x_281); -lean_ctor_set(x_283, 1, x_282); -x_284 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_268, x_283, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_277); -x_285 = lean_ctor_get(x_284, 0); -lean_inc(x_285); -x_286 = lean_ctor_get(x_284, 1); -lean_inc(x_286); -lean_dec(x_284); -x_287 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_259, x_192, x_193, x_191, x_35, x_190, x_285, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_286); -lean_dec(x_285); -x_288 = lean_ctor_get(x_287, 0); -lean_inc(x_288); -x_289 = lean_ctor_get(x_287, 1); -lean_inc(x_289); -lean_dec(x_287); -x_18 = x_288; -x_19 = x_289; +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_557; lean_object* x_558; lean_object* x_559; +x_547 = lean_ctor_get(x_539, 1); +lean_inc(x_547); +if (lean_is_exclusive(x_539)) { + lean_ctor_release(x_539, 0); + lean_ctor_release(x_539, 1); + x_548 = x_539; +} else { + lean_dec_ref(x_539); + x_548 = lean_box(0); +} +x_549 = l_Lean_indentExpr(x_521); +x_550 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; +if (lean_is_scalar(x_548)) { + x_551 = lean_alloc_ctor(7, 2, 0); +} else { + x_551 = x_548; + lean_ctor_set_tag(x_551, 7); +} +lean_ctor_set(x_551, 0, x_550); +lean_ctor_set(x_551, 1, x_549); +x_552 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; +x_553 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_553, 0, x_551); +lean_ctor_set(x_553, 1, x_552); +x_554 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_538, x_553, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_547); +x_555 = lean_ctor_get(x_554, 0); +lean_inc(x_555); +x_556 = lean_ctor_get(x_554, 1); +lean_inc(x_556); +lean_dec(x_554); +x_557 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_529, x_519, x_469, x_468, x_39, x_456, x_467, x_555, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_556); +lean_dec(x_555); +x_558 = lean_ctor_get(x_557, 0); +lean_inc(x_558); +x_559 = lean_ctor_get(x_557, 1); +lean_inc(x_559); +lean_dec(x_557); +x_18 = x_558; +x_19 = x_559; goto block_26; } } } else { -lean_object* x_290; lean_object* x_291; lean_object* x_292; lean_object* x_293; -lean_dec(x_251); -lean_dec(x_193); -lean_dec(x_192); -lean_dec(x_191); -lean_dec(x_190); -lean_dec(x_35); +lean_object* x_560; lean_object* x_561; lean_object* x_562; lean_object* x_563; +lean_dec(x_521); +lean_dec(x_519); +lean_dec(x_469); +lean_dec(x_468); +lean_dec(x_467); +lean_dec(x_456); +lean_dec(x_39); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -19404,57 +23389,58 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_290 = lean_ctor_get(x_260, 0); -lean_inc(x_290); -x_291 = lean_ctor_get(x_260, 1); -lean_inc(x_291); -if (lean_is_exclusive(x_260)) { - lean_ctor_release(x_260, 0); - lean_ctor_release(x_260, 1); - x_292 = x_260; +x_560 = lean_ctor_get(x_530, 0); +lean_inc(x_560); +x_561 = lean_ctor_get(x_530, 1); +lean_inc(x_561); +if (lean_is_exclusive(x_530)) { + lean_ctor_release(x_530, 0); + lean_ctor_release(x_530, 1); + x_562 = x_530; } else { - lean_dec_ref(x_260); - x_292 = lean_box(0); + lean_dec_ref(x_530); + x_562 = lean_box(0); } -if (lean_is_scalar(x_292)) { - x_293 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_562)) { + x_563 = lean_alloc_ctor(1, 2, 0); } else { - x_293 = x_292; + x_563 = x_562; } -lean_ctor_set(x_293, 0, x_290); -lean_ctor_set(x_293, 1, x_291); -return x_293; +lean_ctor_set(x_563, 0, x_560); +lean_ctor_set(x_563, 1, x_561); +return x_563; } } else { -lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; -lean_dec(x_251); -x_294 = lean_ctor_get(x_255, 1); -lean_inc(x_294); -lean_dec(x_255); +lean_object* x_564; lean_object* x_565; lean_object* x_566; lean_object* x_567; +lean_dec(x_521); +x_564 = lean_ctor_get(x_525, 1); +lean_inc(x_564); +lean_dec(x_525); lean_inc(x_2); -x_295 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_35, x_190, x_2, x_191, x_192, x_193, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_294); -lean_dec(x_193); -x_296 = lean_ctor_get(x_295, 0); -lean_inc(x_296); -x_297 = lean_ctor_get(x_295, 1); -lean_inc(x_297); -lean_dec(x_295); -x_18 = x_296; -x_19 = x_297; +x_565 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_39, x_456, x_467, x_2, x_468, x_519, x_469, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_564); +lean_dec(x_469); +x_566 = lean_ctor_get(x_565, 0); +lean_inc(x_566); +x_567 = lean_ctor_get(x_565, 1); +lean_inc(x_567); +lean_dec(x_565); +x_18 = x_566; +x_19 = x_567; goto block_26; } } else { -lean_object* x_298; lean_object* x_299; lean_object* x_300; lean_object* x_301; -lean_dec(x_251); -lean_dec(x_193); -lean_dec(x_192); -lean_dec(x_191); -lean_dec(x_190); -lean_dec(x_35); +lean_object* x_568; lean_object* x_569; lean_object* x_570; lean_object* x_571; +lean_dec(x_521); +lean_dec(x_519); +lean_dec(x_469); +lean_dec(x_468); +lean_dec(x_467); +lean_dec(x_456); +lean_dec(x_39); lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); @@ -19464,37 +23450,38 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_298 = lean_ctor_get(x_255, 0); -lean_inc(x_298); -x_299 = lean_ctor_get(x_255, 1); -lean_inc(x_299); -if (lean_is_exclusive(x_255)) { - lean_ctor_release(x_255, 0); - lean_ctor_release(x_255, 1); - x_300 = x_255; +x_568 = lean_ctor_get(x_525, 0); +lean_inc(x_568); +x_569 = lean_ctor_get(x_525, 1); +lean_inc(x_569); +if (lean_is_exclusive(x_525)) { + lean_ctor_release(x_525, 0); + lean_ctor_release(x_525, 1); + x_570 = x_525; } else { - lean_dec_ref(x_255); - x_300 = lean_box(0); + lean_dec_ref(x_525); + x_570 = lean_box(0); } -if (lean_is_scalar(x_300)) { - x_301 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_570)) { + x_571 = lean_alloc_ctor(1, 2, 0); } else { - x_301 = x_300; + x_571 = x_570; } -lean_ctor_set(x_301, 0, x_298); -lean_ctor_set(x_301, 1, x_299); -return x_301; +lean_ctor_set(x_571, 0, x_568); +lean_ctor_set(x_571, 1, x_569); +return x_571; } } else { -lean_object* x_302; lean_object* x_303; lean_object* x_304; lean_object* x_305; -lean_dec(x_251); -lean_dec(x_193); -lean_dec(x_192); -lean_dec(x_191); -lean_dec(x_190); -lean_dec(x_35); +lean_object* x_572; lean_object* x_573; lean_object* x_574; lean_object* x_575; +lean_dec(x_521); +lean_dec(x_519); +lean_dec(x_469); +lean_dec(x_468); +lean_dec(x_467); +lean_dec(x_456); +lean_dec(x_39); lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); @@ -19504,126 +23491,35 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_302 = lean_ctor_get(x_252, 0); -lean_inc(x_302); -x_303 = lean_ctor_get(x_252, 1); -lean_inc(x_303); -if (lean_is_exclusive(x_252)) { - lean_ctor_release(x_252, 0); - lean_ctor_release(x_252, 1); - x_304 = x_252; +x_572 = lean_ctor_get(x_522, 0); +lean_inc(x_572); +x_573 = lean_ctor_get(x_522, 1); +lean_inc(x_573); +if (lean_is_exclusive(x_522)) { + lean_ctor_release(x_522, 0); + lean_ctor_release(x_522, 1); + x_574 = x_522; } else { - lean_dec_ref(x_252); - x_304 = lean_box(0); + lean_dec_ref(x_522); + x_574 = lean_box(0); } -if (lean_is_scalar(x_304)) { - x_305 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_574)) { + x_575 = lean_alloc_ctor(1, 2, 0); } else { - x_305 = x_304; + x_575 = x_574; } -lean_ctor_set(x_305, 0, x_302); -lean_ctor_set(x_305, 1, x_303); -return x_305; +lean_ctor_set(x_575, 0, x_572); +lean_ctor_set(x_575, 1, x_573); +return x_575; } } default: { -lean_object* x_306; lean_object* x_307; -lean_dec(x_194); -lean_dec(x_17); -lean_ctor_set(x_30, 1, x_193); -lean_ctor_set(x_30, 0, x_192); -lean_ctor_set(x_29, 0, x_191); -lean_ctor_set(x_27, 0, x_190); -lean_inc(x_2); -x_306 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_306, 0, x_2); -lean_ctor_set(x_306, 1, x_27); -x_307 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_307, 0, x_306); -x_18 = x_307; -x_19 = x_14; -goto block_26; -} -} -} -} -} -else -{ -lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; uint8_t x_313; -x_308 = lean_ctor_get(x_30, 0); -x_309 = lean_ctor_get(x_30, 1); -lean_inc(x_309); -lean_inc(x_308); -lean_dec(x_30); -x_310 = lean_ctor_get(x_32, 0); -lean_inc(x_310); -x_311 = lean_ctor_get(x_32, 1); -lean_inc(x_311); -x_312 = lean_ctor_get(x_32, 2); -lean_inc(x_312); -x_313 = lean_nat_dec_lt(x_311, x_312); -if (x_313 == 0) -{ -lean_object* x_314; lean_object* x_315; lean_object* x_316; -lean_dec(x_312); -lean_dec(x_311); -lean_dec(x_310); -lean_dec(x_17); -x_314 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_314, 0, x_308); -lean_ctor_set(x_314, 1, x_309); -lean_ctor_set(x_29, 1, x_314); -lean_inc(x_2); -x_315 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_315, 0, x_2); -lean_ctor_set(x_315, 1, x_27); -x_316 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_316, 0, x_315); -x_18 = x_316; -x_19 = x_14; -goto block_26; -} -else -{ -lean_object* x_317; lean_object* x_318; uint8_t 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; -if (lean_is_exclusive(x_32)) { - lean_ctor_release(x_32, 0); - lean_ctor_release(x_32, 1); - lean_ctor_release(x_32, 2); - x_317 = x_32; -} else { - lean_dec_ref(x_32); - x_317 = lean_box(0); -} -x_318 = lean_array_fget(x_310, x_311); -x_319 = lean_unbox(x_318); -lean_dec(x_318); -x_320 = lean_unsigned_to_nat(1u); -x_321 = lean_nat_add(x_311, x_320); -lean_dec(x_311); -if (lean_is_scalar(x_317)) { - x_322 = lean_alloc_ctor(0, 3, 0); -} else { - x_322 = x_317; -} -lean_ctor_set(x_322, 0, x_310); -lean_ctor_set(x_322, 1, x_321); -lean_ctor_set(x_322, 2, x_312); -lean_inc(x_17); -x_323 = l_Lean_Expr_app___override(x_38, x_17); -lean_inc(x_17); -x_324 = lean_array_push(x_308, x_17); -x_325 = l_Lean_Expr_bindingBody_x21(x_309); -lean_dec(x_309); -x_326 = lean_box(x_319); -switch (lean_obj_tag(x_326)) { -case 1: -{ -lean_object* x_327; lean_object* x_328; +lean_object* x_576; lean_object* x_577; +lean_dec(x_470); +lean_dec(x_465); lean_dec(x_17); -x_327 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1; +x_576 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1; lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); @@ -19631,40 +23527,43 @@ lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); -x_328 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_327, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_328) == 0) +x_577 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_576, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_577) == 0) { -lean_object* x_329; lean_object* x_330; lean_object* x_331; lean_object* x_332; -x_329 = lean_ctor_get(x_328, 1); -lean_inc(x_329); -lean_dec(x_328); -x_330 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_330, 0, x_324); -lean_ctor_set(x_330, 1, x_325); -lean_ctor_set(x_29, 1, x_330); -lean_ctor_set(x_29, 0, x_323); -lean_ctor_set(x_27, 0, x_322); +lean_object* x_578; lean_object* x_579; lean_object* x_580; lean_object* x_581; +x_578 = lean_ctor_get(x_577, 1); +lean_inc(x_578); +lean_dec(x_577); +x_579 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_579, 0, x_442); +lean_ctor_set(x_579, 1, x_469); +lean_ctor_set(x_30, 1, x_579); +lean_ctor_set(x_30, 0, x_468); +lean_ctor_set(x_28, 0, x_456); +lean_ctor_set(x_27, 0, x_467); lean_inc(x_2); -x_331 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_331, 0, x_2); -lean_ctor_set(x_331, 1, x_27); -x_332 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_332, 0, x_331); -x_18 = x_332; -x_19 = x_329; +x_580 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_580, 0, x_2); +lean_ctor_set(x_580, 1, x_27); +x_581 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_581, 0, x_580); +x_18 = x_581; +x_19 = x_578; goto block_26; } else { -lean_object* x_333; lean_object* x_334; lean_object* x_335; lean_object* x_336; -lean_dec(x_325); -lean_dec(x_324); -lean_dec(x_323); -lean_dec(x_322); +lean_object* x_582; lean_object* x_583; lean_object* x_584; lean_object* x_585; +lean_dec(x_469); +lean_dec(x_468); +lean_dec(x_467); +lean_dec(x_456); +lean_dec(x_442); +lean_free_object(x_30); lean_free_object(x_29); -lean_free_object(x_28); -lean_dec(x_35); +lean_dec(x_39); lean_free_object(x_27); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -19673,187 +23572,285 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_333 = lean_ctor_get(x_328, 0); -lean_inc(x_333); -x_334 = lean_ctor_get(x_328, 1); -lean_inc(x_334); -if (lean_is_exclusive(x_328)) { - lean_ctor_release(x_328, 0); - lean_ctor_release(x_328, 1); - x_335 = x_328; +x_582 = lean_ctor_get(x_577, 0); +lean_inc(x_582); +x_583 = lean_ctor_get(x_577, 1); +lean_inc(x_583); +if (lean_is_exclusive(x_577)) { + lean_ctor_release(x_577, 0); + lean_ctor_release(x_577, 1); + x_584 = x_577; } else { - lean_dec_ref(x_328); - x_335 = lean_box(0); + lean_dec_ref(x_577); + x_584 = lean_box(0); } -if (lean_is_scalar(x_335)) { - x_336 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_584)) { + x_585 = lean_alloc_ctor(1, 2, 0); } else { - x_336 = x_335; + x_585 = x_584; +} +lean_ctor_set(x_585, 0, x_582); +lean_ctor_set(x_585, 1, x_583); +return x_585; } -lean_ctor_set(x_336, 0, x_333); -lean_ctor_set(x_336, 1, x_334); -return x_336; } } -case 2: +} +} +} +} +else { -lean_object* x_337; uint8_t x_338; -x_337 = lean_array_get_size(x_1); -x_338 = lean_nat_dec_lt(x_35, x_337); -lean_dec(x_337); -if (x_338 == 0) +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; uint8_t x_593; +x_586 = lean_ctor_get(x_30, 0); +lean_inc(x_586); +lean_dec(x_30); +x_587 = lean_ctor_get(x_31, 0); +lean_inc(x_587); +x_588 = lean_ctor_get(x_31, 1); +lean_inc(x_588); +if (lean_is_exclusive(x_31)) { + lean_ctor_release(x_31, 0); + lean_ctor_release(x_31, 1); + x_589 = x_31; +} else { + lean_dec_ref(x_31); + x_589 = lean_box(0); +} +x_590 = lean_ctor_get(x_33, 0); +lean_inc(x_590); +x_591 = lean_ctor_get(x_33, 1); +lean_inc(x_591); +x_592 = lean_ctor_get(x_33, 2); +lean_inc(x_592); +x_593 = lean_nat_dec_lt(x_591, x_592); +if (x_593 == 0) { -lean_object* x_339; lean_object* x_340; lean_object* x_341; -x_339 = l_Lean_Meta_Simp_instInhabitedResult; -x_340 = l___private_Init_GetElem_0__outOfBounds___rarg(x_339); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_340); -x_341 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_340, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_341) == 0) +lean_object* x_594; lean_object* x_595; lean_object* x_596; lean_object* x_597; +lean_dec(x_592); +lean_dec(x_591); +lean_dec(x_590); +lean_dec(x_17); +if (lean_is_scalar(x_589)) { + x_594 = lean_alloc_ctor(0, 2, 0); +} else { + x_594 = x_589; +} +lean_ctor_set(x_594, 0, x_587); +lean_ctor_set(x_594, 1, x_588); +x_595 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_595, 0, x_586); +lean_ctor_set(x_595, 1, x_594); +lean_ctor_set(x_29, 1, x_595); +lean_inc(x_2); +x_596 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_596, 0, x_2); +lean_ctor_set(x_596, 1, x_27); +x_597 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_597, 0, x_596); +x_18 = x_597; +x_19 = x_14; +goto block_26; +} +else { -lean_object* x_342; lean_object* x_343; lean_object* x_344; 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; -x_342 = lean_ctor_get(x_341, 0); -lean_inc(x_342); -x_343 = lean_ctor_get(x_341, 1); -lean_inc(x_343); -lean_dec(x_341); -x_344 = lean_nat_add(x_35, x_320); -lean_dec(x_35); -x_345 = lean_ctor_get(x_340, 0); -lean_inc(x_345); -lean_dec(x_340); -lean_inc(x_342); -lean_inc(x_345); -x_346 = l_Lean_mkAppB(x_323, x_345, x_342); -x_347 = lean_array_push(x_324, x_345); -x_348 = lean_array_push(x_347, x_342); -x_349 = l_Lean_Expr_bindingBody_x21(x_325); -lean_dec(x_325); -x_350 = l_Lean_Expr_bindingBody_x21(x_349); -lean_dec(x_349); -x_351 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_351, 0, x_348); -lean_ctor_set(x_351, 1, x_350); -lean_ctor_set(x_29, 1, x_351); -lean_ctor_set(x_29, 0, x_346); -lean_ctor_set(x_28, 0, x_344); -lean_ctor_set(x_27, 0, x_322); +lean_object* x_598; lean_object* x_599; uint8_t x_600; lean_object* x_601; lean_object* x_602; lean_object* x_603; lean_object* x_604; lean_object* x_605; lean_object* x_606; uint8_t x_607; +if (lean_is_exclusive(x_33)) { + lean_ctor_release(x_33, 0); + lean_ctor_release(x_33, 1); + lean_ctor_release(x_33, 2); + x_598 = x_33; +} else { + lean_dec_ref(x_33); + x_598 = lean_box(0); +} +x_599 = lean_array_fget(x_590, x_591); +x_600 = lean_unbox(x_599); +lean_dec(x_599); +x_601 = lean_unsigned_to_nat(1u); +x_602 = lean_nat_add(x_591, x_601); +lean_dec(x_591); +if (lean_is_scalar(x_598)) { + x_603 = lean_alloc_ctor(0, 3, 0); +} else { + x_603 = x_598; +} +lean_ctor_set(x_603, 0, x_590); +lean_ctor_set(x_603, 1, x_602); +lean_ctor_set(x_603, 2, x_592); +x_604 = lean_ctor_get(x_36, 0); +lean_inc(x_604); +x_605 = lean_ctor_get(x_36, 1); +lean_inc(x_605); +x_606 = lean_ctor_get(x_36, 2); +lean_inc(x_606); +x_607 = lean_nat_dec_lt(x_605, x_606); +if (x_607 == 0) +{ +lean_object* x_608; lean_object* x_609; lean_object* x_610; lean_object* x_611; +lean_dec(x_606); +lean_dec(x_605); +lean_dec(x_604); +lean_dec(x_17); +if (lean_is_scalar(x_589)) { + x_608 = lean_alloc_ctor(0, 2, 0); +} else { + x_608 = x_589; +} +lean_ctor_set(x_608, 0, x_587); +lean_ctor_set(x_608, 1, x_588); +x_609 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_609, 0, x_586); +lean_ctor_set(x_609, 1, x_608); +lean_ctor_set(x_29, 1, x_609); +lean_ctor_set(x_28, 0, x_603); lean_inc(x_2); -x_352 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_352, 0, x_2); -lean_ctor_set(x_352, 1, x_27); -x_353 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_353, 0, x_352); -x_18 = x_353; -x_19 = x_343; +x_610 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_610, 0, x_2); +lean_ctor_set(x_610, 1, x_27); +x_611 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_611, 0, x_610); +x_18 = x_611; +x_19 = x_14; goto block_26; } else { -lean_object* x_354; lean_object* x_355; lean_object* x_356; lean_object* x_357; -lean_dec(x_340); -lean_dec(x_325); -lean_dec(x_324); -lean_dec(x_323); -lean_dec(x_322); -lean_free_object(x_29); -lean_free_object(x_28); -lean_dec(x_35); -lean_free_object(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_2); -x_354 = lean_ctor_get(x_341, 0); -lean_inc(x_354); -x_355 = lean_ctor_get(x_341, 1); -lean_inc(x_355); -if (lean_is_exclusive(x_341)) { - lean_ctor_release(x_341, 0); - lean_ctor_release(x_341, 1); - x_356 = x_341; +lean_object* x_612; lean_object* x_613; lean_object* x_614; lean_object* x_615; lean_object* x_616; lean_object* x_617; lean_object* x_618; +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + lean_ctor_release(x_36, 2); + x_612 = x_36; } else { - lean_dec_ref(x_341); - x_356 = lean_box(0); + lean_dec_ref(x_36); + x_612 = lean_box(0); } -if (lean_is_scalar(x_356)) { - x_357 = lean_alloc_ctor(1, 2, 0); +x_613 = lean_array_fget(x_604, x_605); +x_614 = lean_nat_add(x_605, x_601); +lean_dec(x_605); +if (lean_is_scalar(x_612)) { + x_615 = lean_alloc_ctor(0, 3, 0); } else { - x_357 = x_356; + x_615 = x_612; } -lean_ctor_set(x_357, 0, x_354); -lean_ctor_set(x_357, 1, x_355); -return x_357; +lean_ctor_set(x_615, 0, x_604); +lean_ctor_set(x_615, 1, x_614); +lean_ctor_set(x_615, 2, x_606); +lean_inc(x_17); +x_616 = l_Lean_Expr_app___override(x_586, x_17); +x_617 = l_Lean_Expr_bindingBody_x21(x_588); +lean_dec(x_588); +x_618 = lean_box(x_600); +switch (lean_obj_tag(x_618)) { +case 0: +{ +lean_object* x_619; lean_object* x_620; lean_object* x_621; lean_object* x_622; lean_object* x_623; +lean_dec(x_17); +x_619 = lean_array_push(x_587, x_613); +if (lean_is_scalar(x_589)) { + x_620 = lean_alloc_ctor(0, 2, 0); +} else { + x_620 = x_589; } +lean_ctor_set(x_620, 0, x_619); +lean_ctor_set(x_620, 1, x_617); +x_621 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_621, 0, x_616); +lean_ctor_set(x_621, 1, x_620); +lean_ctor_set(x_29, 1, x_621); +lean_ctor_set(x_28, 0, x_603); +lean_ctor_set(x_27, 0, x_615); +lean_inc(x_2); +x_622 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_622, 0, x_2); +lean_ctor_set(x_622, 1, x_27); +x_623 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_623, 0, x_622); +x_18 = x_623; +x_19 = x_14; +goto block_26; } -else +case 2: +{ +lean_object* x_624; lean_object* x_625; uint8_t x_626; +lean_dec(x_613); +lean_inc(x_17); +x_624 = lean_array_push(x_587, x_17); +x_625 = lean_array_get_size(x_1); +x_626 = lean_nat_dec_lt(x_39, x_625); +lean_dec(x_625); +if (x_626 == 0) { -lean_object* x_358; lean_object* x_359; -x_358 = lean_array_fget(x_1, x_35); +lean_object* x_627; lean_object* x_628; lean_object* x_629; +x_627 = l_Lean_Meta_Simp_instInhabitedResult; +x_628 = l___private_Init_GetElem_0__outOfBounds___rarg(x_627); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_358); -x_359 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_358, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_359) == 0) +lean_inc(x_628); +x_629 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_628, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_629) == 0) { -lean_object* x_360; lean_object* x_361; 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; -x_360 = lean_ctor_get(x_359, 0); -lean_inc(x_360); -x_361 = lean_ctor_get(x_359, 1); -lean_inc(x_361); -lean_dec(x_359); -x_362 = lean_nat_add(x_35, x_320); -lean_dec(x_35); -x_363 = lean_ctor_get(x_358, 0); -lean_inc(x_363); -lean_dec(x_358); -lean_inc(x_360); -lean_inc(x_363); -x_364 = l_Lean_mkAppB(x_323, x_363, x_360); -x_365 = lean_array_push(x_324, x_363); -x_366 = lean_array_push(x_365, x_360); -x_367 = l_Lean_Expr_bindingBody_x21(x_325); -lean_dec(x_325); -x_368 = l_Lean_Expr_bindingBody_x21(x_367); -lean_dec(x_367); -x_369 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_369, 0, x_366); -lean_ctor_set(x_369, 1, x_368); -lean_ctor_set(x_29, 1, x_369); -lean_ctor_set(x_29, 0, x_364); -lean_ctor_set(x_28, 0, x_362); -lean_ctor_set(x_27, 0, x_322); +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; lean_object* x_641; lean_object* x_642; +x_630 = lean_ctor_get(x_629, 0); +lean_inc(x_630); +x_631 = lean_ctor_get(x_629, 1); +lean_inc(x_631); +lean_dec(x_629); +x_632 = lean_nat_add(x_39, x_601); +lean_dec(x_39); +x_633 = lean_ctor_get(x_628, 0); +lean_inc(x_633); +lean_dec(x_628); +lean_inc(x_630); +lean_inc(x_633); +x_634 = l_Lean_mkAppB(x_616, x_633, x_630); +x_635 = lean_array_push(x_624, x_633); +x_636 = lean_array_push(x_635, x_630); +x_637 = l_Lean_Expr_bindingBody_x21(x_617); +lean_dec(x_617); +x_638 = l_Lean_Expr_bindingBody_x21(x_637); +lean_dec(x_637); +if (lean_is_scalar(x_589)) { + x_639 = lean_alloc_ctor(0, 2, 0); +} else { + x_639 = x_589; +} +lean_ctor_set(x_639, 0, x_636); +lean_ctor_set(x_639, 1, x_638); +x_640 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_640, 0, x_634); +lean_ctor_set(x_640, 1, x_639); +lean_ctor_set(x_29, 1, x_640); +lean_ctor_set(x_29, 0, x_632); +lean_ctor_set(x_28, 0, x_603); +lean_ctor_set(x_27, 0, x_615); lean_inc(x_2); -x_370 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_370, 0, x_2); -lean_ctor_set(x_370, 1, x_27); -x_371 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_371, 0, x_370); -x_18 = x_371; -x_19 = x_361; +x_641 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_641, 0, x_2); +lean_ctor_set(x_641, 1, x_27); +x_642 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_642, 0, x_641); +x_18 = x_642; +x_19 = x_631; goto block_26; } else { -lean_object* x_372; lean_object* x_373; lean_object* x_374; lean_object* x_375; -lean_dec(x_358); -lean_dec(x_325); -lean_dec(x_324); -lean_dec(x_323); -lean_dec(x_322); +lean_object* x_643; lean_object* x_644; lean_object* x_645; lean_object* x_646; +lean_dec(x_628); +lean_dec(x_624); +lean_dec(x_617); +lean_dec(x_616); +lean_dec(x_615); +lean_dec(x_603); +lean_dec(x_589); lean_free_object(x_29); -lean_free_object(x_28); -lean_dec(x_35); +lean_dec(x_39); lean_free_object(x_27); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -19862,75 +23859,98 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_372 = lean_ctor_get(x_359, 0); -lean_inc(x_372); -x_373 = lean_ctor_get(x_359, 1); -lean_inc(x_373); -if (lean_is_exclusive(x_359)) { - lean_ctor_release(x_359, 0); - lean_ctor_release(x_359, 1); - x_374 = x_359; +x_643 = lean_ctor_get(x_629, 0); +lean_inc(x_643); +x_644 = lean_ctor_get(x_629, 1); +lean_inc(x_644); +if (lean_is_exclusive(x_629)) { + lean_ctor_release(x_629, 0); + lean_ctor_release(x_629, 1); + x_645 = x_629; } else { - lean_dec_ref(x_359); - x_374 = lean_box(0); + lean_dec_ref(x_629); + x_645 = lean_box(0); } -if (lean_is_scalar(x_374)) { - x_375 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_645)) { + x_646 = lean_alloc_ctor(1, 2, 0); } else { - x_375 = x_374; -} -lean_ctor_set(x_375, 0, x_372); -lean_ctor_set(x_375, 1, x_373); -return x_375; + x_646 = x_645; } +lean_ctor_set(x_646, 0, x_643); +lean_ctor_set(x_646, 1, x_644); +return x_646; } } -case 4: +else { -lean_object* x_376; lean_object* x_377; -lean_dec(x_17); -x_376 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1; +lean_object* x_647; lean_object* x_648; +x_647 = lean_array_fget(x_1, x_39); 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_377 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_376, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_377) == 0) +lean_inc(x_647); +x_648 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_647, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_648) == 0) { -lean_object* x_378; lean_object* x_379; lean_object* x_380; lean_object* x_381; -x_378 = lean_ctor_get(x_377, 1); -lean_inc(x_378); -lean_dec(x_377); -x_379 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_379, 0, x_324); -lean_ctor_set(x_379, 1, x_325); -lean_ctor_set(x_29, 1, x_379); -lean_ctor_set(x_29, 0, x_323); -lean_ctor_set(x_27, 0, x_322); +lean_object* x_649; 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_object* x_657; lean_object* x_658; lean_object* x_659; lean_object* x_660; lean_object* x_661; +x_649 = lean_ctor_get(x_648, 0); +lean_inc(x_649); +x_650 = lean_ctor_get(x_648, 1); +lean_inc(x_650); +lean_dec(x_648); +x_651 = lean_nat_add(x_39, x_601); +lean_dec(x_39); +x_652 = lean_ctor_get(x_647, 0); +lean_inc(x_652); +lean_dec(x_647); +lean_inc(x_649); +lean_inc(x_652); +x_653 = l_Lean_mkAppB(x_616, x_652, x_649); +x_654 = lean_array_push(x_624, x_652); +x_655 = lean_array_push(x_654, x_649); +x_656 = l_Lean_Expr_bindingBody_x21(x_617); +lean_dec(x_617); +x_657 = l_Lean_Expr_bindingBody_x21(x_656); +lean_dec(x_656); +if (lean_is_scalar(x_589)) { + x_658 = lean_alloc_ctor(0, 2, 0); +} else { + x_658 = x_589; +} +lean_ctor_set(x_658, 0, x_655); +lean_ctor_set(x_658, 1, x_657); +x_659 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_659, 0, x_653); +lean_ctor_set(x_659, 1, x_658); +lean_ctor_set(x_29, 1, x_659); +lean_ctor_set(x_29, 0, x_651); +lean_ctor_set(x_28, 0, x_603); +lean_ctor_set(x_27, 0, x_615); lean_inc(x_2); -x_380 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_380, 0, x_2); -lean_ctor_set(x_380, 1, x_27); -x_381 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_381, 0, x_380); -x_18 = x_381; -x_19 = x_378; +x_660 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_660, 0, x_2); +lean_ctor_set(x_660, 1, x_27); +x_661 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_661, 0, x_660); +x_18 = x_661; +x_19 = x_650; goto block_26; } else { -lean_object* x_382; lean_object* x_383; lean_object* x_384; lean_object* x_385; -lean_dec(x_325); -lean_dec(x_324); -lean_dec(x_323); -lean_dec(x_322); +lean_object* x_662; lean_object* x_663; lean_object* x_664; lean_object* x_665; +lean_dec(x_647); +lean_dec(x_624); +lean_dec(x_617); +lean_dec(x_616); +lean_dec(x_615); +lean_dec(x_603); +lean_dec(x_589); lean_free_object(x_29); -lean_free_object(x_28); -lean_dec(x_35); +lean_dec(x_39); lean_free_object(x_27); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -19939,191 +23959,225 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_382 = lean_ctor_get(x_377, 0); -lean_inc(x_382); -x_383 = lean_ctor_get(x_377, 1); -lean_inc(x_383); -if (lean_is_exclusive(x_377)) { - lean_ctor_release(x_377, 0); - lean_ctor_release(x_377, 1); - x_384 = x_377; +x_662 = lean_ctor_get(x_648, 0); +lean_inc(x_662); +x_663 = lean_ctor_get(x_648, 1); +lean_inc(x_663); +if (lean_is_exclusive(x_648)) { + lean_ctor_release(x_648, 0); + lean_ctor_release(x_648, 1); + x_664 = x_648; } else { - lean_dec_ref(x_377); - x_384 = lean_box(0); + lean_dec_ref(x_648); + x_664 = lean_box(0); } -if (lean_is_scalar(x_384)) { - x_385 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_664)) { + x_665 = lean_alloc_ctor(1, 2, 0); } else { - x_385 = x_384; + x_665 = x_664; +} +lean_ctor_set(x_665, 0, x_662); +lean_ctor_set(x_665, 1, x_663); +return x_665; +} } -lean_ctor_set(x_385, 0, x_382); -lean_ctor_set(x_385, 1, x_383); -return x_385; } +case 3: +{ +lean_object* x_666; lean_object* x_667; lean_object* x_668; lean_object* x_669; lean_object* x_670; +lean_dec(x_613); +x_666 = lean_array_push(x_587, x_17); +if (lean_is_scalar(x_589)) { + x_667 = lean_alloc_ctor(0, 2, 0); +} else { + x_667 = x_589; +} +lean_ctor_set(x_667, 0, x_666); +lean_ctor_set(x_667, 1, x_617); +x_668 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_668, 0, x_616); +lean_ctor_set(x_668, 1, x_667); +lean_ctor_set(x_29, 1, x_668); +lean_ctor_set(x_28, 0, x_603); +lean_ctor_set(x_27, 0, x_615); +lean_inc(x_2); +x_669 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_669, 0, x_2); +lean_ctor_set(x_669, 1, x_27); +x_670 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_670, 0, x_669); +x_18 = x_670; +x_19 = x_14; +goto block_26; } case 5: { -lean_object* x_386; lean_object* x_387; lean_object* x_388; +lean_object* x_671; lean_object* x_672; lean_object* x_673; lean_object* x_674; +lean_dec(x_613); +lean_dec(x_589); lean_free_object(x_29); -lean_free_object(x_28); lean_free_object(x_27); -x_386 = l_Lean_Expr_bindingDomain_x21(x_325); -x_387 = lean_expr_instantiate_rev(x_386, x_324); -lean_dec(x_386); +lean_free_object(x_28); +lean_inc(x_17); +x_671 = lean_array_push(x_587, x_17); +x_672 = l_Lean_Expr_bindingDomain_x21(x_617); +x_673 = lean_expr_instantiate_rev(x_672, x_671); +lean_dec(x_672); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_17); -x_388 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_388) == 0) -{ -lean_object* x_389; lean_object* x_390; lean_object* x_391; -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_674 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_674) == 0) +{ +lean_object* x_675; lean_object* x_676; lean_object* x_677; +x_675 = lean_ctor_get(x_674, 0); +lean_inc(x_675); +x_676 = lean_ctor_get(x_674, 1); +lean_inc(x_676); +lean_dec(x_674); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_387); -x_391 = l_Lean_Meta_isExprDefEq(x_389, x_387, x_10, x_11, x_12, x_13, x_390); -if (lean_obj_tag(x_391) == 0) +lean_inc(x_673); +x_677 = l_Lean_Meta_isExprDefEq(x_675, x_673, x_10, x_11, x_12, x_13, x_676); +if (lean_obj_tag(x_677) == 0) { -lean_object* x_392; uint8_t x_393; -x_392 = lean_ctor_get(x_391, 0); -lean_inc(x_392); -x_393 = lean_unbox(x_392); -lean_dec(x_392); -if (x_393 == 0) +lean_object* x_678; uint8_t x_679; +x_678 = lean_ctor_get(x_677, 0); +lean_inc(x_678); +x_679 = lean_unbox(x_678); +lean_dec(x_678); +if (x_679 == 0) { -lean_object* x_394; lean_object* x_395; lean_object* x_396; +lean_object* x_680; lean_object* x_681; lean_object* x_682; lean_dec(x_17); -x_394 = lean_ctor_get(x_391, 1); -lean_inc(x_394); -lean_dec(x_391); -x_395 = lean_box(0); +x_680 = lean_ctor_get(x_677, 1); +lean_inc(x_680); +lean_dec(x_677); +x_681 = lean_box(0); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_387); -x_396 = l_Lean_Meta_trySynthInstance(x_387, x_395, x_10, x_11, x_12, x_13, x_394); -if (lean_obj_tag(x_396) == 0) +lean_inc(x_673); +x_682 = l_Lean_Meta_trySynthInstance(x_673, x_681, x_10, x_11, x_12, x_13, x_680); +if (lean_obj_tag(x_682) == 0) { -lean_object* x_397; -x_397 = lean_ctor_get(x_396, 0); -lean_inc(x_397); -if (lean_obj_tag(x_397) == 1) +lean_object* x_683; +x_683 = lean_ctor_get(x_682, 0); +lean_inc(x_683); +if (lean_obj_tag(x_683) == 1) { -lean_object* x_398; lean_object* x_399; lean_object* x_400; lean_object* x_401; lean_object* x_402; -lean_dec(x_387); -x_398 = lean_ctor_get(x_396, 1); -lean_inc(x_398); -lean_dec(x_396); -x_399 = lean_ctor_get(x_397, 0); -lean_inc(x_399); -lean_dec(x_397); +lean_object* x_684; lean_object* x_685; lean_object* x_686; lean_object* x_687; lean_object* x_688; +lean_dec(x_673); +x_684 = lean_ctor_get(x_682, 1); +lean_inc(x_684); +lean_dec(x_682); +x_685 = lean_ctor_get(x_683, 0); +lean_inc(x_685); +lean_dec(x_683); lean_inc(x_2); -x_400 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_35, x_322, x_2, x_323, x_324, x_325, x_399, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_398); -lean_dec(x_325); -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); -x_18 = x_401; -x_19 = x_402; +x_686 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_39, x_603, x_615, x_2, x_616, x_671, x_617, x_685, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_684); +lean_dec(x_617); +x_687 = lean_ctor_get(x_686, 0); +lean_inc(x_687); +x_688 = lean_ctor_get(x_686, 1); +lean_inc(x_688); +lean_dec(x_686); +x_18 = x_687; +x_19 = x_688; goto block_26; } else { -lean_object* x_403; lean_object* x_404; lean_object* x_405; lean_object* x_406; uint8_t x_407; -lean_dec(x_397); -x_403 = lean_ctor_get(x_396, 1); -lean_inc(x_403); -lean_dec(x_396); -x_404 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; -x_405 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_404, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_403); -x_406 = lean_ctor_get(x_405, 0); -lean_inc(x_406); -x_407 = lean_unbox(x_406); -lean_dec(x_406); -if (x_407 == 0) -{ -lean_object* x_408; lean_object* x_409; lean_object* x_410; lean_object* x_411; lean_object* x_412; -lean_dec(x_387); -x_408 = lean_ctor_get(x_405, 1); -lean_inc(x_408); -lean_dec(x_405); -x_409 = lean_box(0); -x_410 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_395, x_324, x_325, x_323, x_35, x_322, x_409, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_408); -x_411 = lean_ctor_get(x_410, 0); -lean_inc(x_411); -x_412 = lean_ctor_get(x_410, 1); -lean_inc(x_412); -lean_dec(x_410); -x_18 = x_411; -x_19 = x_412; +lean_object* x_689; lean_object* x_690; lean_object* x_691; lean_object* x_692; uint8_t x_693; +lean_dec(x_683); +x_689 = lean_ctor_get(x_682, 1); +lean_inc(x_689); +lean_dec(x_682); +x_690 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; +x_691 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_690, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_689); +x_692 = lean_ctor_get(x_691, 0); +lean_inc(x_692); +x_693 = lean_unbox(x_692); +lean_dec(x_692); +if (x_693 == 0) +{ +lean_object* x_694; lean_object* x_695; lean_object* x_696; lean_object* x_697; lean_object* x_698; +lean_dec(x_673); +x_694 = lean_ctor_get(x_691, 1); +lean_inc(x_694); +lean_dec(x_691); +x_695 = lean_box(0); +x_696 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_681, x_671, x_617, x_616, x_39, x_603, x_615, x_695, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_694); +x_697 = lean_ctor_get(x_696, 0); +lean_inc(x_697); +x_698 = lean_ctor_get(x_696, 1); +lean_inc(x_698); +lean_dec(x_696); +x_18 = x_697; +x_19 = x_698; goto block_26; } else { -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; lean_object* x_421; lean_object* x_422; lean_object* x_423; lean_object* x_424; lean_object* x_425; -x_413 = lean_ctor_get(x_405, 1); -lean_inc(x_413); -if (lean_is_exclusive(x_405)) { - lean_ctor_release(x_405, 0); - lean_ctor_release(x_405, 1); - x_414 = x_405; -} else { - lean_dec_ref(x_405); - x_414 = lean_box(0); -} -x_415 = l_Lean_indentExpr(x_387); -x_416 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; -if (lean_is_scalar(x_414)) { - x_417 = lean_alloc_ctor(7, 2, 0); -} else { - x_417 = x_414; - lean_ctor_set_tag(x_417, 7); -} -lean_ctor_set(x_417, 0, x_416); -lean_ctor_set(x_417, 1, x_415); -x_418 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; -x_419 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_419, 0, x_417); -lean_ctor_set(x_419, 1, x_418); -x_420 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_404, x_419, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_413); -x_421 = lean_ctor_get(x_420, 0); -lean_inc(x_421); -x_422 = lean_ctor_get(x_420, 1); -lean_inc(x_422); -lean_dec(x_420); -x_423 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_395, x_324, x_325, x_323, x_35, x_322, x_421, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_422); -lean_dec(x_421); -x_424 = lean_ctor_get(x_423, 0); -lean_inc(x_424); -x_425 = lean_ctor_get(x_423, 1); -lean_inc(x_425); -lean_dec(x_423); -x_18 = x_424; -x_19 = x_425; +lean_object* x_699; lean_object* x_700; lean_object* x_701; lean_object* x_702; lean_object* x_703; lean_object* x_704; lean_object* x_705; lean_object* x_706; lean_object* x_707; lean_object* x_708; lean_object* x_709; lean_object* x_710; lean_object* x_711; +x_699 = lean_ctor_get(x_691, 1); +lean_inc(x_699); +if (lean_is_exclusive(x_691)) { + lean_ctor_release(x_691, 0); + lean_ctor_release(x_691, 1); + x_700 = x_691; +} else { + lean_dec_ref(x_691); + x_700 = lean_box(0); +} +x_701 = l_Lean_indentExpr(x_673); +x_702 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; +if (lean_is_scalar(x_700)) { + x_703 = lean_alloc_ctor(7, 2, 0); +} else { + x_703 = x_700; + lean_ctor_set_tag(x_703, 7); +} +lean_ctor_set(x_703, 0, x_702); +lean_ctor_set(x_703, 1, x_701); +x_704 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; +x_705 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_705, 0, x_703); +lean_ctor_set(x_705, 1, x_704); +x_706 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_690, x_705, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_699); +x_707 = lean_ctor_get(x_706, 0); +lean_inc(x_707); +x_708 = lean_ctor_get(x_706, 1); +lean_inc(x_708); +lean_dec(x_706); +x_709 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_681, x_671, x_617, x_616, x_39, x_603, x_615, x_707, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_708); +lean_dec(x_707); +x_710 = lean_ctor_get(x_709, 0); +lean_inc(x_710); +x_711 = lean_ctor_get(x_709, 1); +lean_inc(x_711); +lean_dec(x_709); +x_18 = x_710; +x_19 = x_711; goto block_26; } } } else { -lean_object* x_426; lean_object* x_427; lean_object* x_428; lean_object* x_429; -lean_dec(x_387); -lean_dec(x_325); -lean_dec(x_324); -lean_dec(x_323); -lean_dec(x_322); -lean_dec(x_35); +lean_object* x_712; lean_object* x_713; lean_object* x_714; lean_object* x_715; +lean_dec(x_673); +lean_dec(x_671); +lean_dec(x_617); +lean_dec(x_616); +lean_dec(x_615); +lean_dec(x_603); +lean_dec(x_39); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -20132,57 +24186,58 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_426 = lean_ctor_get(x_396, 0); -lean_inc(x_426); -x_427 = lean_ctor_get(x_396, 1); -lean_inc(x_427); -if (lean_is_exclusive(x_396)) { - lean_ctor_release(x_396, 0); - lean_ctor_release(x_396, 1); - x_428 = x_396; +x_712 = lean_ctor_get(x_682, 0); +lean_inc(x_712); +x_713 = lean_ctor_get(x_682, 1); +lean_inc(x_713); +if (lean_is_exclusive(x_682)) { + lean_ctor_release(x_682, 0); + lean_ctor_release(x_682, 1); + x_714 = x_682; } else { - lean_dec_ref(x_396); - x_428 = lean_box(0); + lean_dec_ref(x_682); + x_714 = lean_box(0); } -if (lean_is_scalar(x_428)) { - x_429 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_714)) { + x_715 = lean_alloc_ctor(1, 2, 0); } else { - x_429 = x_428; + x_715 = x_714; } -lean_ctor_set(x_429, 0, x_426); -lean_ctor_set(x_429, 1, x_427); -return x_429; +lean_ctor_set(x_715, 0, x_712); +lean_ctor_set(x_715, 1, x_713); +return x_715; } } else { -lean_object* x_430; lean_object* x_431; lean_object* x_432; lean_object* x_433; -lean_dec(x_387); -x_430 = lean_ctor_get(x_391, 1); -lean_inc(x_430); -lean_dec(x_391); +lean_object* x_716; lean_object* x_717; lean_object* x_718; lean_object* x_719; +lean_dec(x_673); +x_716 = lean_ctor_get(x_677, 1); +lean_inc(x_716); +lean_dec(x_677); lean_inc(x_2); -x_431 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_35, x_322, x_2, x_323, x_324, x_325, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_430); -lean_dec(x_325); -x_432 = lean_ctor_get(x_431, 0); -lean_inc(x_432); -x_433 = lean_ctor_get(x_431, 1); -lean_inc(x_433); -lean_dec(x_431); -x_18 = x_432; -x_19 = x_433; +x_717 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_39, x_603, x_615, x_2, x_616, x_671, x_617, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_716); +lean_dec(x_617); +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_18 = x_718; +x_19 = x_719; goto block_26; } } else { -lean_object* x_434; lean_object* x_435; lean_object* x_436; lean_object* x_437; -lean_dec(x_387); -lean_dec(x_325); -lean_dec(x_324); -lean_dec(x_323); -lean_dec(x_322); -lean_dec(x_35); +lean_object* x_720; lean_object* x_721; lean_object* x_722; lean_object* x_723; +lean_dec(x_673); +lean_dec(x_671); +lean_dec(x_617); +lean_dec(x_616); +lean_dec(x_615); +lean_dec(x_603); +lean_dec(x_39); lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); @@ -20192,37 +24247,38 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_434 = lean_ctor_get(x_391, 0); -lean_inc(x_434); -x_435 = lean_ctor_get(x_391, 1); -lean_inc(x_435); -if (lean_is_exclusive(x_391)) { - lean_ctor_release(x_391, 0); - lean_ctor_release(x_391, 1); - x_436 = x_391; +x_720 = lean_ctor_get(x_677, 0); +lean_inc(x_720); +x_721 = lean_ctor_get(x_677, 1); +lean_inc(x_721); +if (lean_is_exclusive(x_677)) { + lean_ctor_release(x_677, 0); + lean_ctor_release(x_677, 1); + x_722 = x_677; } else { - lean_dec_ref(x_391); - x_436 = lean_box(0); + lean_dec_ref(x_677); + x_722 = lean_box(0); } -if (lean_is_scalar(x_436)) { - x_437 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_722)) { + x_723 = lean_alloc_ctor(1, 2, 0); } else { - x_437 = x_436; + x_723 = x_722; } -lean_ctor_set(x_437, 0, x_434); -lean_ctor_set(x_437, 1, x_435); -return x_437; +lean_ctor_set(x_723, 0, x_720); +lean_ctor_set(x_723, 1, x_721); +return x_723; } } else { -lean_object* x_438; lean_object* x_439; lean_object* x_440; lean_object* x_441; -lean_dec(x_387); -lean_dec(x_325); -lean_dec(x_324); -lean_dec(x_323); -lean_dec(x_322); -lean_dec(x_35); +lean_object* x_724; lean_object* x_725; lean_object* x_726; lean_object* x_727; +lean_dec(x_673); +lean_dec(x_671); +lean_dec(x_617); +lean_dec(x_616); +lean_dec(x_615); +lean_dec(x_603); +lean_dec(x_39); lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); @@ -20232,296 +24288,409 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_438 = lean_ctor_get(x_388, 0); -lean_inc(x_438); -x_439 = lean_ctor_get(x_388, 1); -lean_inc(x_439); -if (lean_is_exclusive(x_388)) { - lean_ctor_release(x_388, 0); - lean_ctor_release(x_388, 1); - x_440 = x_388; +x_724 = lean_ctor_get(x_674, 0); +lean_inc(x_724); +x_725 = lean_ctor_get(x_674, 1); +lean_inc(x_725); +if (lean_is_exclusive(x_674)) { + lean_ctor_release(x_674, 0); + lean_ctor_release(x_674, 1); + x_726 = x_674; } else { - lean_dec_ref(x_388); - x_440 = lean_box(0); + lean_dec_ref(x_674); + x_726 = lean_box(0); } -if (lean_is_scalar(x_440)) { - x_441 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_726)) { + x_727 = lean_alloc_ctor(1, 2, 0); } else { - x_441 = x_440; + x_727 = x_726; } -lean_ctor_set(x_441, 0, x_438); -lean_ctor_set(x_441, 1, x_439); -return x_441; +lean_ctor_set(x_727, 0, x_724); +lean_ctor_set(x_727, 1, x_725); +return x_727; } } default: { -lean_object* x_442; lean_object* x_443; lean_object* x_444; -lean_dec(x_326); +lean_object* x_728; lean_object* x_729; +lean_dec(x_618); +lean_dec(x_613); lean_dec(x_17); -x_442 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_442, 0, x_324); -lean_ctor_set(x_442, 1, x_325); -lean_ctor_set(x_29, 1, x_442); -lean_ctor_set(x_29, 0, x_323); -lean_ctor_set(x_27, 0, x_322); +x_728 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__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); +lean_inc(x_7); +x_729 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_728, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_729) == 0) +{ +lean_object* x_730; lean_object* x_731; lean_object* x_732; lean_object* x_733; lean_object* x_734; +x_730 = lean_ctor_get(x_729, 1); +lean_inc(x_730); +lean_dec(x_729); +if (lean_is_scalar(x_589)) { + x_731 = lean_alloc_ctor(0, 2, 0); +} else { + x_731 = x_589; +} +lean_ctor_set(x_731, 0, x_587); +lean_ctor_set(x_731, 1, x_617); +x_732 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_732, 0, x_616); +lean_ctor_set(x_732, 1, x_731); +lean_ctor_set(x_29, 1, x_732); +lean_ctor_set(x_28, 0, x_603); +lean_ctor_set(x_27, 0, x_615); lean_inc(x_2); -x_443 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_443, 0, x_2); -lean_ctor_set(x_443, 1, x_27); -x_444 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_444, 0, x_443); -x_18 = x_444; -x_19 = x_14; +x_733 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_733, 0, x_2); +lean_ctor_set(x_733, 1, x_27); +x_734 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_734, 0, x_733); +x_18 = x_734; +x_19 = x_730; goto block_26; } +else +{ +lean_object* x_735; lean_object* x_736; lean_object* x_737; lean_object* x_738; +lean_dec(x_617); +lean_dec(x_616); +lean_dec(x_615); +lean_dec(x_603); +lean_dec(x_589); +lean_dec(x_587); +lean_free_object(x_29); +lean_dec(x_39); +lean_free_object(x_27); +lean_free_object(x_28); +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); +x_735 = lean_ctor_get(x_729, 0); +lean_inc(x_735); +x_736 = lean_ctor_get(x_729, 1); +lean_inc(x_736); +if (lean_is_exclusive(x_729)) { + lean_ctor_release(x_729, 0); + lean_ctor_release(x_729, 1); + x_737 = x_729; +} else { + lean_dec_ref(x_729); + x_737 = lean_box(0); +} +if (lean_is_scalar(x_737)) { + x_738 = lean_alloc_ctor(1, 2, 0); +} else { + x_738 = x_737; +} +lean_ctor_set(x_738, 0, x_735); +lean_ctor_set(x_738, 1, x_736); +return x_738; +} +} +} } } } } else { -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; uint8_t x_452; -x_445 = lean_ctor_get(x_29, 0); -lean_inc(x_445); +lean_object* x_739; lean_object* x_740; 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; uint8_t x_748; +x_739 = lean_ctor_get(x_29, 0); +lean_inc(x_739); lean_dec(x_29); -x_446 = lean_ctor_get(x_30, 0); -lean_inc(x_446); -x_447 = lean_ctor_get(x_30, 1); -lean_inc(x_447); +x_740 = lean_ctor_get(x_30, 0); +lean_inc(x_740); if (lean_is_exclusive(x_30)) { lean_ctor_release(x_30, 0); lean_ctor_release(x_30, 1); - x_448 = x_30; + x_741 = x_30; } else { lean_dec_ref(x_30); - x_448 = lean_box(0); + x_741 = lean_box(0); +} +x_742 = lean_ctor_get(x_31, 0); +lean_inc(x_742); +x_743 = lean_ctor_get(x_31, 1); +lean_inc(x_743); +if (lean_is_exclusive(x_31)) { + lean_ctor_release(x_31, 0); + lean_ctor_release(x_31, 1); + x_744 = x_31; +} else { + lean_dec_ref(x_31); + x_744 = lean_box(0); } -x_449 = lean_ctor_get(x_32, 0); -lean_inc(x_449); -x_450 = lean_ctor_get(x_32, 1); -lean_inc(x_450); -x_451 = lean_ctor_get(x_32, 2); -lean_inc(x_451); -x_452 = lean_nat_dec_lt(x_450, x_451); -if (x_452 == 0) -{ -lean_object* x_453; lean_object* x_454; lean_object* x_455; lean_object* x_456; -lean_dec(x_451); -lean_dec(x_450); -lean_dec(x_449); +x_745 = lean_ctor_get(x_33, 0); +lean_inc(x_745); +x_746 = lean_ctor_get(x_33, 1); +lean_inc(x_746); +x_747 = lean_ctor_get(x_33, 2); +lean_inc(x_747); +x_748 = lean_nat_dec_lt(x_746, x_747); +if (x_748 == 0) +{ +lean_object* x_749; lean_object* x_750; lean_object* x_751; lean_object* x_752; lean_object* x_753; +lean_dec(x_747); +lean_dec(x_746); +lean_dec(x_745); lean_dec(x_17); -if (lean_is_scalar(x_448)) { - x_453 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_744)) { + x_749 = lean_alloc_ctor(0, 2, 0); } else { - x_453 = x_448; + x_749 = x_744; } -lean_ctor_set(x_453, 0, x_446); -lean_ctor_set(x_453, 1, x_447); -x_454 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_454, 0, x_445); -lean_ctor_set(x_454, 1, x_453); -lean_ctor_set(x_28, 1, x_454); +lean_ctor_set(x_749, 0, x_742); +lean_ctor_set(x_749, 1, x_743); +if (lean_is_scalar(x_741)) { + x_750 = lean_alloc_ctor(0, 2, 0); +} else { + x_750 = x_741; +} +lean_ctor_set(x_750, 0, x_740); +lean_ctor_set(x_750, 1, x_749); +x_751 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_751, 0, x_739); +lean_ctor_set(x_751, 1, x_750); +lean_ctor_set(x_28, 1, x_751); lean_inc(x_2); -x_455 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_455, 0, x_2); -lean_ctor_set(x_455, 1, x_27); -x_456 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_456, 0, x_455); -x_18 = x_456; +x_752 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_752, 0, x_2); +lean_ctor_set(x_752, 1, x_27); +x_753 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_753, 0, x_752); +x_18 = x_753; x_19 = x_14; goto block_26; } else { -lean_object* x_457; lean_object* x_458; uint8_t 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; -if (lean_is_exclusive(x_32)) { - lean_ctor_release(x_32, 0); - lean_ctor_release(x_32, 1); - lean_ctor_release(x_32, 2); - x_457 = x_32; +lean_object* x_754; lean_object* x_755; uint8_t x_756; lean_object* x_757; lean_object* x_758; lean_object* x_759; lean_object* x_760; lean_object* x_761; lean_object* x_762; uint8_t x_763; +if (lean_is_exclusive(x_33)) { + lean_ctor_release(x_33, 0); + lean_ctor_release(x_33, 1); + lean_ctor_release(x_33, 2); + x_754 = x_33; } else { - lean_dec_ref(x_32); - x_457 = lean_box(0); + lean_dec_ref(x_33); + x_754 = lean_box(0); } -x_458 = lean_array_fget(x_449, x_450); -x_459 = lean_unbox(x_458); -lean_dec(x_458); -x_460 = lean_unsigned_to_nat(1u); -x_461 = lean_nat_add(x_450, x_460); -lean_dec(x_450); -if (lean_is_scalar(x_457)) { - x_462 = lean_alloc_ctor(0, 3, 0); +x_755 = lean_array_fget(x_745, x_746); +x_756 = lean_unbox(x_755); +lean_dec(x_755); +x_757 = lean_unsigned_to_nat(1u); +x_758 = lean_nat_add(x_746, x_757); +lean_dec(x_746); +if (lean_is_scalar(x_754)) { + x_759 = lean_alloc_ctor(0, 3, 0); } else { - x_462 = x_457; + x_759 = x_754; } -lean_ctor_set(x_462, 0, x_449); -lean_ctor_set(x_462, 1, x_461); -lean_ctor_set(x_462, 2, x_451); -lean_inc(x_17); -x_463 = l_Lean_Expr_app___override(x_445, x_17); -lean_inc(x_17); -x_464 = lean_array_push(x_446, x_17); -x_465 = l_Lean_Expr_bindingBody_x21(x_447); -lean_dec(x_447); -x_466 = lean_box(x_459); -switch (lean_obj_tag(x_466)) { -case 1: -{ -lean_object* x_467; lean_object* x_468; +lean_ctor_set(x_759, 0, x_745); +lean_ctor_set(x_759, 1, x_758); +lean_ctor_set(x_759, 2, x_747); +x_760 = lean_ctor_get(x_36, 0); +lean_inc(x_760); +x_761 = lean_ctor_get(x_36, 1); +lean_inc(x_761); +x_762 = lean_ctor_get(x_36, 2); +lean_inc(x_762); +x_763 = lean_nat_dec_lt(x_761, x_762); +if (x_763 == 0) +{ +lean_object* x_764; lean_object* x_765; lean_object* x_766; lean_object* x_767; lean_object* x_768; +lean_dec(x_762); +lean_dec(x_761); +lean_dec(x_760); lean_dec(x_17); -x_467 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__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); -lean_inc(x_7); -x_468 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_467, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_468) == 0) -{ -lean_object* x_469; lean_object* x_470; lean_object* x_471; lean_object* x_472; lean_object* x_473; -x_469 = lean_ctor_get(x_468, 1); -lean_inc(x_469); -lean_dec(x_468); -if (lean_is_scalar(x_448)) { - x_470 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_744)) { + x_764 = lean_alloc_ctor(0, 2, 0); } else { - x_470 = x_448; + x_764 = x_744; } -lean_ctor_set(x_470, 0, x_464); -lean_ctor_set(x_470, 1, x_465); -x_471 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_471, 0, x_463); -lean_ctor_set(x_471, 1, x_470); -lean_ctor_set(x_28, 1, x_471); -lean_ctor_set(x_27, 0, x_462); +lean_ctor_set(x_764, 0, x_742); +lean_ctor_set(x_764, 1, x_743); +if (lean_is_scalar(x_741)) { + x_765 = lean_alloc_ctor(0, 2, 0); +} else { + x_765 = x_741; +} +lean_ctor_set(x_765, 0, x_740); +lean_ctor_set(x_765, 1, x_764); +x_766 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_766, 0, x_739); +lean_ctor_set(x_766, 1, x_765); +lean_ctor_set(x_28, 1, x_766); +lean_ctor_set(x_28, 0, x_759); lean_inc(x_2); -x_472 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_472, 0, x_2); -lean_ctor_set(x_472, 1, x_27); -x_473 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_473, 0, x_472); -x_18 = x_473; -x_19 = x_469; +x_767 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_767, 0, x_2); +lean_ctor_set(x_767, 1, x_27); +x_768 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_768, 0, x_767); +x_18 = x_768; +x_19 = x_14; goto block_26; } else { -lean_object* x_474; lean_object* x_475; lean_object* x_476; lean_object* x_477; -lean_dec(x_465); -lean_dec(x_464); -lean_dec(x_463); -lean_dec(x_462); -lean_dec(x_448); -lean_free_object(x_28); -lean_dec(x_35); -lean_free_object(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_2); -x_474 = lean_ctor_get(x_468, 0); -lean_inc(x_474); -x_475 = lean_ctor_get(x_468, 1); -lean_inc(x_475); -if (lean_is_exclusive(x_468)) { - lean_ctor_release(x_468, 0); - lean_ctor_release(x_468, 1); - x_476 = x_468; +lean_object* x_769; lean_object* x_770; lean_object* x_771; lean_object* x_772; lean_object* x_773; lean_object* x_774; lean_object* x_775; +if (lean_is_exclusive(x_36)) { + lean_ctor_release(x_36, 0); + lean_ctor_release(x_36, 1); + lean_ctor_release(x_36, 2); + x_769 = x_36; +} else { + lean_dec_ref(x_36); + x_769 = lean_box(0); +} +x_770 = lean_array_fget(x_760, x_761); +x_771 = lean_nat_add(x_761, x_757); +lean_dec(x_761); +if (lean_is_scalar(x_769)) { + x_772 = lean_alloc_ctor(0, 3, 0); } else { - lean_dec_ref(x_468); - x_476 = lean_box(0); + x_772 = x_769; } -if (lean_is_scalar(x_476)) { - x_477 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_772, 0, x_760); +lean_ctor_set(x_772, 1, x_771); +lean_ctor_set(x_772, 2, x_762); +lean_inc(x_17); +x_773 = l_Lean_Expr_app___override(x_740, x_17); +x_774 = l_Lean_Expr_bindingBody_x21(x_743); +lean_dec(x_743); +x_775 = lean_box(x_756); +switch (lean_obj_tag(x_775)) { +case 0: +{ +lean_object* x_776; lean_object* x_777; lean_object* x_778; lean_object* x_779; lean_object* x_780; lean_object* x_781; +lean_dec(x_17); +x_776 = lean_array_push(x_742, x_770); +if (lean_is_scalar(x_744)) { + x_777 = lean_alloc_ctor(0, 2, 0); } else { - x_477 = x_476; + x_777 = x_744; } -lean_ctor_set(x_477, 0, x_474); -lean_ctor_set(x_477, 1, x_475); -return x_477; +lean_ctor_set(x_777, 0, x_776); +lean_ctor_set(x_777, 1, x_774); +if (lean_is_scalar(x_741)) { + x_778 = lean_alloc_ctor(0, 2, 0); +} else { + x_778 = x_741; } +lean_ctor_set(x_778, 0, x_773); +lean_ctor_set(x_778, 1, x_777); +x_779 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_779, 0, x_739); +lean_ctor_set(x_779, 1, x_778); +lean_ctor_set(x_28, 1, x_779); +lean_ctor_set(x_28, 0, x_759); +lean_ctor_set(x_27, 0, x_772); +lean_inc(x_2); +x_780 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_780, 0, x_2); +lean_ctor_set(x_780, 1, x_27); +x_781 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_781, 0, x_780); +x_18 = x_781; +x_19 = x_14; +goto block_26; } case 2: { -lean_object* x_478; uint8_t x_479; -x_478 = lean_array_get_size(x_1); -x_479 = lean_nat_dec_lt(x_35, x_478); -lean_dec(x_478); -if (x_479 == 0) -{ -lean_object* x_480; lean_object* x_481; lean_object* x_482; -x_480 = l_Lean_Meta_Simp_instInhabitedResult; -x_481 = l___private_Init_GetElem_0__outOfBounds___rarg(x_480); +lean_object* x_782; lean_object* x_783; uint8_t x_784; +lean_dec(x_770); +lean_inc(x_17); +x_782 = lean_array_push(x_742, x_17); +x_783 = lean_array_get_size(x_1); +x_784 = lean_nat_dec_lt(x_739, x_783); +lean_dec(x_783); +if (x_784 == 0) +{ +lean_object* x_785; lean_object* x_786; lean_object* x_787; +x_785 = l_Lean_Meta_Simp_instInhabitedResult; +x_786 = l___private_Init_GetElem_0__outOfBounds___rarg(x_785); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_481); -x_482 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_481, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_482) == 0) -{ -lean_object* x_483; 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; -x_483 = lean_ctor_get(x_482, 0); -lean_inc(x_483); -x_484 = lean_ctor_get(x_482, 1); -lean_inc(x_484); -lean_dec(x_482); -x_485 = lean_nat_add(x_35, x_460); -lean_dec(x_35); -x_486 = lean_ctor_get(x_481, 0); -lean_inc(x_486); -lean_dec(x_481); -lean_inc(x_483); -lean_inc(x_486); -x_487 = l_Lean_mkAppB(x_463, x_486, x_483); -x_488 = lean_array_push(x_464, x_486); -x_489 = lean_array_push(x_488, x_483); -x_490 = l_Lean_Expr_bindingBody_x21(x_465); -lean_dec(x_465); -x_491 = l_Lean_Expr_bindingBody_x21(x_490); -lean_dec(x_490); -if (lean_is_scalar(x_448)) { - x_492 = lean_alloc_ctor(0, 2, 0); -} else { - x_492 = x_448; -} -lean_ctor_set(x_492, 0, x_489); -lean_ctor_set(x_492, 1, x_491); -x_493 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_493, 0, x_487); -lean_ctor_set(x_493, 1, x_492); -lean_ctor_set(x_28, 1, x_493); -lean_ctor_set(x_28, 0, x_485); -lean_ctor_set(x_27, 0, x_462); +lean_inc(x_786); +x_787 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_786, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_787) == 0) +{ +lean_object* x_788; lean_object* x_789; lean_object* x_790; lean_object* x_791; lean_object* x_792; lean_object* x_793; lean_object* x_794; 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; +x_788 = lean_ctor_get(x_787, 0); +lean_inc(x_788); +x_789 = lean_ctor_get(x_787, 1); +lean_inc(x_789); +lean_dec(x_787); +x_790 = lean_nat_add(x_739, x_757); +lean_dec(x_739); +x_791 = lean_ctor_get(x_786, 0); +lean_inc(x_791); +lean_dec(x_786); +lean_inc(x_788); +lean_inc(x_791); +x_792 = l_Lean_mkAppB(x_773, x_791, x_788); +x_793 = lean_array_push(x_782, x_791); +x_794 = lean_array_push(x_793, x_788); +x_795 = l_Lean_Expr_bindingBody_x21(x_774); +lean_dec(x_774); +x_796 = l_Lean_Expr_bindingBody_x21(x_795); +lean_dec(x_795); +if (lean_is_scalar(x_744)) { + x_797 = lean_alloc_ctor(0, 2, 0); +} else { + x_797 = x_744; +} +lean_ctor_set(x_797, 0, x_794); +lean_ctor_set(x_797, 1, x_796); +if (lean_is_scalar(x_741)) { + x_798 = lean_alloc_ctor(0, 2, 0); +} else { + x_798 = x_741; +} +lean_ctor_set(x_798, 0, x_792); +lean_ctor_set(x_798, 1, x_797); +x_799 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_799, 0, x_790); +lean_ctor_set(x_799, 1, x_798); +lean_ctor_set(x_28, 1, x_799); +lean_ctor_set(x_28, 0, x_759); +lean_ctor_set(x_27, 0, x_772); lean_inc(x_2); -x_494 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_494, 0, x_2); -lean_ctor_set(x_494, 1, x_27); -x_495 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_495, 0, x_494); -x_18 = x_495; -x_19 = x_484; +x_800 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_800, 0, x_2); +lean_ctor_set(x_800, 1, x_27); +x_801 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_801, 0, x_800); +x_18 = x_801; +x_19 = x_789; goto block_26; } else { -lean_object* x_496; lean_object* x_497; lean_object* x_498; lean_object* x_499; -lean_dec(x_481); -lean_dec(x_465); -lean_dec(x_464); -lean_dec(x_463); -lean_dec(x_462); -lean_dec(x_448); -lean_free_object(x_28); -lean_dec(x_35); +lean_object* x_802; lean_object* x_803; lean_object* x_804; lean_object* x_805; +lean_dec(x_786); +lean_dec(x_782); +lean_dec(x_774); +lean_dec(x_773); +lean_dec(x_772); +lean_dec(x_759); +lean_dec(x_744); +lean_dec(x_741); +lean_dec(x_739); lean_free_object(x_27); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -20530,95 +24699,104 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_496 = lean_ctor_get(x_482, 0); -lean_inc(x_496); -x_497 = lean_ctor_get(x_482, 1); -lean_inc(x_497); -if (lean_is_exclusive(x_482)) { - lean_ctor_release(x_482, 0); - lean_ctor_release(x_482, 1); - x_498 = x_482; +x_802 = lean_ctor_get(x_787, 0); +lean_inc(x_802); +x_803 = lean_ctor_get(x_787, 1); +lean_inc(x_803); +if (lean_is_exclusive(x_787)) { + lean_ctor_release(x_787, 0); + lean_ctor_release(x_787, 1); + x_804 = x_787; } else { - lean_dec_ref(x_482); - x_498 = lean_box(0); + lean_dec_ref(x_787); + x_804 = lean_box(0); } -if (lean_is_scalar(x_498)) { - x_499 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_804)) { + x_805 = lean_alloc_ctor(1, 2, 0); } else { - x_499 = x_498; + x_805 = x_804; } -lean_ctor_set(x_499, 0, x_496); -lean_ctor_set(x_499, 1, x_497); -return x_499; +lean_ctor_set(x_805, 0, x_802); +lean_ctor_set(x_805, 1, x_803); +return x_805; } } else { -lean_object* x_500; lean_object* x_501; -x_500 = lean_array_fget(x_1, x_35); +lean_object* x_806; lean_object* x_807; +x_806 = lean_array_fget(x_1, x_739); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_500); -x_501 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_500, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_501) == 0) +lean_inc(x_806); +x_807 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_806, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_807) == 0) { -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; -x_502 = lean_ctor_get(x_501, 0); -lean_inc(x_502); -x_503 = lean_ctor_get(x_501, 1); -lean_inc(x_503); -lean_dec(x_501); -x_504 = lean_nat_add(x_35, x_460); -lean_dec(x_35); -x_505 = lean_ctor_get(x_500, 0); -lean_inc(x_505); -lean_dec(x_500); -lean_inc(x_502); -lean_inc(x_505); -x_506 = l_Lean_mkAppB(x_463, x_505, x_502); -x_507 = lean_array_push(x_464, x_505); -x_508 = lean_array_push(x_507, x_502); -x_509 = l_Lean_Expr_bindingBody_x21(x_465); -lean_dec(x_465); -x_510 = l_Lean_Expr_bindingBody_x21(x_509); -lean_dec(x_509); -if (lean_is_scalar(x_448)) { - x_511 = lean_alloc_ctor(0, 2, 0); -} else { - x_511 = x_448; -} -lean_ctor_set(x_511, 0, x_508); -lean_ctor_set(x_511, 1, x_510); -x_512 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_512, 0, x_506); -lean_ctor_set(x_512, 1, x_511); -lean_ctor_set(x_28, 1, x_512); -lean_ctor_set(x_28, 0, x_504); -lean_ctor_set(x_27, 0, x_462); +lean_object* x_808; lean_object* x_809; lean_object* x_810; lean_object* x_811; lean_object* x_812; lean_object* x_813; 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_object* x_820; lean_object* x_821; +x_808 = lean_ctor_get(x_807, 0); +lean_inc(x_808); +x_809 = lean_ctor_get(x_807, 1); +lean_inc(x_809); +lean_dec(x_807); +x_810 = lean_nat_add(x_739, x_757); +lean_dec(x_739); +x_811 = lean_ctor_get(x_806, 0); +lean_inc(x_811); +lean_dec(x_806); +lean_inc(x_808); +lean_inc(x_811); +x_812 = l_Lean_mkAppB(x_773, x_811, x_808); +x_813 = lean_array_push(x_782, x_811); +x_814 = lean_array_push(x_813, x_808); +x_815 = l_Lean_Expr_bindingBody_x21(x_774); +lean_dec(x_774); +x_816 = l_Lean_Expr_bindingBody_x21(x_815); +lean_dec(x_815); +if (lean_is_scalar(x_744)) { + x_817 = lean_alloc_ctor(0, 2, 0); +} else { + x_817 = x_744; +} +lean_ctor_set(x_817, 0, x_814); +lean_ctor_set(x_817, 1, x_816); +if (lean_is_scalar(x_741)) { + x_818 = lean_alloc_ctor(0, 2, 0); +} else { + x_818 = x_741; +} +lean_ctor_set(x_818, 0, x_812); +lean_ctor_set(x_818, 1, x_817); +x_819 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_819, 0, x_810); +lean_ctor_set(x_819, 1, x_818); +lean_ctor_set(x_28, 1, x_819); +lean_ctor_set(x_28, 0, x_759); +lean_ctor_set(x_27, 0, x_772); lean_inc(x_2); -x_513 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_513, 0, x_2); -lean_ctor_set(x_513, 1, x_27); -x_514 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_514, 0, x_513); -x_18 = x_514; -x_19 = x_503; +x_820 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_820, 0, x_2); +lean_ctor_set(x_820, 1, x_27); +x_821 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_821, 0, x_820); +x_18 = x_821; +x_19 = x_809; goto block_26; } else { -lean_object* x_515; lean_object* x_516; lean_object* x_517; lean_object* x_518; -lean_dec(x_500); -lean_dec(x_465); -lean_dec(x_464); -lean_dec(x_463); -lean_dec(x_462); -lean_dec(x_448); -lean_free_object(x_28); -lean_dec(x_35); +lean_object* x_822; lean_object* x_823; lean_object* x_824; lean_object* x_825; +lean_dec(x_806); +lean_dec(x_782); +lean_dec(x_774); +lean_dec(x_773); +lean_dec(x_772); +lean_dec(x_759); +lean_dec(x_744); +lean_dec(x_741); +lean_dec(x_739); lean_free_object(x_27); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -20627,274 +24805,232 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_515 = lean_ctor_get(x_501, 0); -lean_inc(x_515); -x_516 = lean_ctor_get(x_501, 1); -lean_inc(x_516); -if (lean_is_exclusive(x_501)) { - lean_ctor_release(x_501, 0); - lean_ctor_release(x_501, 1); - x_517 = x_501; +x_822 = lean_ctor_get(x_807, 0); +lean_inc(x_822); +x_823 = lean_ctor_get(x_807, 1); +lean_inc(x_823); +if (lean_is_exclusive(x_807)) { + lean_ctor_release(x_807, 0); + lean_ctor_release(x_807, 1); + x_824 = x_807; } else { - lean_dec_ref(x_501); - x_517 = lean_box(0); + lean_dec_ref(x_807); + x_824 = lean_box(0); } -if (lean_is_scalar(x_517)) { - x_518 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_824)) { + x_825 = lean_alloc_ctor(1, 2, 0); } else { - x_518 = x_517; + x_825 = x_824; } -lean_ctor_set(x_518, 0, x_515); -lean_ctor_set(x_518, 1, x_516); -return x_518; +lean_ctor_set(x_825, 0, x_822); +lean_ctor_set(x_825, 1, x_823); +return x_825; } } } -case 4: -{ -lean_object* x_519; lean_object* x_520; -lean_dec(x_17); -x_519 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__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); -lean_inc(x_7); -x_520 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_519, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_520) == 0) +case 3: { -lean_object* x_521; lean_object* x_522; lean_object* x_523; lean_object* x_524; lean_object* x_525; -x_521 = lean_ctor_get(x_520, 1); -lean_inc(x_521); -lean_dec(x_520); -if (lean_is_scalar(x_448)) { - x_522 = lean_alloc_ctor(0, 2, 0); -} else { - x_522 = x_448; -} -lean_ctor_set(x_522, 0, x_464); -lean_ctor_set(x_522, 1, x_465); -x_523 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_523, 0, x_463); -lean_ctor_set(x_523, 1, x_522); -lean_ctor_set(x_28, 1, x_523); -lean_ctor_set(x_27, 0, x_462); +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_dec(x_770); +x_826 = lean_array_push(x_742, x_17); +if (lean_is_scalar(x_744)) { + x_827 = lean_alloc_ctor(0, 2, 0); +} else { + x_827 = x_744; +} +lean_ctor_set(x_827, 0, x_826); +lean_ctor_set(x_827, 1, x_774); +if (lean_is_scalar(x_741)) { + x_828 = lean_alloc_ctor(0, 2, 0); +} else { + x_828 = x_741; +} +lean_ctor_set(x_828, 0, x_773); +lean_ctor_set(x_828, 1, x_827); +x_829 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_829, 0, x_739); +lean_ctor_set(x_829, 1, x_828); +lean_ctor_set(x_28, 1, x_829); +lean_ctor_set(x_28, 0, x_759); +lean_ctor_set(x_27, 0, x_772); lean_inc(x_2); -x_524 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_524, 0, x_2); -lean_ctor_set(x_524, 1, x_27); -x_525 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_525, 0, x_524); -x_18 = x_525; -x_19 = x_521; +x_830 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_830, 0, x_2); +lean_ctor_set(x_830, 1, x_27); +x_831 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_831, 0, x_830); +x_18 = x_831; +x_19 = x_14; goto block_26; } -else -{ -lean_object* x_526; lean_object* x_527; lean_object* x_528; lean_object* x_529; -lean_dec(x_465); -lean_dec(x_464); -lean_dec(x_463); -lean_dec(x_462); -lean_dec(x_448); -lean_free_object(x_28); -lean_dec(x_35); -lean_free_object(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_2); -x_526 = lean_ctor_get(x_520, 0); -lean_inc(x_526); -x_527 = lean_ctor_get(x_520, 1); -lean_inc(x_527); -if (lean_is_exclusive(x_520)) { - lean_ctor_release(x_520, 0); - lean_ctor_release(x_520, 1); - x_528 = x_520; -} else { - lean_dec_ref(x_520); - x_528 = lean_box(0); -} -if (lean_is_scalar(x_528)) { - x_529 = lean_alloc_ctor(1, 2, 0); -} else { - x_529 = x_528; -} -lean_ctor_set(x_529, 0, x_526); -lean_ctor_set(x_529, 1, x_527); -return x_529; -} -} case 5: { -lean_object* x_530; lean_object* x_531; lean_object* x_532; -lean_dec(x_448); -lean_free_object(x_28); +lean_object* x_832; lean_object* x_833; lean_object* x_834; lean_object* x_835; +lean_dec(x_770); +lean_dec(x_744); +lean_dec(x_741); lean_free_object(x_27); -x_530 = l_Lean_Expr_bindingDomain_x21(x_465); -x_531 = lean_expr_instantiate_rev(x_530, x_464); -lean_dec(x_530); +lean_free_object(x_28); +lean_inc(x_17); +x_832 = lean_array_push(x_742, x_17); +x_833 = l_Lean_Expr_bindingDomain_x21(x_774); +x_834 = lean_expr_instantiate_rev(x_833, x_832); +lean_dec(x_833); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_17); -x_532 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_532) == 0) -{ -lean_object* x_533; lean_object* x_534; lean_object* x_535; -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_835 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_835) == 0) +{ +lean_object* x_836; lean_object* x_837; lean_object* x_838; +x_836 = lean_ctor_get(x_835, 0); +lean_inc(x_836); +x_837 = lean_ctor_get(x_835, 1); +lean_inc(x_837); +lean_dec(x_835); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_531); -x_535 = l_Lean_Meta_isExprDefEq(x_533, x_531, x_10, x_11, x_12, x_13, x_534); -if (lean_obj_tag(x_535) == 0) +lean_inc(x_834); +x_838 = l_Lean_Meta_isExprDefEq(x_836, x_834, x_10, x_11, x_12, x_13, x_837); +if (lean_obj_tag(x_838) == 0) { -lean_object* x_536; uint8_t x_537; -x_536 = lean_ctor_get(x_535, 0); -lean_inc(x_536); -x_537 = lean_unbox(x_536); -lean_dec(x_536); -if (x_537 == 0) +lean_object* x_839; uint8_t x_840; +x_839 = lean_ctor_get(x_838, 0); +lean_inc(x_839); +x_840 = lean_unbox(x_839); +lean_dec(x_839); +if (x_840 == 0) { -lean_object* x_538; lean_object* x_539; lean_object* x_540; +lean_object* x_841; lean_object* x_842; lean_object* x_843; lean_dec(x_17); -x_538 = lean_ctor_get(x_535, 1); -lean_inc(x_538); -lean_dec(x_535); -x_539 = lean_box(0); +x_841 = lean_ctor_get(x_838, 1); +lean_inc(x_841); +lean_dec(x_838); +x_842 = lean_box(0); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_531); -x_540 = l_Lean_Meta_trySynthInstance(x_531, x_539, x_10, x_11, x_12, x_13, x_538); -if (lean_obj_tag(x_540) == 0) -{ -lean_object* x_541; -x_541 = lean_ctor_get(x_540, 0); -lean_inc(x_541); -if (lean_obj_tag(x_541) == 1) -{ -lean_object* x_542; lean_object* x_543; lean_object* x_544; lean_object* x_545; lean_object* x_546; -lean_dec(x_531); -x_542 = lean_ctor_get(x_540, 1); -lean_inc(x_542); -lean_dec(x_540); -x_543 = lean_ctor_get(x_541, 0); -lean_inc(x_543); -lean_dec(x_541); +lean_inc(x_834); +x_843 = l_Lean_Meta_trySynthInstance(x_834, x_842, x_10, x_11, x_12, x_13, x_841); +if (lean_obj_tag(x_843) == 0) +{ +lean_object* x_844; +x_844 = lean_ctor_get(x_843, 0); +lean_inc(x_844); +if (lean_obj_tag(x_844) == 1) +{ +lean_object* x_845; lean_object* x_846; lean_object* x_847; lean_object* x_848; lean_object* x_849; +lean_dec(x_834); +x_845 = lean_ctor_get(x_843, 1); +lean_inc(x_845); +lean_dec(x_843); +x_846 = lean_ctor_get(x_844, 0); +lean_inc(x_846); +lean_dec(x_844); lean_inc(x_2); -x_544 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_35, x_462, x_2, x_463, x_464, x_465, x_543, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_542); -lean_dec(x_465); -x_545 = lean_ctor_get(x_544, 0); -lean_inc(x_545); -x_546 = lean_ctor_get(x_544, 1); -lean_inc(x_546); -lean_dec(x_544); -x_18 = x_545; -x_19 = x_546; +x_847 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_739, x_759, x_772, x_2, x_773, x_832, x_774, x_846, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_845); +lean_dec(x_774); +x_848 = lean_ctor_get(x_847, 0); +lean_inc(x_848); +x_849 = lean_ctor_get(x_847, 1); +lean_inc(x_849); +lean_dec(x_847); +x_18 = x_848; +x_19 = x_849; goto block_26; } else { -lean_object* x_547; lean_object* x_548; lean_object* x_549; lean_object* x_550; uint8_t x_551; -lean_dec(x_541); -x_547 = lean_ctor_get(x_540, 1); -lean_inc(x_547); -lean_dec(x_540); -x_548 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; -x_549 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_548, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_547); -x_550 = lean_ctor_get(x_549, 0); -lean_inc(x_550); -x_551 = lean_unbox(x_550); -lean_dec(x_550); -if (x_551 == 0) -{ -lean_object* x_552; lean_object* x_553; lean_object* x_554; lean_object* x_555; lean_object* x_556; -lean_dec(x_531); -x_552 = lean_ctor_get(x_549, 1); -lean_inc(x_552); -lean_dec(x_549); -x_553 = lean_box(0); -x_554 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_539, x_464, x_465, x_463, x_35, x_462, x_553, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_552); -x_555 = lean_ctor_get(x_554, 0); -lean_inc(x_555); -x_556 = lean_ctor_get(x_554, 1); -lean_inc(x_556); -lean_dec(x_554); -x_18 = x_555; -x_19 = x_556; +lean_object* x_850; lean_object* x_851; lean_object* x_852; lean_object* x_853; uint8_t x_854; +lean_dec(x_844); +x_850 = lean_ctor_get(x_843, 1); +lean_inc(x_850); +lean_dec(x_843); +x_851 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; +x_852 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_851, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_850); +x_853 = lean_ctor_get(x_852, 0); +lean_inc(x_853); +x_854 = lean_unbox(x_853); +lean_dec(x_853); +if (x_854 == 0) +{ +lean_object* x_855; lean_object* x_856; lean_object* x_857; lean_object* x_858; lean_object* x_859; +lean_dec(x_834); +x_855 = lean_ctor_get(x_852, 1); +lean_inc(x_855); +lean_dec(x_852); +x_856 = lean_box(0); +x_857 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_842, x_832, x_774, x_773, x_739, x_759, x_772, x_856, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_855); +x_858 = lean_ctor_get(x_857, 0); +lean_inc(x_858); +x_859 = lean_ctor_get(x_857, 1); +lean_inc(x_859); +lean_dec(x_857); +x_18 = x_858; +x_19 = x_859; goto block_26; } else { -lean_object* x_557; lean_object* x_558; 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_object* x_567; lean_object* x_568; lean_object* x_569; -x_557 = lean_ctor_get(x_549, 1); -lean_inc(x_557); -if (lean_is_exclusive(x_549)) { - lean_ctor_release(x_549, 0); - lean_ctor_release(x_549, 1); - x_558 = x_549; +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; +x_860 = lean_ctor_get(x_852, 1); +lean_inc(x_860); +if (lean_is_exclusive(x_852)) { + lean_ctor_release(x_852, 0); + lean_ctor_release(x_852, 1); + x_861 = x_852; } else { - lean_dec_ref(x_549); - x_558 = lean_box(0); -} -x_559 = l_Lean_indentExpr(x_531); -x_560 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; -if (lean_is_scalar(x_558)) { - x_561 = lean_alloc_ctor(7, 2, 0); -} else { - x_561 = x_558; - lean_ctor_set_tag(x_561, 7); -} -lean_ctor_set(x_561, 0, x_560); -lean_ctor_set(x_561, 1, x_559); -x_562 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; -x_563 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_563, 0, x_561); -lean_ctor_set(x_563, 1, x_562); -x_564 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_548, x_563, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_557); -x_565 = lean_ctor_get(x_564, 0); -lean_inc(x_565); -x_566 = lean_ctor_get(x_564, 1); -lean_inc(x_566); -lean_dec(x_564); -x_567 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_539, x_464, x_465, x_463, x_35, x_462, x_565, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_566); -lean_dec(x_565); -x_568 = lean_ctor_get(x_567, 0); -lean_inc(x_568); -x_569 = lean_ctor_get(x_567, 1); -lean_inc(x_569); -lean_dec(x_567); -x_18 = x_568; -x_19 = x_569; + lean_dec_ref(x_852); + x_861 = lean_box(0); +} +x_862 = l_Lean_indentExpr(x_834); +x_863 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; +if (lean_is_scalar(x_861)) { + x_864 = lean_alloc_ctor(7, 2, 0); +} else { + x_864 = x_861; + lean_ctor_set_tag(x_864, 7); +} +lean_ctor_set(x_864, 0, x_863); +lean_ctor_set(x_864, 1, x_862); +x_865 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; +x_866 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_866, 0, x_864); +lean_ctor_set(x_866, 1, x_865); +x_867 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_851, x_866, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_860); +x_868 = lean_ctor_get(x_867, 0); +lean_inc(x_868); +x_869 = lean_ctor_get(x_867, 1); +lean_inc(x_869); +lean_dec(x_867); +x_870 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_842, x_832, x_774, x_773, x_739, x_759, x_772, x_868, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_869); +lean_dec(x_868); +x_871 = lean_ctor_get(x_870, 0); +lean_inc(x_871); +x_872 = lean_ctor_get(x_870, 1); +lean_inc(x_872); +lean_dec(x_870); +x_18 = x_871; +x_19 = x_872; goto block_26; } } } else { -lean_object* x_570; lean_object* x_571; lean_object* x_572; lean_object* x_573; -lean_dec(x_531); -lean_dec(x_465); -lean_dec(x_464); -lean_dec(x_463); -lean_dec(x_462); -lean_dec(x_35); +lean_object* x_873; lean_object* x_874; lean_object* x_875; lean_object* x_876; +lean_dec(x_834); +lean_dec(x_832); +lean_dec(x_774); +lean_dec(x_773); +lean_dec(x_772); +lean_dec(x_759); +lean_dec(x_739); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -20903,57 +25039,58 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_570 = lean_ctor_get(x_540, 0); -lean_inc(x_570); -x_571 = lean_ctor_get(x_540, 1); -lean_inc(x_571); -if (lean_is_exclusive(x_540)) { - lean_ctor_release(x_540, 0); - lean_ctor_release(x_540, 1); - x_572 = x_540; -} else { - lean_dec_ref(x_540); - x_572 = lean_box(0); +x_873 = lean_ctor_get(x_843, 0); +lean_inc(x_873); +x_874 = lean_ctor_get(x_843, 1); +lean_inc(x_874); +if (lean_is_exclusive(x_843)) { + lean_ctor_release(x_843, 0); + lean_ctor_release(x_843, 1); + x_875 = x_843; +} else { + lean_dec_ref(x_843); + x_875 = lean_box(0); } -if (lean_is_scalar(x_572)) { - x_573 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_875)) { + x_876 = lean_alloc_ctor(1, 2, 0); } else { - x_573 = x_572; + x_876 = x_875; } -lean_ctor_set(x_573, 0, x_570); -lean_ctor_set(x_573, 1, x_571); -return x_573; +lean_ctor_set(x_876, 0, x_873); +lean_ctor_set(x_876, 1, x_874); +return x_876; } } else { -lean_object* x_574; lean_object* x_575; lean_object* x_576; lean_object* x_577; -lean_dec(x_531); -x_574 = lean_ctor_get(x_535, 1); -lean_inc(x_574); -lean_dec(x_535); +lean_object* x_877; lean_object* x_878; lean_object* x_879; lean_object* x_880; +lean_dec(x_834); +x_877 = lean_ctor_get(x_838, 1); +lean_inc(x_877); +lean_dec(x_838); lean_inc(x_2); -x_575 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_35, x_462, x_2, x_463, x_464, x_465, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_574); -lean_dec(x_465); -x_576 = lean_ctor_get(x_575, 0); -lean_inc(x_576); -x_577 = lean_ctor_get(x_575, 1); -lean_inc(x_577); -lean_dec(x_575); -x_18 = x_576; -x_19 = x_577; +x_878 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_739, x_759, x_772, x_2, x_773, x_832, x_774, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_877); +lean_dec(x_774); +x_879 = lean_ctor_get(x_878, 0); +lean_inc(x_879); +x_880 = lean_ctor_get(x_878, 1); +lean_inc(x_880); +lean_dec(x_878); +x_18 = x_879; +x_19 = x_880; goto block_26; } } else { -lean_object* x_578; lean_object* x_579; lean_object* x_580; lean_object* x_581; -lean_dec(x_531); -lean_dec(x_465); -lean_dec(x_464); -lean_dec(x_463); -lean_dec(x_462); -lean_dec(x_35); +lean_object* x_881; lean_object* x_882; lean_object* x_883; lean_object* x_884; +lean_dec(x_834); +lean_dec(x_832); +lean_dec(x_774); +lean_dec(x_773); +lean_dec(x_772); +lean_dec(x_759); +lean_dec(x_739); lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); @@ -20963,37 +25100,38 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_578 = lean_ctor_get(x_535, 0); -lean_inc(x_578); -x_579 = lean_ctor_get(x_535, 1); -lean_inc(x_579); -if (lean_is_exclusive(x_535)) { - lean_ctor_release(x_535, 0); - lean_ctor_release(x_535, 1); - x_580 = x_535; +x_881 = lean_ctor_get(x_838, 0); +lean_inc(x_881); +x_882 = lean_ctor_get(x_838, 1); +lean_inc(x_882); +if (lean_is_exclusive(x_838)) { + lean_ctor_release(x_838, 0); + lean_ctor_release(x_838, 1); + x_883 = x_838; } else { - lean_dec_ref(x_535); - x_580 = lean_box(0); + lean_dec_ref(x_838); + x_883 = lean_box(0); } -if (lean_is_scalar(x_580)) { - x_581 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_883)) { + x_884 = lean_alloc_ctor(1, 2, 0); } else { - x_581 = x_580; + x_884 = x_883; } -lean_ctor_set(x_581, 0, x_578); -lean_ctor_set(x_581, 1, x_579); -return x_581; +lean_ctor_set(x_884, 0, x_881); +lean_ctor_set(x_884, 1, x_882); +return x_884; } } else { -lean_object* x_582; lean_object* x_583; lean_object* x_584; lean_object* x_585; -lean_dec(x_531); -lean_dec(x_465); -lean_dec(x_464); -lean_dec(x_463); -lean_dec(x_462); -lean_dec(x_35); +lean_object* x_885; lean_object* x_886; lean_object* x_887; lean_object* x_888; +lean_dec(x_834); +lean_dec(x_832); +lean_dec(x_774); +lean_dec(x_773); +lean_dec(x_772); +lean_dec(x_759); +lean_dec(x_739); lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); @@ -21003,435 +25141,452 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_582 = lean_ctor_get(x_532, 0); -lean_inc(x_582); -x_583 = lean_ctor_get(x_532, 1); -lean_inc(x_583); -if (lean_is_exclusive(x_532)) { - lean_ctor_release(x_532, 0); - lean_ctor_release(x_532, 1); - x_584 = x_532; +x_885 = lean_ctor_get(x_835, 0); +lean_inc(x_885); +x_886 = lean_ctor_get(x_835, 1); +lean_inc(x_886); +if (lean_is_exclusive(x_835)) { + lean_ctor_release(x_835, 0); + lean_ctor_release(x_835, 1); + x_887 = x_835; } else { - lean_dec_ref(x_532); - x_584 = lean_box(0); + lean_dec_ref(x_835); + x_887 = lean_box(0); } -if (lean_is_scalar(x_584)) { - x_585 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_887)) { + x_888 = lean_alloc_ctor(1, 2, 0); } else { - x_585 = x_584; + x_888 = x_887; } -lean_ctor_set(x_585, 0, x_582); -lean_ctor_set(x_585, 1, x_583); -return x_585; +lean_ctor_set(x_888, 0, x_885); +lean_ctor_set(x_888, 1, x_886); +return x_888; } } default: { -lean_object* x_586; lean_object* x_587; lean_object* x_588; lean_object* x_589; -lean_dec(x_466); +lean_object* x_889; lean_object* x_890; +lean_dec(x_775); +lean_dec(x_770); lean_dec(x_17); -if (lean_is_scalar(x_448)) { - x_586 = lean_alloc_ctor(0, 2, 0); -} else { - x_586 = x_448; -} -lean_ctor_set(x_586, 0, x_464); -lean_ctor_set(x_586, 1, x_465); -x_587 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_587, 0, x_463); -lean_ctor_set(x_587, 1, x_586); -lean_ctor_set(x_28, 1, x_587); -lean_ctor_set(x_27, 0, x_462); +x_889 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__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); +lean_inc(x_7); +x_890 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_889, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_890) == 0) +{ +lean_object* x_891; lean_object* x_892; lean_object* x_893; lean_object* x_894; lean_object* x_895; lean_object* x_896; +x_891 = lean_ctor_get(x_890, 1); +lean_inc(x_891); +lean_dec(x_890); +if (lean_is_scalar(x_744)) { + x_892 = lean_alloc_ctor(0, 2, 0); +} else { + x_892 = x_744; +} +lean_ctor_set(x_892, 0, x_742); +lean_ctor_set(x_892, 1, x_774); +if (lean_is_scalar(x_741)) { + x_893 = lean_alloc_ctor(0, 2, 0); +} else { + x_893 = x_741; +} +lean_ctor_set(x_893, 0, x_773); +lean_ctor_set(x_893, 1, x_892); +x_894 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_894, 0, x_739); +lean_ctor_set(x_894, 1, x_893); +lean_ctor_set(x_28, 1, x_894); +lean_ctor_set(x_28, 0, x_759); +lean_ctor_set(x_27, 0, x_772); lean_inc(x_2); -x_588 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_588, 0, x_2); -lean_ctor_set(x_588, 1, x_27); -x_589 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_589, 0, x_588); -x_18 = x_589; -x_19 = x_14; +x_895 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_895, 0, x_2); +lean_ctor_set(x_895, 1, x_27); +x_896 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_896, 0, x_895); +x_18 = x_896; +x_19 = x_891; goto block_26; } +else +{ +lean_object* x_897; lean_object* x_898; lean_object* x_899; lean_object* x_900; +lean_dec(x_774); +lean_dec(x_773); +lean_dec(x_772); +lean_dec(x_759); +lean_dec(x_744); +lean_dec(x_742); +lean_dec(x_741); +lean_dec(x_739); +lean_free_object(x_27); +lean_free_object(x_28); +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); +x_897 = lean_ctor_get(x_890, 0); +lean_inc(x_897); +x_898 = lean_ctor_get(x_890, 1); +lean_inc(x_898); +if (lean_is_exclusive(x_890)) { + lean_ctor_release(x_890, 0); + lean_ctor_release(x_890, 1); + x_899 = x_890; +} else { + lean_dec_ref(x_890); + x_899 = lean_box(0); +} +if (lean_is_scalar(x_899)) { + x_900 = lean_alloc_ctor(1, 2, 0); +} else { + x_900 = x_899; +} +lean_ctor_set(x_900, 0, x_897); +lean_ctor_set(x_900, 1, x_898); +return x_900; +} +} +} } } } } else { -lean_object* x_590; lean_object* x_591; lean_object* x_592; lean_object* x_593; lean_object* x_594; lean_object* x_595; lean_object* x_596; lean_object* x_597; lean_object* x_598; uint8_t x_599; -x_590 = lean_ctor_get(x_28, 0); -lean_inc(x_590); -lean_dec(x_28); -x_591 = lean_ctor_get(x_29, 0); -lean_inc(x_591); +lean_object* x_901; lean_object* x_902; lean_object* x_903; lean_object* x_904; lean_object* x_905; lean_object* x_906; lean_object* x_907; lean_object* x_908; lean_object* x_909; lean_object* x_910; lean_object* x_911; uint8_t x_912; +x_901 = lean_ctor_get(x_27, 0); +lean_inc(x_901); +lean_dec(x_27); +x_902 = lean_ctor_get(x_29, 0); +lean_inc(x_902); if (lean_is_exclusive(x_29)) { lean_ctor_release(x_29, 0); lean_ctor_release(x_29, 1); - x_592 = x_29; + x_903 = x_29; } else { lean_dec_ref(x_29); - x_592 = lean_box(0); + x_903 = lean_box(0); } -x_593 = lean_ctor_get(x_30, 0); -lean_inc(x_593); -x_594 = lean_ctor_get(x_30, 1); -lean_inc(x_594); +x_904 = lean_ctor_get(x_30, 0); +lean_inc(x_904); if (lean_is_exclusive(x_30)) { lean_ctor_release(x_30, 0); lean_ctor_release(x_30, 1); - x_595 = x_30; + x_905 = x_30; } else { lean_dec_ref(x_30); - x_595 = lean_box(0); -} -x_596 = lean_ctor_get(x_32, 0); -lean_inc(x_596); -x_597 = lean_ctor_get(x_32, 1); -lean_inc(x_597); -x_598 = lean_ctor_get(x_32, 2); -lean_inc(x_598); -x_599 = lean_nat_dec_lt(x_597, x_598); -if (x_599 == 0) -{ -lean_object* x_600; lean_object* x_601; lean_object* x_602; lean_object* x_603; lean_object* x_604; -lean_dec(x_598); -lean_dec(x_597); -lean_dec(x_596); + x_905 = lean_box(0); +} +x_906 = lean_ctor_get(x_31, 0); +lean_inc(x_906); +x_907 = lean_ctor_get(x_31, 1); +lean_inc(x_907); +if (lean_is_exclusive(x_31)) { + lean_ctor_release(x_31, 0); + lean_ctor_release(x_31, 1); + x_908 = x_31; +} else { + lean_dec_ref(x_31); + x_908 = lean_box(0); +} +x_909 = lean_ctor_get(x_33, 0); +lean_inc(x_909); +x_910 = lean_ctor_get(x_33, 1); +lean_inc(x_910); +x_911 = lean_ctor_get(x_33, 2); +lean_inc(x_911); +x_912 = lean_nat_dec_lt(x_910, x_911); +if (x_912 == 0) +{ +lean_object* x_913; lean_object* x_914; lean_object* x_915; lean_object* x_916; lean_object* x_917; lean_object* x_918; +lean_dec(x_911); +lean_dec(x_910); +lean_dec(x_909); lean_dec(x_17); -if (lean_is_scalar(x_595)) { - x_600 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_908)) { + x_913 = lean_alloc_ctor(0, 2, 0); +} else { + x_913 = x_908; +} +lean_ctor_set(x_913, 0, x_906); +lean_ctor_set(x_913, 1, x_907); +if (lean_is_scalar(x_905)) { + x_914 = lean_alloc_ctor(0, 2, 0); } else { - x_600 = x_595; + x_914 = x_905; } -lean_ctor_set(x_600, 0, x_593); -lean_ctor_set(x_600, 1, x_594); -if (lean_is_scalar(x_592)) { - x_601 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_914, 0, x_904); +lean_ctor_set(x_914, 1, x_913); +if (lean_is_scalar(x_903)) { + x_915 = lean_alloc_ctor(0, 2, 0); } else { - x_601 = x_592; + x_915 = x_903; } -lean_ctor_set(x_601, 0, x_591); -lean_ctor_set(x_601, 1, x_600); -x_602 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_602, 0, x_590); -lean_ctor_set(x_602, 1, x_601); -lean_ctor_set(x_27, 1, x_602); +lean_ctor_set(x_915, 0, x_902); +lean_ctor_set(x_915, 1, x_914); +lean_ctor_set(x_28, 1, x_915); +x_916 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_916, 0, x_901); +lean_ctor_set(x_916, 1, x_28); lean_inc(x_2); -x_603 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_603, 0, x_2); -lean_ctor_set(x_603, 1, x_27); -x_604 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_604, 0, x_603); -x_18 = x_604; +x_917 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_917, 0, x_2); +lean_ctor_set(x_917, 1, x_916); +x_918 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_918, 0, x_917); +x_18 = x_918; x_19 = x_14; goto block_26; } else { -lean_object* x_605; lean_object* x_606; uint8_t 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; -if (lean_is_exclusive(x_32)) { - lean_ctor_release(x_32, 0); - lean_ctor_release(x_32, 1); - lean_ctor_release(x_32, 2); - x_605 = x_32; +lean_object* x_919; lean_object* x_920; uint8_t x_921; lean_object* x_922; lean_object* x_923; lean_object* x_924; lean_object* x_925; lean_object* x_926; lean_object* x_927; uint8_t x_928; +if (lean_is_exclusive(x_33)) { + lean_ctor_release(x_33, 0); + lean_ctor_release(x_33, 1); + lean_ctor_release(x_33, 2); + x_919 = x_33; } else { - lean_dec_ref(x_32); - x_605 = lean_box(0); -} -x_606 = lean_array_fget(x_596, x_597); -x_607 = lean_unbox(x_606); -lean_dec(x_606); -x_608 = lean_unsigned_to_nat(1u); -x_609 = lean_nat_add(x_597, x_608); -lean_dec(x_597); -if (lean_is_scalar(x_605)) { - x_610 = lean_alloc_ctor(0, 3, 0); + lean_dec_ref(x_33); + x_919 = lean_box(0); +} +x_920 = lean_array_fget(x_909, x_910); +x_921 = lean_unbox(x_920); +lean_dec(x_920); +x_922 = lean_unsigned_to_nat(1u); +x_923 = lean_nat_add(x_910, x_922); +lean_dec(x_910); +if (lean_is_scalar(x_919)) { + x_924 = lean_alloc_ctor(0, 3, 0); +} else { + x_924 = x_919; +} +lean_ctor_set(x_924, 0, x_909); +lean_ctor_set(x_924, 1, x_923); +lean_ctor_set(x_924, 2, x_911); +x_925 = lean_ctor_get(x_901, 0); +lean_inc(x_925); +x_926 = lean_ctor_get(x_901, 1); +lean_inc(x_926); +x_927 = lean_ctor_get(x_901, 2); +lean_inc(x_927); +x_928 = lean_nat_dec_lt(x_926, x_927); +if (x_928 == 0) +{ +lean_object* x_929; lean_object* x_930; lean_object* x_931; lean_object* x_932; lean_object* x_933; lean_object* x_934; +lean_dec(x_927); +lean_dec(x_926); +lean_dec(x_925); +lean_dec(x_17); +if (lean_is_scalar(x_908)) { + x_929 = lean_alloc_ctor(0, 2, 0); } else { - x_610 = x_605; + x_929 = x_908; } -lean_ctor_set(x_610, 0, x_596); -lean_ctor_set(x_610, 1, x_609); -lean_ctor_set(x_610, 2, x_598); -lean_inc(x_17); -x_611 = l_Lean_Expr_app___override(x_591, x_17); -lean_inc(x_17); -x_612 = lean_array_push(x_593, x_17); -x_613 = l_Lean_Expr_bindingBody_x21(x_594); -lean_dec(x_594); -x_614 = lean_box(x_607); -switch (lean_obj_tag(x_614)) { -case 1: -{ -lean_object* x_615; lean_object* x_616; -lean_dec(x_17); -x_615 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__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); -lean_inc(x_7); -x_616 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_615, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_616) == 0) -{ -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_617 = lean_ctor_get(x_616, 1); -lean_inc(x_617); -lean_dec(x_616); -if (lean_is_scalar(x_595)) { - x_618 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_929, 0, x_906); +lean_ctor_set(x_929, 1, x_907); +if (lean_is_scalar(x_905)) { + x_930 = lean_alloc_ctor(0, 2, 0); } else { - x_618 = x_595; + x_930 = x_905; } -lean_ctor_set(x_618, 0, x_612); -lean_ctor_set(x_618, 1, x_613); -if (lean_is_scalar(x_592)) { - x_619 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_930, 0, x_904); +lean_ctor_set(x_930, 1, x_929); +if (lean_is_scalar(x_903)) { + x_931 = lean_alloc_ctor(0, 2, 0); } else { - x_619 = x_592; + x_931 = x_903; } -lean_ctor_set(x_619, 0, x_611); -lean_ctor_set(x_619, 1, x_618); -x_620 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_620, 0, x_590); -lean_ctor_set(x_620, 1, x_619); -lean_ctor_set(x_27, 1, x_620); -lean_ctor_set(x_27, 0, x_610); +lean_ctor_set(x_931, 0, x_902); +lean_ctor_set(x_931, 1, x_930); +lean_ctor_set(x_28, 1, x_931); +lean_ctor_set(x_28, 0, x_924); +x_932 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_932, 0, x_901); +lean_ctor_set(x_932, 1, x_28); lean_inc(x_2); -x_621 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_621, 0, x_2); -lean_ctor_set(x_621, 1, x_27); -x_622 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_622, 0, x_621); -x_18 = x_622; -x_19 = x_617; +x_933 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_933, 0, x_2); +lean_ctor_set(x_933, 1, x_932); +x_934 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_934, 0, x_933); +x_18 = x_934; +x_19 = x_14; goto block_26; } else { -lean_object* x_623; lean_object* x_624; lean_object* x_625; lean_object* x_626; -lean_dec(x_613); -lean_dec(x_612); -lean_dec(x_611); -lean_dec(x_610); -lean_dec(x_595); -lean_dec(x_592); -lean_dec(x_590); -lean_free_object(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_2); -x_623 = lean_ctor_get(x_616, 0); -lean_inc(x_623); -x_624 = lean_ctor_get(x_616, 1); -lean_inc(x_624); -if (lean_is_exclusive(x_616)) { - lean_ctor_release(x_616, 0); - lean_ctor_release(x_616, 1); - x_625 = x_616; -} else { - lean_dec_ref(x_616); - x_625 = lean_box(0); -} -if (lean_is_scalar(x_625)) { - x_626 = lean_alloc_ctor(1, 2, 0); -} else { - x_626 = x_625; -} -lean_ctor_set(x_626, 0, x_623); -lean_ctor_set(x_626, 1, x_624); -return x_626; -} -} -case 2: -{ -lean_object* x_627; uint8_t x_628; -x_627 = lean_array_get_size(x_1); -x_628 = lean_nat_dec_lt(x_590, x_627); -lean_dec(x_627); -if (x_628 == 0) -{ -lean_object* x_629; lean_object* x_630; lean_object* x_631; -x_629 = l_Lean_Meta_Simp_instInhabitedResult; -x_630 = l___private_Init_GetElem_0__outOfBounds___rarg(x_629); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_630); -x_631 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_630, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_631) == 0) -{ -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; lean_object* x_641; lean_object* x_642; lean_object* x_643; lean_object* x_644; lean_object* x_645; -x_632 = lean_ctor_get(x_631, 0); -lean_inc(x_632); -x_633 = lean_ctor_get(x_631, 1); -lean_inc(x_633); -lean_dec(x_631); -x_634 = lean_nat_add(x_590, x_608); -lean_dec(x_590); -x_635 = lean_ctor_get(x_630, 0); -lean_inc(x_635); -lean_dec(x_630); -lean_inc(x_632); -lean_inc(x_635); -x_636 = l_Lean_mkAppB(x_611, x_635, x_632); -x_637 = lean_array_push(x_612, x_635); -x_638 = lean_array_push(x_637, x_632); -x_639 = l_Lean_Expr_bindingBody_x21(x_613); -lean_dec(x_613); -x_640 = l_Lean_Expr_bindingBody_x21(x_639); -lean_dec(x_639); -if (lean_is_scalar(x_595)) { - x_641 = lean_alloc_ctor(0, 2, 0); +lean_object* x_935; lean_object* x_936; lean_object* x_937; lean_object* x_938; lean_object* x_939; lean_object* x_940; lean_object* x_941; +if (lean_is_exclusive(x_901)) { + lean_ctor_release(x_901, 0); + lean_ctor_release(x_901, 1); + lean_ctor_release(x_901, 2); + x_935 = x_901; } else { - x_641 = x_595; + lean_dec_ref(x_901); + x_935 = lean_box(0); } -lean_ctor_set(x_641, 0, x_638); -lean_ctor_set(x_641, 1, x_640); -if (lean_is_scalar(x_592)) { - x_642 = lean_alloc_ctor(0, 2, 0); +x_936 = lean_array_fget(x_925, x_926); +x_937 = lean_nat_add(x_926, x_922); +lean_dec(x_926); +if (lean_is_scalar(x_935)) { + x_938 = lean_alloc_ctor(0, 3, 0); } else { - x_642 = x_592; + x_938 = x_935; } -lean_ctor_set(x_642, 0, x_636); -lean_ctor_set(x_642, 1, x_641); -x_643 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_643, 0, x_634); -lean_ctor_set(x_643, 1, x_642); -lean_ctor_set(x_27, 1, x_643); -lean_ctor_set(x_27, 0, x_610); -lean_inc(x_2); -x_644 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_644, 0, x_2); -lean_ctor_set(x_644, 1, x_27); -x_645 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_645, 0, x_644); -x_18 = x_645; -x_19 = x_633; -goto block_26; -} -else +lean_ctor_set(x_938, 0, x_925); +lean_ctor_set(x_938, 1, x_937); +lean_ctor_set(x_938, 2, x_927); +lean_inc(x_17); +x_939 = l_Lean_Expr_app___override(x_904, x_17); +x_940 = l_Lean_Expr_bindingBody_x21(x_907); +lean_dec(x_907); +x_941 = lean_box(x_921); +switch (lean_obj_tag(x_941)) { +case 0: { -lean_object* x_646; lean_object* x_647; lean_object* x_648; lean_object* x_649; -lean_dec(x_630); -lean_dec(x_613); -lean_dec(x_612); -lean_dec(x_611); -lean_dec(x_610); -lean_dec(x_595); -lean_dec(x_592); -lean_dec(x_590); -lean_free_object(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_2); -x_646 = lean_ctor_get(x_631, 0); -lean_inc(x_646); -x_647 = lean_ctor_get(x_631, 1); -lean_inc(x_647); -if (lean_is_exclusive(x_631)) { - lean_ctor_release(x_631, 0); - lean_ctor_release(x_631, 1); - x_648 = x_631; +lean_object* x_942; lean_object* x_943; lean_object* x_944; lean_object* x_945; lean_object* x_946; lean_object* x_947; lean_object* x_948; +lean_dec(x_17); +x_942 = lean_array_push(x_906, x_936); +if (lean_is_scalar(x_908)) { + x_943 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_631); - x_648 = lean_box(0); + x_943 = x_908; } -if (lean_is_scalar(x_648)) { - x_649 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_943, 0, x_942); +lean_ctor_set(x_943, 1, x_940); +if (lean_is_scalar(x_905)) { + x_944 = lean_alloc_ctor(0, 2, 0); } else { - x_649 = x_648; -} -lean_ctor_set(x_649, 0, x_646); -lean_ctor_set(x_649, 1, x_647); -return x_649; + x_944 = x_905; } -} -else -{ -lean_object* x_650; lean_object* x_651; -x_650 = lean_array_fget(x_1, x_590); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_650); -x_651 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_650, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_651) == 0) -{ -lean_object* x_652; lean_object* x_653; lean_object* x_654; lean_object* x_655; lean_object* x_656; lean_object* x_657; lean_object* x_658; lean_object* x_659; lean_object* x_660; lean_object* x_661; lean_object* x_662; lean_object* x_663; lean_object* x_664; lean_object* x_665; -x_652 = lean_ctor_get(x_651, 0); -lean_inc(x_652); -x_653 = lean_ctor_get(x_651, 1); -lean_inc(x_653); -lean_dec(x_651); -x_654 = lean_nat_add(x_590, x_608); -lean_dec(x_590); -x_655 = lean_ctor_get(x_650, 0); -lean_inc(x_655); -lean_dec(x_650); -lean_inc(x_652); -lean_inc(x_655); -x_656 = l_Lean_mkAppB(x_611, x_655, x_652); -x_657 = lean_array_push(x_612, x_655); -x_658 = lean_array_push(x_657, x_652); -x_659 = l_Lean_Expr_bindingBody_x21(x_613); -lean_dec(x_613); -x_660 = l_Lean_Expr_bindingBody_x21(x_659); -lean_dec(x_659); -if (lean_is_scalar(x_595)) { - x_661 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_944, 0, x_939); +lean_ctor_set(x_944, 1, x_943); +if (lean_is_scalar(x_903)) { + x_945 = lean_alloc_ctor(0, 2, 0); } else { - x_661 = x_595; + x_945 = x_903; } -lean_ctor_set(x_661, 0, x_658); -lean_ctor_set(x_661, 1, x_660); -if (lean_is_scalar(x_592)) { - x_662 = lean_alloc_ctor(0, 2, 0); -} else { - x_662 = x_592; +lean_ctor_set(x_945, 0, x_902); +lean_ctor_set(x_945, 1, x_944); +lean_ctor_set(x_28, 1, x_945); +lean_ctor_set(x_28, 0, x_924); +x_946 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_946, 0, x_938); +lean_ctor_set(x_946, 1, x_28); +lean_inc(x_2); +x_947 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_947, 0, x_2); +lean_ctor_set(x_947, 1, x_946); +x_948 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_948, 0, x_947); +x_18 = x_948; +x_19 = x_14; +goto block_26; } -lean_ctor_set(x_662, 0, x_656); -lean_ctor_set(x_662, 1, x_661); -x_663 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_663, 0, x_654); -lean_ctor_set(x_663, 1, x_662); -lean_ctor_set(x_27, 1, x_663); -lean_ctor_set(x_27, 0, x_610); +case 2: +{ +lean_object* x_949; lean_object* x_950; uint8_t x_951; +lean_dec(x_936); +lean_inc(x_17); +x_949 = lean_array_push(x_906, x_17); +x_950 = lean_array_get_size(x_1); +x_951 = lean_nat_dec_lt(x_902, x_950); +lean_dec(x_950); +if (x_951 == 0) +{ +lean_object* x_952; lean_object* x_953; lean_object* x_954; +x_952 = l_Lean_Meta_Simp_instInhabitedResult; +x_953 = l___private_Init_GetElem_0__outOfBounds___rarg(x_952); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_953); +x_954 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_953, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_954) == 0) +{ +lean_object* x_955; lean_object* x_956; lean_object* x_957; lean_object* x_958; lean_object* x_959; lean_object* x_960; lean_object* x_961; lean_object* x_962; lean_object* x_963; lean_object* x_964; lean_object* x_965; lean_object* x_966; lean_object* x_967; lean_object* x_968; lean_object* x_969; +x_955 = lean_ctor_get(x_954, 0); +lean_inc(x_955); +x_956 = lean_ctor_get(x_954, 1); +lean_inc(x_956); +lean_dec(x_954); +x_957 = lean_nat_add(x_902, x_922); +lean_dec(x_902); +x_958 = lean_ctor_get(x_953, 0); +lean_inc(x_958); +lean_dec(x_953); +lean_inc(x_955); +lean_inc(x_958); +x_959 = l_Lean_mkAppB(x_939, x_958, x_955); +x_960 = lean_array_push(x_949, x_958); +x_961 = lean_array_push(x_960, x_955); +x_962 = l_Lean_Expr_bindingBody_x21(x_940); +lean_dec(x_940); +x_963 = l_Lean_Expr_bindingBody_x21(x_962); +lean_dec(x_962); +if (lean_is_scalar(x_908)) { + x_964 = lean_alloc_ctor(0, 2, 0); +} else { + x_964 = x_908; +} +lean_ctor_set(x_964, 0, x_961); +lean_ctor_set(x_964, 1, x_963); +if (lean_is_scalar(x_905)) { + x_965 = lean_alloc_ctor(0, 2, 0); +} else { + x_965 = x_905; +} +lean_ctor_set(x_965, 0, x_959); +lean_ctor_set(x_965, 1, x_964); +if (lean_is_scalar(x_903)) { + x_966 = lean_alloc_ctor(0, 2, 0); +} else { + x_966 = x_903; +} +lean_ctor_set(x_966, 0, x_957); +lean_ctor_set(x_966, 1, x_965); +lean_ctor_set(x_28, 1, x_966); +lean_ctor_set(x_28, 0, x_924); +x_967 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_967, 0, x_938); +lean_ctor_set(x_967, 1, x_28); lean_inc(x_2); -x_664 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_664, 0, x_2); -lean_ctor_set(x_664, 1, x_27); -x_665 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_665, 0, x_664); -x_18 = x_665; -x_19 = x_653; +x_968 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_968, 0, x_2); +lean_ctor_set(x_968, 1, x_967); +x_969 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_969, 0, x_968); +x_18 = x_969; +x_19 = x_956; goto block_26; } else { -lean_object* x_666; lean_object* x_667; lean_object* x_668; lean_object* x_669; -lean_dec(x_650); -lean_dec(x_613); -lean_dec(x_612); -lean_dec(x_611); -lean_dec(x_610); -lean_dec(x_595); -lean_dec(x_592); -lean_dec(x_590); -lean_free_object(x_27); +lean_object* x_970; lean_object* x_971; lean_object* x_972; lean_object* x_973; +lean_dec(x_953); +lean_dec(x_949); +lean_dec(x_940); +lean_dec(x_939); +lean_dec(x_938); +lean_dec(x_924); +lean_dec(x_908); +lean_dec(x_905); +lean_dec(x_903); +lean_dec(x_902); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -21440,88 +25595,110 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_666 = lean_ctor_get(x_651, 0); -lean_inc(x_666); -x_667 = lean_ctor_get(x_651, 1); -lean_inc(x_667); -if (lean_is_exclusive(x_651)) { - lean_ctor_release(x_651, 0); - lean_ctor_release(x_651, 1); - x_668 = x_651; +x_970 = lean_ctor_get(x_954, 0); +lean_inc(x_970); +x_971 = lean_ctor_get(x_954, 1); +lean_inc(x_971); +if (lean_is_exclusive(x_954)) { + lean_ctor_release(x_954, 0); + lean_ctor_release(x_954, 1); + x_972 = x_954; } else { - lean_dec_ref(x_651); - x_668 = lean_box(0); + lean_dec_ref(x_954); + x_972 = lean_box(0); } -if (lean_is_scalar(x_668)) { - x_669 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_972)) { + x_973 = lean_alloc_ctor(1, 2, 0); } else { - x_669 = x_668; -} -lean_ctor_set(x_669, 0, x_666); -lean_ctor_set(x_669, 1, x_667); -return x_669; + x_973 = x_972; } +lean_ctor_set(x_973, 0, x_970); +lean_ctor_set(x_973, 1, x_971); +return x_973; } } -case 4: +else { -lean_object* x_670; lean_object* x_671; -lean_dec(x_17); -x_670 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1; +lean_object* x_974; lean_object* x_975; +x_974 = lean_array_fget(x_1, x_902); 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_671 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_670, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_671) == 0) -{ -lean_object* x_672; lean_object* x_673; lean_object* x_674; lean_object* x_675; lean_object* x_676; lean_object* x_677; -x_672 = lean_ctor_get(x_671, 1); -lean_inc(x_672); -lean_dec(x_671); -if (lean_is_scalar(x_595)) { - x_673 = lean_alloc_ctor(0, 2, 0); -} else { - x_673 = x_595; -} -lean_ctor_set(x_673, 0, x_612); -lean_ctor_set(x_673, 1, x_613); -if (lean_is_scalar(x_592)) { - x_674 = lean_alloc_ctor(0, 2, 0); -} else { - x_674 = x_592; -} -lean_ctor_set(x_674, 0, x_611); -lean_ctor_set(x_674, 1, x_673); -x_675 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_675, 0, x_590); -lean_ctor_set(x_675, 1, x_674); -lean_ctor_set(x_27, 1, x_675); -lean_ctor_set(x_27, 0, x_610); +lean_inc(x_974); +x_975 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_974, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_975) == 0) +{ +lean_object* x_976; lean_object* x_977; lean_object* x_978; lean_object* x_979; lean_object* x_980; lean_object* x_981; lean_object* x_982; lean_object* x_983; lean_object* x_984; lean_object* x_985; lean_object* x_986; lean_object* x_987; lean_object* x_988; lean_object* x_989; lean_object* x_990; +x_976 = lean_ctor_get(x_975, 0); +lean_inc(x_976); +x_977 = lean_ctor_get(x_975, 1); +lean_inc(x_977); +lean_dec(x_975); +x_978 = lean_nat_add(x_902, x_922); +lean_dec(x_902); +x_979 = lean_ctor_get(x_974, 0); +lean_inc(x_979); +lean_dec(x_974); +lean_inc(x_976); +lean_inc(x_979); +x_980 = l_Lean_mkAppB(x_939, x_979, x_976); +x_981 = lean_array_push(x_949, x_979); +x_982 = lean_array_push(x_981, x_976); +x_983 = l_Lean_Expr_bindingBody_x21(x_940); +lean_dec(x_940); +x_984 = l_Lean_Expr_bindingBody_x21(x_983); +lean_dec(x_983); +if (lean_is_scalar(x_908)) { + x_985 = lean_alloc_ctor(0, 2, 0); +} else { + x_985 = x_908; +} +lean_ctor_set(x_985, 0, x_982); +lean_ctor_set(x_985, 1, x_984); +if (lean_is_scalar(x_905)) { + x_986 = lean_alloc_ctor(0, 2, 0); +} else { + x_986 = x_905; +} +lean_ctor_set(x_986, 0, x_980); +lean_ctor_set(x_986, 1, x_985); +if (lean_is_scalar(x_903)) { + x_987 = lean_alloc_ctor(0, 2, 0); +} else { + x_987 = x_903; +} +lean_ctor_set(x_987, 0, x_978); +lean_ctor_set(x_987, 1, x_986); +lean_ctor_set(x_28, 1, x_987); +lean_ctor_set(x_28, 0, x_924); +x_988 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_988, 0, x_938); +lean_ctor_set(x_988, 1, x_28); lean_inc(x_2); -x_676 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_676, 0, x_2); -lean_ctor_set(x_676, 1, x_27); -x_677 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_677, 0, x_676); -x_18 = x_677; -x_19 = x_672; +x_989 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_989, 0, x_2); +lean_ctor_set(x_989, 1, x_988); +x_990 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_990, 0, x_989); +x_18 = x_990; +x_19 = x_977; goto block_26; } else { -lean_object* x_678; lean_object* x_679; lean_object* x_680; lean_object* x_681; -lean_dec(x_613); -lean_dec(x_612); -lean_dec(x_611); -lean_dec(x_610); -lean_dec(x_595); -lean_dec(x_592); -lean_dec(x_590); -lean_free_object(x_27); +lean_object* x_991; lean_object* x_992; lean_object* x_993; lean_object* x_994; +lean_dec(x_974); +lean_dec(x_949); +lean_dec(x_940); +lean_dec(x_939); +lean_dec(x_938); +lean_dec(x_924); +lean_dec(x_908); +lean_dec(x_905); +lean_dec(x_903); +lean_dec(x_902); +lean_free_object(x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -21530,191 +25707,238 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_678 = lean_ctor_get(x_671, 0); -lean_inc(x_678); -x_679 = lean_ctor_get(x_671, 1); -lean_inc(x_679); -if (lean_is_exclusive(x_671)) { - lean_ctor_release(x_671, 0); - lean_ctor_release(x_671, 1); - x_680 = x_671; +x_991 = lean_ctor_get(x_975, 0); +lean_inc(x_991); +x_992 = lean_ctor_get(x_975, 1); +lean_inc(x_992); +if (lean_is_exclusive(x_975)) { + lean_ctor_release(x_975, 0); + lean_ctor_release(x_975, 1); + x_993 = x_975; +} else { + lean_dec_ref(x_975); + x_993 = lean_box(0); +} +if (lean_is_scalar(x_993)) { + x_994 = lean_alloc_ctor(1, 2, 0); +} else { + x_994 = x_993; +} +lean_ctor_set(x_994, 0, x_991); +lean_ctor_set(x_994, 1, x_992); +return x_994; +} +} +} +case 3: +{ +lean_object* x_995; lean_object* x_996; lean_object* x_997; lean_object* x_998; lean_object* x_999; lean_object* x_1000; lean_object* x_1001; +lean_dec(x_936); +x_995 = lean_array_push(x_906, x_17); +if (lean_is_scalar(x_908)) { + x_996 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_671); - x_680 = lean_box(0); + x_996 = x_908; } -if (lean_is_scalar(x_680)) { - x_681 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_996, 0, x_995); +lean_ctor_set(x_996, 1, x_940); +if (lean_is_scalar(x_905)) { + x_997 = lean_alloc_ctor(0, 2, 0); } else { - x_681 = x_680; + x_997 = x_905; } -lean_ctor_set(x_681, 0, x_678); -lean_ctor_set(x_681, 1, x_679); -return x_681; +lean_ctor_set(x_997, 0, x_939); +lean_ctor_set(x_997, 1, x_996); +if (lean_is_scalar(x_903)) { + x_998 = lean_alloc_ctor(0, 2, 0); +} else { + x_998 = x_903; } +lean_ctor_set(x_998, 0, x_902); +lean_ctor_set(x_998, 1, x_997); +lean_ctor_set(x_28, 1, x_998); +lean_ctor_set(x_28, 0, x_924); +x_999 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_999, 0, x_938); +lean_ctor_set(x_999, 1, x_28); +lean_inc(x_2); +x_1000 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1000, 0, x_2); +lean_ctor_set(x_1000, 1, x_999); +x_1001 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_1001, 0, x_1000); +x_18 = x_1001; +x_19 = x_14; +goto block_26; } case 5: { -lean_object* x_682; lean_object* x_683; lean_object* x_684; -lean_dec(x_595); -lean_dec(x_592); -lean_free_object(x_27); -x_682 = l_Lean_Expr_bindingDomain_x21(x_613); -x_683 = lean_expr_instantiate_rev(x_682, x_612); -lean_dec(x_682); +lean_object* x_1002; lean_object* x_1003; lean_object* x_1004; lean_object* x_1005; +lean_dec(x_936); +lean_dec(x_908); +lean_dec(x_905); +lean_dec(x_903); +lean_free_object(x_28); +lean_inc(x_17); +x_1002 = lean_array_push(x_906, x_17); +x_1003 = l_Lean_Expr_bindingDomain_x21(x_940); +x_1004 = lean_expr_instantiate_rev(x_1003, x_1002); +lean_dec(x_1003); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_17); -x_684 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_684) == 0) -{ -lean_object* x_685; lean_object* x_686; lean_object* x_687; -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_1005 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_1005) == 0) +{ +lean_object* x_1006; lean_object* x_1007; lean_object* x_1008; +x_1006 = lean_ctor_get(x_1005, 0); +lean_inc(x_1006); +x_1007 = lean_ctor_get(x_1005, 1); +lean_inc(x_1007); +lean_dec(x_1005); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_683); -x_687 = l_Lean_Meta_isExprDefEq(x_685, x_683, x_10, x_11, x_12, x_13, x_686); -if (lean_obj_tag(x_687) == 0) -{ -lean_object* x_688; uint8_t x_689; -x_688 = lean_ctor_get(x_687, 0); -lean_inc(x_688); -x_689 = lean_unbox(x_688); -lean_dec(x_688); -if (x_689 == 0) -{ -lean_object* x_690; lean_object* x_691; lean_object* x_692; +lean_inc(x_1004); +x_1008 = l_Lean_Meta_isExprDefEq(x_1006, x_1004, x_10, x_11, x_12, x_13, x_1007); +if (lean_obj_tag(x_1008) == 0) +{ +lean_object* x_1009; uint8_t x_1010; +x_1009 = lean_ctor_get(x_1008, 0); +lean_inc(x_1009); +x_1010 = lean_unbox(x_1009); +lean_dec(x_1009); +if (x_1010 == 0) +{ +lean_object* x_1011; lean_object* x_1012; lean_object* x_1013; lean_dec(x_17); -x_690 = lean_ctor_get(x_687, 1); -lean_inc(x_690); -lean_dec(x_687); -x_691 = lean_box(0); +x_1011 = lean_ctor_get(x_1008, 1); +lean_inc(x_1011); +lean_dec(x_1008); +x_1012 = lean_box(0); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_683); -x_692 = l_Lean_Meta_trySynthInstance(x_683, x_691, x_10, x_11, x_12, x_13, x_690); -if (lean_obj_tag(x_692) == 0) -{ -lean_object* x_693; -x_693 = lean_ctor_get(x_692, 0); -lean_inc(x_693); -if (lean_obj_tag(x_693) == 1) -{ -lean_object* x_694; lean_object* x_695; lean_object* x_696; lean_object* x_697; lean_object* x_698; -lean_dec(x_683); -x_694 = lean_ctor_get(x_692, 1); -lean_inc(x_694); -lean_dec(x_692); -x_695 = lean_ctor_get(x_693, 0); -lean_inc(x_695); -lean_dec(x_693); +lean_inc(x_1004); +x_1013 = l_Lean_Meta_trySynthInstance(x_1004, x_1012, x_10, x_11, x_12, x_13, x_1011); +if (lean_obj_tag(x_1013) == 0) +{ +lean_object* x_1014; +x_1014 = lean_ctor_get(x_1013, 0); +lean_inc(x_1014); +if (lean_obj_tag(x_1014) == 1) +{ +lean_object* x_1015; lean_object* x_1016; lean_object* x_1017; lean_object* x_1018; lean_object* x_1019; +lean_dec(x_1004); +x_1015 = lean_ctor_get(x_1013, 1); +lean_inc(x_1015); +lean_dec(x_1013); +x_1016 = lean_ctor_get(x_1014, 0); +lean_inc(x_1016); +lean_dec(x_1014); lean_inc(x_2); -x_696 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_590, x_610, x_2, x_611, x_612, x_613, x_695, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_694); -lean_dec(x_613); -x_697 = lean_ctor_get(x_696, 0); -lean_inc(x_697); -x_698 = lean_ctor_get(x_696, 1); -lean_inc(x_698); -lean_dec(x_696); -x_18 = x_697; -x_19 = x_698; +x_1017 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_902, x_924, x_938, x_2, x_939, x_1002, x_940, x_1016, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_1015); +lean_dec(x_940); +x_1018 = lean_ctor_get(x_1017, 0); +lean_inc(x_1018); +x_1019 = lean_ctor_get(x_1017, 1); +lean_inc(x_1019); +lean_dec(x_1017); +x_18 = x_1018; +x_19 = x_1019; goto block_26; } else { -lean_object* x_699; lean_object* x_700; lean_object* x_701; lean_object* x_702; uint8_t x_703; -lean_dec(x_693); -x_699 = lean_ctor_get(x_692, 1); -lean_inc(x_699); -lean_dec(x_692); -x_700 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; -x_701 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_700, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_699); -x_702 = lean_ctor_get(x_701, 0); -lean_inc(x_702); -x_703 = lean_unbox(x_702); -lean_dec(x_702); -if (x_703 == 0) -{ -lean_object* x_704; lean_object* x_705; lean_object* x_706; lean_object* x_707; lean_object* x_708; -lean_dec(x_683); -x_704 = lean_ctor_get(x_701, 1); -lean_inc(x_704); -lean_dec(x_701); -x_705 = lean_box(0); -x_706 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_691, x_612, x_613, x_611, x_590, x_610, x_705, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_704); -x_707 = lean_ctor_get(x_706, 0); -lean_inc(x_707); -x_708 = lean_ctor_get(x_706, 1); -lean_inc(x_708); -lean_dec(x_706); -x_18 = x_707; -x_19 = x_708; +lean_object* x_1020; lean_object* x_1021; lean_object* x_1022; lean_object* x_1023; uint8_t x_1024; +lean_dec(x_1014); +x_1020 = lean_ctor_get(x_1013, 1); +lean_inc(x_1020); +lean_dec(x_1013); +x_1021 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; +x_1022 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_1021, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_1020); +x_1023 = lean_ctor_get(x_1022, 0); +lean_inc(x_1023); +x_1024 = lean_unbox(x_1023); +lean_dec(x_1023); +if (x_1024 == 0) +{ +lean_object* x_1025; lean_object* x_1026; lean_object* x_1027; lean_object* x_1028; lean_object* x_1029; +lean_dec(x_1004); +x_1025 = lean_ctor_get(x_1022, 1); +lean_inc(x_1025); +lean_dec(x_1022); +x_1026 = lean_box(0); +x_1027 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_1012, x_1002, x_940, x_939, x_902, x_924, x_938, x_1026, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_1025); +x_1028 = lean_ctor_get(x_1027, 0); +lean_inc(x_1028); +x_1029 = lean_ctor_get(x_1027, 1); +lean_inc(x_1029); +lean_dec(x_1027); +x_18 = x_1028; +x_19 = x_1029; goto block_26; } else { -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_object* x_721; -x_709 = lean_ctor_get(x_701, 1); -lean_inc(x_709); -if (lean_is_exclusive(x_701)) { - lean_ctor_release(x_701, 0); - lean_ctor_release(x_701, 1); - x_710 = x_701; -} else { - lean_dec_ref(x_701); - x_710 = lean_box(0); -} -x_711 = l_Lean_indentExpr(x_683); -x_712 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; -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_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; -x_715 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_715, 0, x_713); -lean_ctor_set(x_715, 1, x_714); -x_716 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_700, x_715, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_709); -x_717 = lean_ctor_get(x_716, 0); -lean_inc(x_717); -x_718 = lean_ctor_get(x_716, 1); -lean_inc(x_718); -lean_dec(x_716); -x_719 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_691, x_612, x_613, x_611, x_590, x_610, x_717, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_718); -lean_dec(x_717); -x_720 = lean_ctor_get(x_719, 0); -lean_inc(x_720); -x_721 = lean_ctor_get(x_719, 1); -lean_inc(x_721); -lean_dec(x_719); -x_18 = x_720; -x_19 = x_721; +lean_object* x_1030; lean_object* x_1031; lean_object* x_1032; lean_object* x_1033; lean_object* x_1034; lean_object* x_1035; lean_object* x_1036; lean_object* x_1037; lean_object* x_1038; lean_object* x_1039; lean_object* x_1040; lean_object* x_1041; lean_object* x_1042; +x_1030 = lean_ctor_get(x_1022, 1); +lean_inc(x_1030); +if (lean_is_exclusive(x_1022)) { + lean_ctor_release(x_1022, 0); + lean_ctor_release(x_1022, 1); + x_1031 = x_1022; +} else { + lean_dec_ref(x_1022); + x_1031 = lean_box(0); +} +x_1032 = l_Lean_indentExpr(x_1004); +x_1033 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; +if (lean_is_scalar(x_1031)) { + x_1034 = lean_alloc_ctor(7, 2, 0); +} else { + x_1034 = x_1031; + lean_ctor_set_tag(x_1034, 7); +} +lean_ctor_set(x_1034, 0, x_1033); +lean_ctor_set(x_1034, 1, x_1032); +x_1035 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; +x_1036 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_1036, 0, x_1034); +lean_ctor_set(x_1036, 1, x_1035); +x_1037 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_1021, x_1036, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_1030); +x_1038 = lean_ctor_get(x_1037, 0); +lean_inc(x_1038); +x_1039 = lean_ctor_get(x_1037, 1); +lean_inc(x_1039); +lean_dec(x_1037); +x_1040 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_1012, x_1002, x_940, x_939, x_902, x_924, x_938, x_1038, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_1039); +lean_dec(x_1038); +x_1041 = lean_ctor_get(x_1040, 0); +lean_inc(x_1041); +x_1042 = lean_ctor_get(x_1040, 1); +lean_inc(x_1042); +lean_dec(x_1040); +x_18 = x_1041; +x_19 = x_1042; goto block_26; } } } else { -lean_object* x_722; lean_object* x_723; lean_object* x_724; lean_object* x_725; -lean_dec(x_683); -lean_dec(x_613); -lean_dec(x_612); -lean_dec(x_611); -lean_dec(x_610); -lean_dec(x_590); +lean_object* x_1043; lean_object* x_1044; lean_object* x_1045; lean_object* x_1046; +lean_dec(x_1004); +lean_dec(x_1002); +lean_dec(x_940); +lean_dec(x_939); +lean_dec(x_938); +lean_dec(x_924); +lean_dec(x_902); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -21723,57 +25947,58 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_722 = lean_ctor_get(x_692, 0); -lean_inc(x_722); -x_723 = lean_ctor_get(x_692, 1); -lean_inc(x_723); -if (lean_is_exclusive(x_692)) { - lean_ctor_release(x_692, 0); - lean_ctor_release(x_692, 1); - x_724 = x_692; +x_1043 = lean_ctor_get(x_1013, 0); +lean_inc(x_1043); +x_1044 = lean_ctor_get(x_1013, 1); +lean_inc(x_1044); +if (lean_is_exclusive(x_1013)) { + lean_ctor_release(x_1013, 0); + lean_ctor_release(x_1013, 1); + x_1045 = x_1013; } else { - lean_dec_ref(x_692); - x_724 = lean_box(0); + lean_dec_ref(x_1013); + x_1045 = lean_box(0); } -if (lean_is_scalar(x_724)) { - x_725 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_1045)) { + x_1046 = lean_alloc_ctor(1, 2, 0); } else { - x_725 = x_724; + x_1046 = x_1045; } -lean_ctor_set(x_725, 0, x_722); -lean_ctor_set(x_725, 1, x_723); -return x_725; +lean_ctor_set(x_1046, 0, x_1043); +lean_ctor_set(x_1046, 1, x_1044); +return x_1046; } } else { -lean_object* x_726; lean_object* x_727; lean_object* x_728; lean_object* x_729; -lean_dec(x_683); -x_726 = lean_ctor_get(x_687, 1); -lean_inc(x_726); -lean_dec(x_687); +lean_object* x_1047; lean_object* x_1048; lean_object* x_1049; lean_object* x_1050; +lean_dec(x_1004); +x_1047 = lean_ctor_get(x_1008, 1); +lean_inc(x_1047); +lean_dec(x_1008); lean_inc(x_2); -x_727 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_590, x_610, x_2, x_611, x_612, x_613, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_726); -lean_dec(x_613); -x_728 = lean_ctor_get(x_727, 0); -lean_inc(x_728); -x_729 = lean_ctor_get(x_727, 1); -lean_inc(x_729); -lean_dec(x_727); -x_18 = x_728; -x_19 = x_729; +x_1048 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_902, x_924, x_938, x_2, x_939, x_1002, x_940, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_1047); +lean_dec(x_940); +x_1049 = lean_ctor_get(x_1048, 0); +lean_inc(x_1049); +x_1050 = lean_ctor_get(x_1048, 1); +lean_inc(x_1050); +lean_dec(x_1048); +x_18 = x_1049; +x_19 = x_1050; goto block_26; } } else { -lean_object* x_730; lean_object* x_731; lean_object* x_732; lean_object* x_733; -lean_dec(x_683); -lean_dec(x_613); -lean_dec(x_612); -lean_dec(x_611); -lean_dec(x_610); -lean_dec(x_590); +lean_object* x_1051; lean_object* x_1052; lean_object* x_1053; lean_object* x_1054; +lean_dec(x_1004); +lean_dec(x_1002); +lean_dec(x_940); +lean_dec(x_939); +lean_dec(x_938); +lean_dec(x_924); +lean_dec(x_902); lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); @@ -21783,37 +26008,38 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_730 = lean_ctor_get(x_687, 0); -lean_inc(x_730); -x_731 = lean_ctor_get(x_687, 1); -lean_inc(x_731); -if (lean_is_exclusive(x_687)) { - lean_ctor_release(x_687, 0); - lean_ctor_release(x_687, 1); - x_732 = x_687; +x_1051 = lean_ctor_get(x_1008, 0); +lean_inc(x_1051); +x_1052 = lean_ctor_get(x_1008, 1); +lean_inc(x_1052); +if (lean_is_exclusive(x_1008)) { + lean_ctor_release(x_1008, 0); + lean_ctor_release(x_1008, 1); + x_1053 = x_1008; } else { - lean_dec_ref(x_687); - x_732 = lean_box(0); + lean_dec_ref(x_1008); + x_1053 = lean_box(0); } -if (lean_is_scalar(x_732)) { - x_733 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_1053)) { + x_1054 = lean_alloc_ctor(1, 2, 0); } else { - x_733 = x_732; + x_1054 = x_1053; } -lean_ctor_set(x_733, 0, x_730); -lean_ctor_set(x_733, 1, x_731); -return x_733; +lean_ctor_set(x_1054, 0, x_1051); +lean_ctor_set(x_1054, 1, x_1052); +return x_1054; } } else { -lean_object* x_734; lean_object* x_735; lean_object* x_736; lean_object* x_737; -lean_dec(x_683); -lean_dec(x_613); -lean_dec(x_612); -lean_dec(x_611); -lean_dec(x_610); -lean_dec(x_590); +lean_object* x_1055; lean_object* x_1056; lean_object* x_1057; lean_object* x_1058; +lean_dec(x_1004); +lean_dec(x_1002); +lean_dec(x_940); +lean_dec(x_939); +lean_dec(x_938); +lean_dec(x_924); +lean_dec(x_902); lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); @@ -21823,61 +26049,128 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_734 = lean_ctor_get(x_684, 0); -lean_inc(x_734); -x_735 = lean_ctor_get(x_684, 1); -lean_inc(x_735); -if (lean_is_exclusive(x_684)) { - lean_ctor_release(x_684, 0); - lean_ctor_release(x_684, 1); - x_736 = x_684; +x_1055 = lean_ctor_get(x_1005, 0); +lean_inc(x_1055); +x_1056 = lean_ctor_get(x_1005, 1); +lean_inc(x_1056); +if (lean_is_exclusive(x_1005)) { + lean_ctor_release(x_1005, 0); + lean_ctor_release(x_1005, 1); + x_1057 = x_1005; } else { - lean_dec_ref(x_684); - x_736 = lean_box(0); + lean_dec_ref(x_1005); + x_1057 = lean_box(0); } -if (lean_is_scalar(x_736)) { - x_737 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_1057)) { + x_1058 = lean_alloc_ctor(1, 2, 0); } else { - x_737 = x_736; + x_1058 = x_1057; } -lean_ctor_set(x_737, 0, x_734); -lean_ctor_set(x_737, 1, x_735); -return x_737; +lean_ctor_set(x_1058, 0, x_1055); +lean_ctor_set(x_1058, 1, x_1056); +return x_1058; } } default: { -lean_object* x_738; lean_object* x_739; lean_object* x_740; lean_object* x_741; lean_object* x_742; -lean_dec(x_614); +lean_object* x_1059; lean_object* x_1060; +lean_dec(x_941); +lean_dec(x_936); lean_dec(x_17); -if (lean_is_scalar(x_595)) { - x_738 = lean_alloc_ctor(0, 2, 0); +x_1059 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__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); +lean_inc(x_7); +x_1060 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_1059, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_1060) == 0) +{ +lean_object* x_1061; lean_object* x_1062; lean_object* x_1063; lean_object* x_1064; lean_object* x_1065; lean_object* x_1066; lean_object* x_1067; +x_1061 = lean_ctor_get(x_1060, 1); +lean_inc(x_1061); +lean_dec(x_1060); +if (lean_is_scalar(x_908)) { + x_1062 = lean_alloc_ctor(0, 2, 0); +} else { + x_1062 = x_908; +} +lean_ctor_set(x_1062, 0, x_906); +lean_ctor_set(x_1062, 1, x_940); +if (lean_is_scalar(x_905)) { + x_1063 = lean_alloc_ctor(0, 2, 0); +} else { + x_1063 = x_905; +} +lean_ctor_set(x_1063, 0, x_939); +lean_ctor_set(x_1063, 1, x_1062); +if (lean_is_scalar(x_903)) { + x_1064 = lean_alloc_ctor(0, 2, 0); +} else { + x_1064 = x_903; +} +lean_ctor_set(x_1064, 0, x_902); +lean_ctor_set(x_1064, 1, x_1063); +lean_ctor_set(x_28, 1, x_1064); +lean_ctor_set(x_28, 0, x_924); +x_1065 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1065, 0, x_938); +lean_ctor_set(x_1065, 1, x_28); +lean_inc(x_2); +x_1066 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1066, 0, x_2); +lean_ctor_set(x_1066, 1, x_1065); +x_1067 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_1067, 0, x_1066); +x_18 = x_1067; +x_19 = x_1061; +goto block_26; +} +else +{ +lean_object* x_1068; lean_object* x_1069; lean_object* x_1070; lean_object* x_1071; +lean_dec(x_940); +lean_dec(x_939); +lean_dec(x_938); +lean_dec(x_924); +lean_dec(x_908); +lean_dec(x_906); +lean_dec(x_905); +lean_dec(x_903); +lean_dec(x_902); +lean_free_object(x_28); +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); +x_1068 = lean_ctor_get(x_1060, 0); +lean_inc(x_1068); +x_1069 = lean_ctor_get(x_1060, 1); +lean_inc(x_1069); +if (lean_is_exclusive(x_1060)) { + lean_ctor_release(x_1060, 0); + lean_ctor_release(x_1060, 1); + x_1070 = x_1060; } else { - x_738 = x_595; + lean_dec_ref(x_1060); + x_1070 = lean_box(0); } -lean_ctor_set(x_738, 0, x_612); -lean_ctor_set(x_738, 1, x_613); -if (lean_is_scalar(x_592)) { - x_739 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_1070)) { + x_1071 = lean_alloc_ctor(1, 2, 0); } else { - x_739 = x_592; + x_1071 = x_1070; +} +lean_ctor_set(x_1071, 0, x_1068); +lean_ctor_set(x_1071, 1, x_1069); +return x_1071; +} } -lean_ctor_set(x_739, 0, x_611); -lean_ctor_set(x_739, 1, x_738); -x_740 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_740, 0, x_590); -lean_ctor_set(x_740, 1, x_739); -lean_ctor_set(x_27, 1, x_740); -lean_ctor_set(x_27, 0, x_610); -lean_inc(x_2); -x_741 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_741, 0, x_2); -lean_ctor_set(x_741, 1, x_27); -x_742 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_742, 0, x_741); -x_18 = x_742; -x_19 = x_14; -goto block_26; } } } @@ -21885,303 +26178,360 @@ goto block_26; } else { -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_object* x_751; lean_object* x_752; lean_object* x_753; uint8_t x_754; -x_743 = lean_ctor_get(x_27, 0); -lean_inc(x_743); -lean_dec(x_27); -x_744 = lean_ctor_get(x_28, 0); -lean_inc(x_744); -if (lean_is_exclusive(x_28)) { - lean_ctor_release(x_28, 0); - lean_ctor_release(x_28, 1); - x_745 = x_28; -} else { - lean_dec_ref(x_28); - x_745 = lean_box(0); -} -x_746 = lean_ctor_get(x_29, 0); -lean_inc(x_746); +lean_object* x_1072; lean_object* x_1073; lean_object* x_1074; lean_object* x_1075; lean_object* x_1076; lean_object* x_1077; lean_object* x_1078; lean_object* x_1079; lean_object* x_1080; lean_object* x_1081; lean_object* x_1082; lean_object* x_1083; lean_object* x_1084; uint8_t x_1085; +x_1072 = lean_ctor_get(x_28, 0); +lean_inc(x_1072); +lean_dec(x_28); +x_1073 = lean_ctor_get(x_27, 0); +lean_inc(x_1073); +if (lean_is_exclusive(x_27)) { + lean_ctor_release(x_27, 0); + lean_ctor_release(x_27, 1); + x_1074 = x_27; +} else { + lean_dec_ref(x_27); + x_1074 = lean_box(0); +} +x_1075 = lean_ctor_get(x_29, 0); +lean_inc(x_1075); if (lean_is_exclusive(x_29)) { lean_ctor_release(x_29, 0); lean_ctor_release(x_29, 1); - x_747 = x_29; + x_1076 = x_29; } else { lean_dec_ref(x_29); - x_747 = lean_box(0); + x_1076 = lean_box(0); } -x_748 = lean_ctor_get(x_30, 0); -lean_inc(x_748); -x_749 = lean_ctor_get(x_30, 1); -lean_inc(x_749); +x_1077 = lean_ctor_get(x_30, 0); +lean_inc(x_1077); if (lean_is_exclusive(x_30)) { lean_ctor_release(x_30, 0); lean_ctor_release(x_30, 1); - x_750 = x_30; + x_1078 = x_30; } else { lean_dec_ref(x_30); - x_750 = lean_box(0); -} -x_751 = lean_ctor_get(x_743, 0); -lean_inc(x_751); -x_752 = lean_ctor_get(x_743, 1); -lean_inc(x_752); -x_753 = lean_ctor_get(x_743, 2); -lean_inc(x_753); -x_754 = lean_nat_dec_lt(x_752, x_753); -if (x_754 == 0) -{ -lean_object* x_755; lean_object* x_756; lean_object* x_757; lean_object* x_758; lean_object* x_759; lean_object* x_760; -lean_dec(x_753); -lean_dec(x_752); -lean_dec(x_751); + x_1078 = lean_box(0); +} +x_1079 = lean_ctor_get(x_31, 0); +lean_inc(x_1079); +x_1080 = lean_ctor_get(x_31, 1); +lean_inc(x_1080); +if (lean_is_exclusive(x_31)) { + lean_ctor_release(x_31, 0); + lean_ctor_release(x_31, 1); + x_1081 = x_31; +} else { + lean_dec_ref(x_31); + x_1081 = lean_box(0); +} +x_1082 = lean_ctor_get(x_1072, 0); +lean_inc(x_1082); +x_1083 = lean_ctor_get(x_1072, 1); +lean_inc(x_1083); +x_1084 = lean_ctor_get(x_1072, 2); +lean_inc(x_1084); +x_1085 = lean_nat_dec_lt(x_1083, x_1084); +if (x_1085 == 0) +{ +lean_object* x_1086; lean_object* x_1087; lean_object* x_1088; lean_object* x_1089; lean_object* x_1090; lean_object* x_1091; lean_object* x_1092; +lean_dec(x_1084); +lean_dec(x_1083); +lean_dec(x_1082); lean_dec(x_17); -if (lean_is_scalar(x_750)) { - x_755 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_1081)) { + x_1086 = lean_alloc_ctor(0, 2, 0); } else { - x_755 = x_750; + x_1086 = x_1081; } -lean_ctor_set(x_755, 0, x_748); -lean_ctor_set(x_755, 1, x_749); -if (lean_is_scalar(x_747)) { - x_756 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1086, 0, x_1079); +lean_ctor_set(x_1086, 1, x_1080); +if (lean_is_scalar(x_1078)) { + x_1087 = lean_alloc_ctor(0, 2, 0); } else { - x_756 = x_747; + x_1087 = x_1078; } -lean_ctor_set(x_756, 0, x_746); -lean_ctor_set(x_756, 1, x_755); -if (lean_is_scalar(x_745)) { - x_757 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1087, 0, x_1077); +lean_ctor_set(x_1087, 1, x_1086); +if (lean_is_scalar(x_1076)) { + x_1088 = lean_alloc_ctor(0, 2, 0); } else { - x_757 = x_745; + x_1088 = x_1076; } -lean_ctor_set(x_757, 0, x_744); -lean_ctor_set(x_757, 1, x_756); -x_758 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_758, 0, x_743); -lean_ctor_set(x_758, 1, x_757); +lean_ctor_set(x_1088, 0, x_1075); +lean_ctor_set(x_1088, 1, x_1087); +x_1089 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1089, 0, x_1072); +lean_ctor_set(x_1089, 1, x_1088); +if (lean_is_scalar(x_1074)) { + x_1090 = lean_alloc_ctor(0, 2, 0); +} else { + x_1090 = x_1074; +} +lean_ctor_set(x_1090, 0, x_1073); +lean_ctor_set(x_1090, 1, x_1089); lean_inc(x_2); -x_759 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_759, 0, x_2); -lean_ctor_set(x_759, 1, x_758); -x_760 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_760, 0, x_759); -x_18 = x_760; +x_1091 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1091, 0, x_2); +lean_ctor_set(x_1091, 1, x_1090); +x_1092 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_1092, 0, x_1091); +x_18 = x_1092; x_19 = x_14; goto block_26; } else { -lean_object* x_761; lean_object* x_762; uint8_t x_763; lean_object* x_764; lean_object* x_765; lean_object* x_766; lean_object* x_767; lean_object* x_768; lean_object* x_769; lean_object* x_770; -if (lean_is_exclusive(x_743)) { - lean_ctor_release(x_743, 0); - lean_ctor_release(x_743, 1); - lean_ctor_release(x_743, 2); - x_761 = x_743; -} else { - lean_dec_ref(x_743); - x_761 = lean_box(0); -} -x_762 = lean_array_fget(x_751, x_752); -x_763 = lean_unbox(x_762); -lean_dec(x_762); -x_764 = lean_unsigned_to_nat(1u); -x_765 = lean_nat_add(x_752, x_764); -lean_dec(x_752); -if (lean_is_scalar(x_761)) { - x_766 = lean_alloc_ctor(0, 3, 0); +lean_object* x_1093; lean_object* x_1094; uint8_t x_1095; lean_object* x_1096; lean_object* x_1097; lean_object* x_1098; lean_object* x_1099; lean_object* x_1100; lean_object* x_1101; uint8_t x_1102; +if (lean_is_exclusive(x_1072)) { + lean_ctor_release(x_1072, 0); + lean_ctor_release(x_1072, 1); + lean_ctor_release(x_1072, 2); + x_1093 = x_1072; +} else { + lean_dec_ref(x_1072); + x_1093 = lean_box(0); +} +x_1094 = lean_array_fget(x_1082, x_1083); +x_1095 = lean_unbox(x_1094); +lean_dec(x_1094); +x_1096 = lean_unsigned_to_nat(1u); +x_1097 = lean_nat_add(x_1083, x_1096); +lean_dec(x_1083); +if (lean_is_scalar(x_1093)) { + x_1098 = lean_alloc_ctor(0, 3, 0); +} else { + x_1098 = x_1093; +} +lean_ctor_set(x_1098, 0, x_1082); +lean_ctor_set(x_1098, 1, x_1097); +lean_ctor_set(x_1098, 2, x_1084); +x_1099 = lean_ctor_get(x_1073, 0); +lean_inc(x_1099); +x_1100 = lean_ctor_get(x_1073, 1); +lean_inc(x_1100); +x_1101 = lean_ctor_get(x_1073, 2); +lean_inc(x_1101); +x_1102 = lean_nat_dec_lt(x_1100, x_1101); +if (x_1102 == 0) +{ +lean_object* x_1103; lean_object* x_1104; lean_object* x_1105; lean_object* x_1106; lean_object* x_1107; lean_object* x_1108; lean_object* x_1109; +lean_dec(x_1101); +lean_dec(x_1100); +lean_dec(x_1099); +lean_dec(x_17); +if (lean_is_scalar(x_1081)) { + x_1103 = lean_alloc_ctor(0, 2, 0); } else { - x_766 = x_761; + x_1103 = x_1081; } -lean_ctor_set(x_766, 0, x_751); -lean_ctor_set(x_766, 1, x_765); -lean_ctor_set(x_766, 2, x_753); -lean_inc(x_17); -x_767 = l_Lean_Expr_app___override(x_746, x_17); -lean_inc(x_17); -x_768 = lean_array_push(x_748, x_17); -x_769 = l_Lean_Expr_bindingBody_x21(x_749); -lean_dec(x_749); -x_770 = lean_box(x_763); -switch (lean_obj_tag(x_770)) { -case 1: -{ -lean_object* x_771; lean_object* x_772; -lean_dec(x_17); -x_771 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__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); -lean_inc(x_7); -x_772 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_771, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_772) == 0) -{ -lean_object* x_773; lean_object* x_774; lean_object* x_775; lean_object* x_776; lean_object* x_777; lean_object* x_778; lean_object* x_779; -x_773 = lean_ctor_get(x_772, 1); -lean_inc(x_773); -lean_dec(x_772); -if (lean_is_scalar(x_750)) { - x_774 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1103, 0, x_1079); +lean_ctor_set(x_1103, 1, x_1080); +if (lean_is_scalar(x_1078)) { + x_1104 = lean_alloc_ctor(0, 2, 0); } else { - x_774 = x_750; + x_1104 = x_1078; } -lean_ctor_set(x_774, 0, x_768); -lean_ctor_set(x_774, 1, x_769); -if (lean_is_scalar(x_747)) { - x_775 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1104, 0, x_1077); +lean_ctor_set(x_1104, 1, x_1103); +if (lean_is_scalar(x_1076)) { + x_1105 = lean_alloc_ctor(0, 2, 0); } else { - x_775 = x_747; + x_1105 = x_1076; } -lean_ctor_set(x_775, 0, x_767); -lean_ctor_set(x_775, 1, x_774); -if (lean_is_scalar(x_745)) { - x_776 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1105, 0, x_1075); +lean_ctor_set(x_1105, 1, x_1104); +x_1106 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1106, 0, x_1098); +lean_ctor_set(x_1106, 1, x_1105); +if (lean_is_scalar(x_1074)) { + x_1107 = lean_alloc_ctor(0, 2, 0); } else { - x_776 = x_745; + x_1107 = x_1074; } -lean_ctor_set(x_776, 0, x_744); -lean_ctor_set(x_776, 1, x_775); -x_777 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_777, 0, x_766); -lean_ctor_set(x_777, 1, x_776); +lean_ctor_set(x_1107, 0, x_1073); +lean_ctor_set(x_1107, 1, x_1106); lean_inc(x_2); -x_778 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_778, 0, x_2); -lean_ctor_set(x_778, 1, x_777); -x_779 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_779, 0, x_778); -x_18 = x_779; -x_19 = x_773; +x_1108 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1108, 0, x_2); +lean_ctor_set(x_1108, 1, x_1107); +x_1109 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_1109, 0, x_1108); +x_18 = x_1109; +x_19 = x_14; goto block_26; } else { -lean_object* x_780; lean_object* x_781; lean_object* x_782; lean_object* x_783; -lean_dec(x_769); -lean_dec(x_768); -lean_dec(x_767); -lean_dec(x_766); -lean_dec(x_750); -lean_dec(x_747); -lean_dec(x_745); -lean_dec(x_744); -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); -x_780 = lean_ctor_get(x_772, 0); -lean_inc(x_780); -x_781 = lean_ctor_get(x_772, 1); -lean_inc(x_781); -if (lean_is_exclusive(x_772)) { - lean_ctor_release(x_772, 0); - lean_ctor_release(x_772, 1); - x_782 = x_772; +lean_object* x_1110; lean_object* x_1111; lean_object* x_1112; lean_object* x_1113; lean_object* x_1114; lean_object* x_1115; lean_object* x_1116; +if (lean_is_exclusive(x_1073)) { + lean_ctor_release(x_1073, 0); + lean_ctor_release(x_1073, 1); + lean_ctor_release(x_1073, 2); + x_1110 = x_1073; +} else { + lean_dec_ref(x_1073); + x_1110 = lean_box(0); +} +x_1111 = lean_array_fget(x_1099, x_1100); +x_1112 = lean_nat_add(x_1100, x_1096); +lean_dec(x_1100); +if (lean_is_scalar(x_1110)) { + x_1113 = lean_alloc_ctor(0, 3, 0); +} else { + x_1113 = x_1110; +} +lean_ctor_set(x_1113, 0, x_1099); +lean_ctor_set(x_1113, 1, x_1112); +lean_ctor_set(x_1113, 2, x_1101); +lean_inc(x_17); +x_1114 = l_Lean_Expr_app___override(x_1077, x_17); +x_1115 = l_Lean_Expr_bindingBody_x21(x_1080); +lean_dec(x_1080); +x_1116 = lean_box(x_1095); +switch (lean_obj_tag(x_1116)) { +case 0: +{ +lean_object* x_1117; lean_object* x_1118; lean_object* x_1119; lean_object* x_1120; lean_object* x_1121; lean_object* x_1122; lean_object* x_1123; lean_object* x_1124; +lean_dec(x_17); +x_1117 = lean_array_push(x_1079, x_1111); +if (lean_is_scalar(x_1081)) { + x_1118 = lean_alloc_ctor(0, 2, 0); +} else { + x_1118 = x_1081; +} +lean_ctor_set(x_1118, 0, x_1117); +lean_ctor_set(x_1118, 1, x_1115); +if (lean_is_scalar(x_1078)) { + x_1119 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_772); - x_782 = lean_box(0); + x_1119 = x_1078; } -if (lean_is_scalar(x_782)) { - x_783 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1119, 0, x_1114); +lean_ctor_set(x_1119, 1, x_1118); +if (lean_is_scalar(x_1076)) { + x_1120 = lean_alloc_ctor(0, 2, 0); } else { - x_783 = x_782; + x_1120 = x_1076; } -lean_ctor_set(x_783, 0, x_780); -lean_ctor_set(x_783, 1, x_781); -return x_783; +lean_ctor_set(x_1120, 0, x_1075); +lean_ctor_set(x_1120, 1, x_1119); +x_1121 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1121, 0, x_1098); +lean_ctor_set(x_1121, 1, x_1120); +if (lean_is_scalar(x_1074)) { + x_1122 = lean_alloc_ctor(0, 2, 0); +} else { + x_1122 = x_1074; } +lean_ctor_set(x_1122, 0, x_1113); +lean_ctor_set(x_1122, 1, x_1121); +lean_inc(x_2); +x_1123 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1123, 0, x_2); +lean_ctor_set(x_1123, 1, x_1122); +x_1124 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_1124, 0, x_1123); +x_18 = x_1124; +x_19 = x_14; +goto block_26; } case 2: { -lean_object* x_784; uint8_t x_785; -x_784 = lean_array_get_size(x_1); -x_785 = lean_nat_dec_lt(x_744, x_784); -lean_dec(x_784); -if (x_785 == 0) -{ -lean_object* x_786; lean_object* x_787; lean_object* x_788; -x_786 = l_Lean_Meta_Simp_instInhabitedResult; -x_787 = l___private_Init_GetElem_0__outOfBounds___rarg(x_786); +lean_object* x_1125; lean_object* x_1126; uint8_t x_1127; +lean_dec(x_1111); +lean_inc(x_17); +x_1125 = lean_array_push(x_1079, x_17); +x_1126 = lean_array_get_size(x_1); +x_1127 = lean_nat_dec_lt(x_1075, x_1126); +lean_dec(x_1126); +if (x_1127 == 0) +{ +lean_object* x_1128; lean_object* x_1129; lean_object* x_1130; +x_1128 = l_Lean_Meta_Simp_instInhabitedResult; +x_1129 = l___private_Init_GetElem_0__outOfBounds___rarg(x_1128); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_787); -x_788 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_787, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_788) == 0) -{ -lean_object* x_789; lean_object* x_790; lean_object* x_791; lean_object* x_792; lean_object* x_793; lean_object* x_794; 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_object* x_802; lean_object* x_803; -x_789 = lean_ctor_get(x_788, 0); -lean_inc(x_789); -x_790 = lean_ctor_get(x_788, 1); -lean_inc(x_790); -lean_dec(x_788); -x_791 = lean_nat_add(x_744, x_764); -lean_dec(x_744); -x_792 = lean_ctor_get(x_787, 0); -lean_inc(x_792); -lean_dec(x_787); -lean_inc(x_789); -lean_inc(x_792); -x_793 = l_Lean_mkAppB(x_767, x_792, x_789); -x_794 = lean_array_push(x_768, x_792); -x_795 = lean_array_push(x_794, x_789); -x_796 = l_Lean_Expr_bindingBody_x21(x_769); -lean_dec(x_769); -x_797 = l_Lean_Expr_bindingBody_x21(x_796); -lean_dec(x_796); -if (lean_is_scalar(x_750)) { - x_798 = lean_alloc_ctor(0, 2, 0); -} else { - x_798 = x_750; -} -lean_ctor_set(x_798, 0, x_795); -lean_ctor_set(x_798, 1, x_797); -if (lean_is_scalar(x_747)) { - x_799 = lean_alloc_ctor(0, 2, 0); -} else { - x_799 = x_747; -} -lean_ctor_set(x_799, 0, x_793); -lean_ctor_set(x_799, 1, x_798); -if (lean_is_scalar(x_745)) { - x_800 = lean_alloc_ctor(0, 2, 0); -} else { - x_800 = x_745; -} -lean_ctor_set(x_800, 0, x_791); -lean_ctor_set(x_800, 1, x_799); -x_801 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_801, 0, x_766); -lean_ctor_set(x_801, 1, x_800); +lean_inc(x_1129); +x_1130 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_1129, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_1130) == 0) +{ +lean_object* x_1131; lean_object* x_1132; lean_object* x_1133; lean_object* x_1134; lean_object* x_1135; lean_object* x_1136; lean_object* x_1137; lean_object* x_1138; lean_object* x_1139; lean_object* x_1140; lean_object* x_1141; lean_object* x_1142; lean_object* x_1143; lean_object* x_1144; lean_object* x_1145; lean_object* x_1146; +x_1131 = lean_ctor_get(x_1130, 0); +lean_inc(x_1131); +x_1132 = lean_ctor_get(x_1130, 1); +lean_inc(x_1132); +lean_dec(x_1130); +x_1133 = lean_nat_add(x_1075, x_1096); +lean_dec(x_1075); +x_1134 = lean_ctor_get(x_1129, 0); +lean_inc(x_1134); +lean_dec(x_1129); +lean_inc(x_1131); +lean_inc(x_1134); +x_1135 = l_Lean_mkAppB(x_1114, x_1134, x_1131); +x_1136 = lean_array_push(x_1125, x_1134); +x_1137 = lean_array_push(x_1136, x_1131); +x_1138 = l_Lean_Expr_bindingBody_x21(x_1115); +lean_dec(x_1115); +x_1139 = l_Lean_Expr_bindingBody_x21(x_1138); +lean_dec(x_1138); +if (lean_is_scalar(x_1081)) { + x_1140 = lean_alloc_ctor(0, 2, 0); +} else { + x_1140 = x_1081; +} +lean_ctor_set(x_1140, 0, x_1137); +lean_ctor_set(x_1140, 1, x_1139); +if (lean_is_scalar(x_1078)) { + x_1141 = lean_alloc_ctor(0, 2, 0); +} else { + x_1141 = x_1078; +} +lean_ctor_set(x_1141, 0, x_1135); +lean_ctor_set(x_1141, 1, x_1140); +if (lean_is_scalar(x_1076)) { + x_1142 = lean_alloc_ctor(0, 2, 0); +} else { + x_1142 = x_1076; +} +lean_ctor_set(x_1142, 0, x_1133); +lean_ctor_set(x_1142, 1, x_1141); +x_1143 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1143, 0, x_1098); +lean_ctor_set(x_1143, 1, x_1142); +if (lean_is_scalar(x_1074)) { + x_1144 = lean_alloc_ctor(0, 2, 0); +} else { + x_1144 = x_1074; +} +lean_ctor_set(x_1144, 0, x_1113); +lean_ctor_set(x_1144, 1, x_1143); lean_inc(x_2); -x_802 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_802, 0, x_2); -lean_ctor_set(x_802, 1, x_801); -x_803 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_803, 0, x_802); -x_18 = x_803; -x_19 = x_790; +x_1145 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1145, 0, x_2); +lean_ctor_set(x_1145, 1, x_1144); +x_1146 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_1146, 0, x_1145); +x_18 = x_1146; +x_19 = x_1132; goto block_26; } else { -lean_object* x_804; lean_object* x_805; lean_object* x_806; lean_object* x_807; -lean_dec(x_787); -lean_dec(x_769); -lean_dec(x_768); -lean_dec(x_767); -lean_dec(x_766); -lean_dec(x_750); -lean_dec(x_747); -lean_dec(x_745); -lean_dec(x_744); +lean_object* x_1147; lean_object* x_1148; lean_object* x_1149; lean_object* x_1150; +lean_dec(x_1129); +lean_dec(x_1125); +lean_dec(x_1115); +lean_dec(x_1114); +lean_dec(x_1113); +lean_dec(x_1098); +lean_dec(x_1081); +lean_dec(x_1078); +lean_dec(x_1076); +lean_dec(x_1075); +lean_dec(x_1074); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -22190,106 +26540,115 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_804 = lean_ctor_get(x_788, 0); -lean_inc(x_804); -x_805 = lean_ctor_get(x_788, 1); -lean_inc(x_805); -if (lean_is_exclusive(x_788)) { - lean_ctor_release(x_788, 0); - lean_ctor_release(x_788, 1); - x_806 = x_788; +x_1147 = lean_ctor_get(x_1130, 0); +lean_inc(x_1147); +x_1148 = lean_ctor_get(x_1130, 1); +lean_inc(x_1148); +if (lean_is_exclusive(x_1130)) { + lean_ctor_release(x_1130, 0); + lean_ctor_release(x_1130, 1); + x_1149 = x_1130; } else { - lean_dec_ref(x_788); - x_806 = lean_box(0); + lean_dec_ref(x_1130); + x_1149 = lean_box(0); } -if (lean_is_scalar(x_806)) { - x_807 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_1149)) { + x_1150 = lean_alloc_ctor(1, 2, 0); } else { - x_807 = x_806; + x_1150 = x_1149; } -lean_ctor_set(x_807, 0, x_804); -lean_ctor_set(x_807, 1, x_805); -return x_807; +lean_ctor_set(x_1150, 0, x_1147); +lean_ctor_set(x_1150, 1, x_1148); +return x_1150; } } else { -lean_object* x_808; lean_object* x_809; -x_808 = lean_array_fget(x_1, x_744); +lean_object* x_1151; lean_object* x_1152; +x_1151 = lean_array_fget(x_1, x_1075); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_808); -x_809 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_808, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_809) == 0) -{ -lean_object* x_810; lean_object* x_811; lean_object* x_812; lean_object* x_813; 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_object* x_820; lean_object* x_821; lean_object* x_822; lean_object* x_823; lean_object* x_824; -x_810 = lean_ctor_get(x_809, 0); -lean_inc(x_810); -x_811 = lean_ctor_get(x_809, 1); -lean_inc(x_811); -lean_dec(x_809); -x_812 = lean_nat_add(x_744, x_764); -lean_dec(x_744); -x_813 = lean_ctor_get(x_808, 0); -lean_inc(x_813); -lean_dec(x_808); -lean_inc(x_810); -lean_inc(x_813); -x_814 = l_Lean_mkAppB(x_767, x_813, x_810); -x_815 = lean_array_push(x_768, x_813); -x_816 = lean_array_push(x_815, x_810); -x_817 = l_Lean_Expr_bindingBody_x21(x_769); -lean_dec(x_769); -x_818 = l_Lean_Expr_bindingBody_x21(x_817); -lean_dec(x_817); -if (lean_is_scalar(x_750)) { - x_819 = lean_alloc_ctor(0, 2, 0); -} else { - x_819 = x_750; -} -lean_ctor_set(x_819, 0, x_816); -lean_ctor_set(x_819, 1, x_818); -if (lean_is_scalar(x_747)) { - x_820 = lean_alloc_ctor(0, 2, 0); -} else { - x_820 = x_747; -} -lean_ctor_set(x_820, 0, x_814); -lean_ctor_set(x_820, 1, x_819); -if (lean_is_scalar(x_745)) { - x_821 = lean_alloc_ctor(0, 2, 0); -} else { - x_821 = x_745; -} -lean_ctor_set(x_821, 0, x_812); -lean_ctor_set(x_821, 1, x_820); -x_822 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_822, 0, x_766); -lean_ctor_set(x_822, 1, x_821); +lean_inc(x_1151); +x_1152 = l_Lean_Meta_Simp_Result_getProof_x27(x_17, x_1151, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_1152) == 0) +{ +lean_object* x_1153; lean_object* x_1154; lean_object* x_1155; lean_object* x_1156; lean_object* x_1157; lean_object* x_1158; lean_object* x_1159; lean_object* x_1160; lean_object* x_1161; lean_object* x_1162; lean_object* x_1163; lean_object* x_1164; lean_object* x_1165; lean_object* x_1166; lean_object* x_1167; lean_object* x_1168; +x_1153 = lean_ctor_get(x_1152, 0); +lean_inc(x_1153); +x_1154 = lean_ctor_get(x_1152, 1); +lean_inc(x_1154); +lean_dec(x_1152); +x_1155 = lean_nat_add(x_1075, x_1096); +lean_dec(x_1075); +x_1156 = lean_ctor_get(x_1151, 0); +lean_inc(x_1156); +lean_dec(x_1151); +lean_inc(x_1153); +lean_inc(x_1156); +x_1157 = l_Lean_mkAppB(x_1114, x_1156, x_1153); +x_1158 = lean_array_push(x_1125, x_1156); +x_1159 = lean_array_push(x_1158, x_1153); +x_1160 = l_Lean_Expr_bindingBody_x21(x_1115); +lean_dec(x_1115); +x_1161 = l_Lean_Expr_bindingBody_x21(x_1160); +lean_dec(x_1160); +if (lean_is_scalar(x_1081)) { + x_1162 = lean_alloc_ctor(0, 2, 0); +} else { + x_1162 = x_1081; +} +lean_ctor_set(x_1162, 0, x_1159); +lean_ctor_set(x_1162, 1, x_1161); +if (lean_is_scalar(x_1078)) { + x_1163 = lean_alloc_ctor(0, 2, 0); +} else { + x_1163 = x_1078; +} +lean_ctor_set(x_1163, 0, x_1157); +lean_ctor_set(x_1163, 1, x_1162); +if (lean_is_scalar(x_1076)) { + x_1164 = lean_alloc_ctor(0, 2, 0); +} else { + x_1164 = x_1076; +} +lean_ctor_set(x_1164, 0, x_1155); +lean_ctor_set(x_1164, 1, x_1163); +x_1165 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1165, 0, x_1098); +lean_ctor_set(x_1165, 1, x_1164); +if (lean_is_scalar(x_1074)) { + x_1166 = lean_alloc_ctor(0, 2, 0); +} else { + x_1166 = x_1074; +} +lean_ctor_set(x_1166, 0, x_1113); +lean_ctor_set(x_1166, 1, x_1165); lean_inc(x_2); -x_823 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_823, 0, x_2); -lean_ctor_set(x_823, 1, x_822); -x_824 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_824, 0, x_823); -x_18 = x_824; -x_19 = x_811; +x_1167 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1167, 0, x_2); +lean_ctor_set(x_1167, 1, x_1166); +x_1168 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_1168, 0, x_1167); +x_18 = x_1168; +x_19 = x_1154; goto block_26; } else { -lean_object* x_825; lean_object* x_826; lean_object* x_827; lean_object* x_828; -lean_dec(x_808); -lean_dec(x_769); -lean_dec(x_768); -lean_dec(x_767); -lean_dec(x_766); -lean_dec(x_750); -lean_dec(x_747); -lean_dec(x_745); -lean_dec(x_744); +lean_object* x_1169; lean_object* x_1170; lean_object* x_1171; lean_object* x_1172; +lean_dec(x_1151); +lean_dec(x_1125); +lean_dec(x_1115); +lean_dec(x_1114); +lean_dec(x_1113); +lean_dec(x_1098); +lean_dec(x_1081); +lean_dec(x_1078); +lean_dec(x_1076); +lean_dec(x_1075); +lean_dec(x_1074); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -22298,286 +26657,243 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_825 = lean_ctor_get(x_809, 0); -lean_inc(x_825); -x_826 = lean_ctor_get(x_809, 1); -lean_inc(x_826); -if (lean_is_exclusive(x_809)) { - lean_ctor_release(x_809, 0); - lean_ctor_release(x_809, 1); - x_827 = x_809; +x_1169 = lean_ctor_get(x_1152, 0); +lean_inc(x_1169); +x_1170 = lean_ctor_get(x_1152, 1); +lean_inc(x_1170); +if (lean_is_exclusive(x_1152)) { + lean_ctor_release(x_1152, 0); + lean_ctor_release(x_1152, 1); + x_1171 = x_1152; } else { - lean_dec_ref(x_809); - x_827 = lean_box(0); + lean_dec_ref(x_1152); + x_1171 = lean_box(0); } -if (lean_is_scalar(x_827)) { - x_828 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_1171)) { + x_1172 = lean_alloc_ctor(1, 2, 0); } else { - x_828 = x_827; + x_1172 = x_1171; } -lean_ctor_set(x_828, 0, x_825); -lean_ctor_set(x_828, 1, x_826); -return x_828; +lean_ctor_set(x_1172, 0, x_1169); +lean_ctor_set(x_1172, 1, x_1170); +return x_1172; } } } -case 4: -{ -lean_object* x_829; lean_object* x_830; -lean_dec(x_17); -x_829 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__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); -lean_inc(x_7); -x_830 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_829, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_830) == 0) +case 3: { -lean_object* x_831; lean_object* x_832; lean_object* x_833; lean_object* x_834; lean_object* x_835; lean_object* x_836; lean_object* x_837; -x_831 = lean_ctor_get(x_830, 1); -lean_inc(x_831); -lean_dec(x_830); -if (lean_is_scalar(x_750)) { - x_832 = lean_alloc_ctor(0, 2, 0); -} else { - x_832 = x_750; -} -lean_ctor_set(x_832, 0, x_768); -lean_ctor_set(x_832, 1, x_769); -if (lean_is_scalar(x_747)) { - x_833 = lean_alloc_ctor(0, 2, 0); -} else { - x_833 = x_747; -} -lean_ctor_set(x_833, 0, x_767); -lean_ctor_set(x_833, 1, x_832); -if (lean_is_scalar(x_745)) { - x_834 = lean_alloc_ctor(0, 2, 0); +lean_object* x_1173; lean_object* x_1174; lean_object* x_1175; lean_object* x_1176; lean_object* x_1177; lean_object* x_1178; lean_object* x_1179; lean_object* x_1180; +lean_dec(x_1111); +x_1173 = lean_array_push(x_1079, x_17); +if (lean_is_scalar(x_1081)) { + x_1174 = lean_alloc_ctor(0, 2, 0); } else { - x_834 = x_745; -} -lean_ctor_set(x_834, 0, x_744); -lean_ctor_set(x_834, 1, x_833); -x_835 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_835, 0, x_766); -lean_ctor_set(x_835, 1, x_834); -lean_inc(x_2); -x_836 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_836, 0, x_2); -lean_ctor_set(x_836, 1, x_835); -x_837 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_837, 0, x_836); -x_18 = x_837; -x_19 = x_831; -goto block_26; + x_1174 = x_1081; } -else -{ -lean_object* x_838; lean_object* x_839; lean_object* x_840; lean_object* x_841; -lean_dec(x_769); -lean_dec(x_768); -lean_dec(x_767); -lean_dec(x_766); -lean_dec(x_750); -lean_dec(x_747); -lean_dec(x_745); -lean_dec(x_744); -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); -x_838 = lean_ctor_get(x_830, 0); -lean_inc(x_838); -x_839 = lean_ctor_get(x_830, 1); -lean_inc(x_839); -if (lean_is_exclusive(x_830)) { - lean_ctor_release(x_830, 0); - lean_ctor_release(x_830, 1); - x_840 = x_830; +lean_ctor_set(x_1174, 0, x_1173); +lean_ctor_set(x_1174, 1, x_1115); +if (lean_is_scalar(x_1078)) { + x_1175 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_830); - x_840 = lean_box(0); + x_1175 = x_1078; } -if (lean_is_scalar(x_840)) { - x_841 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1175, 0, x_1114); +lean_ctor_set(x_1175, 1, x_1174); +if (lean_is_scalar(x_1076)) { + x_1176 = lean_alloc_ctor(0, 2, 0); } else { - x_841 = x_840; + x_1176 = x_1076; } -lean_ctor_set(x_841, 0, x_838); -lean_ctor_set(x_841, 1, x_839); -return x_841; +lean_ctor_set(x_1176, 0, x_1075); +lean_ctor_set(x_1176, 1, x_1175); +x_1177 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1177, 0, x_1098); +lean_ctor_set(x_1177, 1, x_1176); +if (lean_is_scalar(x_1074)) { + x_1178 = lean_alloc_ctor(0, 2, 0); +} else { + x_1178 = x_1074; } +lean_ctor_set(x_1178, 0, x_1113); +lean_ctor_set(x_1178, 1, x_1177); +lean_inc(x_2); +x_1179 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1179, 0, x_2); +lean_ctor_set(x_1179, 1, x_1178); +x_1180 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_1180, 0, x_1179); +x_18 = x_1180; +x_19 = x_14; +goto block_26; } case 5: { -lean_object* x_842; lean_object* x_843; lean_object* x_844; -lean_dec(x_750); -lean_dec(x_747); -lean_dec(x_745); -x_842 = l_Lean_Expr_bindingDomain_x21(x_769); -x_843 = lean_expr_instantiate_rev(x_842, x_768); -lean_dec(x_842); +lean_object* x_1181; lean_object* x_1182; lean_object* x_1183; lean_object* x_1184; +lean_dec(x_1111); +lean_dec(x_1081); +lean_dec(x_1078); +lean_dec(x_1076); +lean_dec(x_1074); +lean_inc(x_17); +x_1181 = lean_array_push(x_1079, x_17); +x_1182 = l_Lean_Expr_bindingDomain_x21(x_1115); +x_1183 = lean_expr_instantiate_rev(x_1182, x_1181); +lean_dec(x_1182); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_17); -x_844 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_844) == 0) -{ -lean_object* x_845; lean_object* x_846; lean_object* x_847; -x_845 = lean_ctor_get(x_844, 0); -lean_inc(x_845); -x_846 = lean_ctor_get(x_844, 1); -lean_inc(x_846); -lean_dec(x_844); +x_1184 = lean_infer_type(x_17, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_1184) == 0) +{ +lean_object* x_1185; lean_object* x_1186; lean_object* x_1187; +x_1185 = lean_ctor_get(x_1184, 0); +lean_inc(x_1185); +x_1186 = lean_ctor_get(x_1184, 1); +lean_inc(x_1186); +lean_dec(x_1184); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_843); -x_847 = l_Lean_Meta_isExprDefEq(x_845, x_843, x_10, x_11, x_12, x_13, x_846); -if (lean_obj_tag(x_847) == 0) -{ -lean_object* x_848; uint8_t x_849; -x_848 = lean_ctor_get(x_847, 0); -lean_inc(x_848); -x_849 = lean_unbox(x_848); -lean_dec(x_848); -if (x_849 == 0) -{ -lean_object* x_850; lean_object* x_851; lean_object* x_852; +lean_inc(x_1183); +x_1187 = l_Lean_Meta_isExprDefEq(x_1185, x_1183, x_10, x_11, x_12, x_13, x_1186); +if (lean_obj_tag(x_1187) == 0) +{ +lean_object* x_1188; uint8_t x_1189; +x_1188 = lean_ctor_get(x_1187, 0); +lean_inc(x_1188); +x_1189 = lean_unbox(x_1188); +lean_dec(x_1188); +if (x_1189 == 0) +{ +lean_object* x_1190; lean_object* x_1191; lean_object* x_1192; lean_dec(x_17); -x_850 = lean_ctor_get(x_847, 1); -lean_inc(x_850); -lean_dec(x_847); -x_851 = lean_box(0); +x_1190 = lean_ctor_get(x_1187, 1); +lean_inc(x_1190); +lean_dec(x_1187); +x_1191 = lean_box(0); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); -lean_inc(x_843); -x_852 = l_Lean_Meta_trySynthInstance(x_843, x_851, x_10, x_11, x_12, x_13, x_850); -if (lean_obj_tag(x_852) == 0) -{ -lean_object* x_853; -x_853 = lean_ctor_get(x_852, 0); -lean_inc(x_853); -if (lean_obj_tag(x_853) == 1) -{ -lean_object* x_854; lean_object* x_855; lean_object* x_856; lean_object* x_857; lean_object* x_858; -lean_dec(x_843); -x_854 = lean_ctor_get(x_852, 1); -lean_inc(x_854); -lean_dec(x_852); -x_855 = lean_ctor_get(x_853, 0); -lean_inc(x_855); -lean_dec(x_853); +lean_inc(x_1183); +x_1192 = l_Lean_Meta_trySynthInstance(x_1183, x_1191, x_10, x_11, x_12, x_13, x_1190); +if (lean_obj_tag(x_1192) == 0) +{ +lean_object* x_1193; +x_1193 = lean_ctor_get(x_1192, 0); +lean_inc(x_1193); +if (lean_obj_tag(x_1193) == 1) +{ +lean_object* x_1194; lean_object* x_1195; lean_object* x_1196; lean_object* x_1197; lean_object* x_1198; +lean_dec(x_1183); +x_1194 = lean_ctor_get(x_1192, 1); +lean_inc(x_1194); +lean_dec(x_1192); +x_1195 = lean_ctor_get(x_1193, 0); +lean_inc(x_1195); +lean_dec(x_1193); lean_inc(x_2); -x_856 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_744, x_766, x_2, x_767, x_768, x_769, x_855, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_854); -lean_dec(x_769); -x_857 = lean_ctor_get(x_856, 0); -lean_inc(x_857); -x_858 = lean_ctor_get(x_856, 1); -lean_inc(x_858); -lean_dec(x_856); -x_18 = x_857; -x_19 = x_858; +x_1196 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_1075, x_1098, x_1113, x_2, x_1114, x_1181, x_1115, x_1195, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_1194); +lean_dec(x_1115); +x_1197 = lean_ctor_get(x_1196, 0); +lean_inc(x_1197); +x_1198 = lean_ctor_get(x_1196, 1); +lean_inc(x_1198); +lean_dec(x_1196); +x_18 = x_1197; +x_19 = x_1198; goto block_26; } else { -lean_object* x_859; lean_object* x_860; lean_object* x_861; lean_object* x_862; uint8_t x_863; -lean_dec(x_853); -x_859 = lean_ctor_get(x_852, 1); -lean_inc(x_859); -lean_dec(x_852); -x_860 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; -x_861 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_860, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_859); -x_862 = lean_ctor_get(x_861, 0); -lean_inc(x_862); -x_863 = lean_unbox(x_862); -lean_dec(x_862); -if (x_863 == 0) -{ -lean_object* x_864; lean_object* x_865; lean_object* x_866; lean_object* x_867; lean_object* x_868; -lean_dec(x_843); -x_864 = lean_ctor_get(x_861, 1); -lean_inc(x_864); -lean_dec(x_861); -x_865 = lean_box(0); -x_866 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_851, x_768, x_769, x_767, x_744, x_766, x_865, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_864); -x_867 = lean_ctor_get(x_866, 0); -lean_inc(x_867); -x_868 = lean_ctor_get(x_866, 1); -lean_inc(x_868); -lean_dec(x_866); -x_18 = x_867; -x_19 = x_868; +lean_object* x_1199; lean_object* x_1200; lean_object* x_1201; lean_object* x_1202; uint8_t x_1203; +lean_dec(x_1193); +x_1199 = lean_ctor_get(x_1192, 1); +lean_inc(x_1199); +lean_dec(x_1192); +x_1200 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__3; +x_1201 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(x_1200, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_1199); +x_1202 = lean_ctor_get(x_1201, 0); +lean_inc(x_1202); +x_1203 = lean_unbox(x_1202); +lean_dec(x_1202); +if (x_1203 == 0) +{ +lean_object* x_1204; lean_object* x_1205; lean_object* x_1206; lean_object* x_1207; lean_object* x_1208; +lean_dec(x_1183); +x_1204 = lean_ctor_get(x_1201, 1); +lean_inc(x_1204); +lean_dec(x_1201); +x_1205 = lean_box(0); +x_1206 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_1191, x_1181, x_1115, x_1114, x_1075, x_1098, x_1113, x_1205, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_1204); +x_1207 = lean_ctor_get(x_1206, 0); +lean_inc(x_1207); +x_1208 = lean_ctor_get(x_1206, 1); +lean_inc(x_1208); +lean_dec(x_1206); +x_18 = x_1207; +x_19 = x_1208; goto block_26; } else { -lean_object* x_869; lean_object* x_870; lean_object* x_871; lean_object* x_872; lean_object* x_873; lean_object* x_874; lean_object* x_875; lean_object* x_876; lean_object* x_877; lean_object* x_878; lean_object* x_879; lean_object* x_880; lean_object* x_881; -x_869 = lean_ctor_get(x_861, 1); -lean_inc(x_869); -if (lean_is_exclusive(x_861)) { - lean_ctor_release(x_861, 0); - lean_ctor_release(x_861, 1); - x_870 = x_861; -} else { - lean_dec_ref(x_861); - x_870 = lean_box(0); -} -x_871 = l_Lean_indentExpr(x_843); -x_872 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; -if (lean_is_scalar(x_870)) { - x_873 = lean_alloc_ctor(7, 2, 0); -} else { - x_873 = x_870; - lean_ctor_set_tag(x_873, 7); -} -lean_ctor_set(x_873, 0, x_872); -lean_ctor_set(x_873, 1, x_871); -x_874 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; -x_875 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_875, 0, x_873); -lean_ctor_set(x_875, 1, x_874); -x_876 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_860, x_875, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_869); -x_877 = lean_ctor_get(x_876, 0); -lean_inc(x_877); -x_878 = lean_ctor_get(x_876, 1); -lean_inc(x_878); -lean_dec(x_876); -x_879 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_851, x_768, x_769, x_767, x_744, x_766, x_877, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_878); -lean_dec(x_877); -x_880 = lean_ctor_get(x_879, 0); -lean_inc(x_880); -x_881 = lean_ctor_get(x_879, 1); -lean_inc(x_881); -lean_dec(x_879); -x_18 = x_880; -x_19 = x_881; +lean_object* x_1209; lean_object* x_1210; lean_object* x_1211; lean_object* x_1212; lean_object* x_1213; lean_object* x_1214; lean_object* x_1215; lean_object* x_1216; lean_object* x_1217; lean_object* x_1218; lean_object* x_1219; lean_object* x_1220; lean_object* x_1221; +x_1209 = lean_ctor_get(x_1201, 1); +lean_inc(x_1209); +if (lean_is_exclusive(x_1201)) { + lean_ctor_release(x_1201, 0); + lean_ctor_release(x_1201, 1); + x_1210 = x_1201; +} else { + lean_dec_ref(x_1201); + x_1210 = lean_box(0); +} +x_1211 = l_Lean_indentExpr(x_1183); +x_1212 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__5; +if (lean_is_scalar(x_1210)) { + x_1213 = lean_alloc_ctor(7, 2, 0); +} else { + x_1213 = x_1210; + lean_ctor_set_tag(x_1213, 7); +} +lean_ctor_set(x_1213, 0, x_1212); +lean_ctor_set(x_1213, 1, x_1211); +x_1214 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_congrArgs___spec__3___closed__15; +x_1215 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_1215, 0, x_1213); +lean_ctor_set(x_1215, 1, x_1214); +x_1216 = l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(x_1200, x_1215, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_1209); +x_1217 = lean_ctor_get(x_1216, 0); +lean_inc(x_1217); +x_1218 = lean_ctor_get(x_1216, 1); +lean_inc(x_1218); +lean_dec(x_1216); +x_1219 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__2(x_1191, x_1181, x_1115, x_1114, x_1075, x_1098, x_1113, x_1217, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_1218); +lean_dec(x_1217); +x_1220 = lean_ctor_get(x_1219, 0); +lean_inc(x_1220); +x_1221 = lean_ctor_get(x_1219, 1); +lean_inc(x_1221); +lean_dec(x_1219); +x_18 = x_1220; +x_19 = x_1221; goto block_26; } } } else { -lean_object* x_882; lean_object* x_883; lean_object* x_884; lean_object* x_885; -lean_dec(x_843); -lean_dec(x_769); -lean_dec(x_768); -lean_dec(x_767); -lean_dec(x_766); -lean_dec(x_744); +lean_object* x_1222; lean_object* x_1223; lean_object* x_1224; lean_object* x_1225; +lean_dec(x_1183); +lean_dec(x_1181); +lean_dec(x_1115); +lean_dec(x_1114); +lean_dec(x_1113); +lean_dec(x_1098); +lean_dec(x_1075); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -22586,57 +26902,58 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_882 = lean_ctor_get(x_852, 0); -lean_inc(x_882); -x_883 = lean_ctor_get(x_852, 1); -lean_inc(x_883); -if (lean_is_exclusive(x_852)) { - lean_ctor_release(x_852, 0); - lean_ctor_release(x_852, 1); - x_884 = x_852; +x_1222 = lean_ctor_get(x_1192, 0); +lean_inc(x_1222); +x_1223 = lean_ctor_get(x_1192, 1); +lean_inc(x_1223); +if (lean_is_exclusive(x_1192)) { + lean_ctor_release(x_1192, 0); + lean_ctor_release(x_1192, 1); + x_1224 = x_1192; } else { - lean_dec_ref(x_852); - x_884 = lean_box(0); + lean_dec_ref(x_1192); + x_1224 = lean_box(0); } -if (lean_is_scalar(x_884)) { - x_885 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_1224)) { + x_1225 = lean_alloc_ctor(1, 2, 0); } else { - x_885 = x_884; + x_1225 = x_1224; } -lean_ctor_set(x_885, 0, x_882); -lean_ctor_set(x_885, 1, x_883); -return x_885; +lean_ctor_set(x_1225, 0, x_1222); +lean_ctor_set(x_1225, 1, x_1223); +return x_1225; } } else { -lean_object* x_886; lean_object* x_887; lean_object* x_888; lean_object* x_889; -lean_dec(x_843); -x_886 = lean_ctor_get(x_847, 1); -lean_inc(x_886); -lean_dec(x_847); +lean_object* x_1226; lean_object* x_1227; lean_object* x_1228; lean_object* x_1229; +lean_dec(x_1183); +x_1226 = lean_ctor_get(x_1187, 1); +lean_inc(x_1226); +lean_dec(x_1187); lean_inc(x_2); -x_887 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_744, x_766, x_2, x_767, x_768, x_769, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_886); -lean_dec(x_769); -x_888 = lean_ctor_get(x_887, 0); -lean_inc(x_888); -x_889 = lean_ctor_get(x_887, 1); -lean_inc(x_889); -lean_dec(x_887); -x_18 = x_888; -x_19 = x_889; +x_1227 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___lambda__1(x_1075, x_1098, x_1113, x_2, x_1114, x_1181, x_1115, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_1226); +lean_dec(x_1115); +x_1228 = lean_ctor_get(x_1227, 0); +lean_inc(x_1228); +x_1229 = lean_ctor_get(x_1227, 1); +lean_inc(x_1229); +lean_dec(x_1227); +x_18 = x_1228; +x_19 = x_1229; goto block_26; } } else { -lean_object* x_890; lean_object* x_891; lean_object* x_892; lean_object* x_893; -lean_dec(x_843); -lean_dec(x_769); -lean_dec(x_768); -lean_dec(x_767); -lean_dec(x_766); -lean_dec(x_744); +lean_object* x_1230; lean_object* x_1231; lean_object* x_1232; lean_object* x_1233; +lean_dec(x_1183); +lean_dec(x_1181); +lean_dec(x_1115); +lean_dec(x_1114); +lean_dec(x_1113); +lean_dec(x_1098); +lean_dec(x_1075); lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); @@ -22646,37 +26963,38 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_890 = lean_ctor_get(x_847, 0); -lean_inc(x_890); -x_891 = lean_ctor_get(x_847, 1); -lean_inc(x_891); -if (lean_is_exclusive(x_847)) { - lean_ctor_release(x_847, 0); - lean_ctor_release(x_847, 1); - x_892 = x_847; +x_1230 = lean_ctor_get(x_1187, 0); +lean_inc(x_1230); +x_1231 = lean_ctor_get(x_1187, 1); +lean_inc(x_1231); +if (lean_is_exclusive(x_1187)) { + lean_ctor_release(x_1187, 0); + lean_ctor_release(x_1187, 1); + x_1232 = x_1187; } else { - lean_dec_ref(x_847); - x_892 = lean_box(0); + lean_dec_ref(x_1187); + x_1232 = lean_box(0); } -if (lean_is_scalar(x_892)) { - x_893 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_1232)) { + x_1233 = lean_alloc_ctor(1, 2, 0); } else { - x_893 = x_892; + x_1233 = x_1232; } -lean_ctor_set(x_893, 0, x_890); -lean_ctor_set(x_893, 1, x_891); -return x_893; +lean_ctor_set(x_1233, 0, x_1230); +lean_ctor_set(x_1233, 1, x_1231); +return x_1233; } } else { -lean_object* x_894; lean_object* x_895; lean_object* x_896; lean_object* x_897; -lean_dec(x_843); -lean_dec(x_769); -lean_dec(x_768); -lean_dec(x_767); -lean_dec(x_766); -lean_dec(x_744); +lean_object* x_1234; lean_object* x_1235; lean_object* x_1236; lean_object* x_1237; +lean_dec(x_1183); +lean_dec(x_1181); +lean_dec(x_1115); +lean_dec(x_1114); +lean_dec(x_1113); +lean_dec(x_1098); +lean_dec(x_1075); lean_dec(x_17); lean_dec(x_13); lean_dec(x_12); @@ -22686,67 +27004,134 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_2); -x_894 = lean_ctor_get(x_844, 0); -lean_inc(x_894); -x_895 = lean_ctor_get(x_844, 1); -lean_inc(x_895); -if (lean_is_exclusive(x_844)) { - lean_ctor_release(x_844, 0); - lean_ctor_release(x_844, 1); - x_896 = x_844; +x_1234 = lean_ctor_get(x_1184, 0); +lean_inc(x_1234); +x_1235 = lean_ctor_get(x_1184, 1); +lean_inc(x_1235); +if (lean_is_exclusive(x_1184)) { + lean_ctor_release(x_1184, 0); + lean_ctor_release(x_1184, 1); + x_1236 = x_1184; } else { - lean_dec_ref(x_844); - x_896 = lean_box(0); + lean_dec_ref(x_1184); + x_1236 = lean_box(0); } -if (lean_is_scalar(x_896)) { - x_897 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_1236)) { + x_1237 = lean_alloc_ctor(1, 2, 0); } else { - x_897 = x_896; + x_1237 = x_1236; } -lean_ctor_set(x_897, 0, x_894); -lean_ctor_set(x_897, 1, x_895); -return x_897; +lean_ctor_set(x_1237, 0, x_1234); +lean_ctor_set(x_1237, 1, x_1235); +return x_1237; } } default: { -lean_object* x_898; lean_object* x_899; lean_object* x_900; lean_object* x_901; lean_object* x_902; lean_object* x_903; -lean_dec(x_770); +lean_object* x_1238; lean_object* x_1239; +lean_dec(x_1116); +lean_dec(x_1111); lean_dec(x_17); -if (lean_is_scalar(x_750)) { - x_898 = lean_alloc_ctor(0, 2, 0); +x_1238 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__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); +lean_inc(x_7); +x_1239 = l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__3(x_1238, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_1239) == 0) +{ +lean_object* x_1240; lean_object* x_1241; lean_object* x_1242; lean_object* x_1243; lean_object* x_1244; lean_object* x_1245; lean_object* x_1246; lean_object* x_1247; +x_1240 = lean_ctor_get(x_1239, 1); +lean_inc(x_1240); +lean_dec(x_1239); +if (lean_is_scalar(x_1081)) { + x_1241 = lean_alloc_ctor(0, 2, 0); +} else { + x_1241 = x_1081; +} +lean_ctor_set(x_1241, 0, x_1079); +lean_ctor_set(x_1241, 1, x_1115); +if (lean_is_scalar(x_1078)) { + x_1242 = lean_alloc_ctor(0, 2, 0); } else { - x_898 = x_750; + x_1242 = x_1078; } -lean_ctor_set(x_898, 0, x_768); -lean_ctor_set(x_898, 1, x_769); -if (lean_is_scalar(x_747)) { - x_899 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1242, 0, x_1114); +lean_ctor_set(x_1242, 1, x_1241); +if (lean_is_scalar(x_1076)) { + x_1243 = lean_alloc_ctor(0, 2, 0); } else { - x_899 = x_747; + x_1243 = x_1076; } -lean_ctor_set(x_899, 0, x_767); -lean_ctor_set(x_899, 1, x_898); -if (lean_is_scalar(x_745)) { - x_900 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1243, 0, x_1075); +lean_ctor_set(x_1243, 1, x_1242); +x_1244 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1244, 0, x_1098); +lean_ctor_set(x_1244, 1, x_1243); +if (lean_is_scalar(x_1074)) { + x_1245 = lean_alloc_ctor(0, 2, 0); } else { - x_900 = x_745; + x_1245 = x_1074; } -lean_ctor_set(x_900, 0, x_744); -lean_ctor_set(x_900, 1, x_899); -x_901 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_901, 0, x_766); -lean_ctor_set(x_901, 1, x_900); +lean_ctor_set(x_1245, 0, x_1113); +lean_ctor_set(x_1245, 1, x_1244); lean_inc(x_2); -x_902 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_902, 0, x_2); -lean_ctor_set(x_902, 1, x_901); -x_903 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_903, 0, x_902); -x_18 = x_903; -x_19 = x_14; +x_1246 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_1246, 0, x_2); +lean_ctor_set(x_1246, 1, x_1245); +x_1247 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_1247, 0, x_1246); +x_18 = x_1247; +x_19 = x_1240; goto block_26; } +else +{ +lean_object* x_1248; lean_object* x_1249; lean_object* x_1250; lean_object* x_1251; +lean_dec(x_1115); +lean_dec(x_1114); +lean_dec(x_1113); +lean_dec(x_1098); +lean_dec(x_1081); +lean_dec(x_1079); +lean_dec(x_1078); +lean_dec(x_1076); +lean_dec(x_1075); +lean_dec(x_1074); +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); +x_1248 = lean_ctor_get(x_1239, 0); +lean_inc(x_1248); +x_1249 = lean_ctor_get(x_1239, 1); +lean_inc(x_1249); +if (lean_is_exclusive(x_1239)) { + lean_ctor_release(x_1239, 0); + lean_ctor_release(x_1239, 1); + x_1250 = x_1239; +} else { + lean_dec_ref(x_1239); + x_1250 = lean_box(0); +} +if (lean_is_scalar(x_1250)) { + x_1251 = lean_alloc_ctor(1, 2, 0); +} else { + x_1251 = x_1250; +} +lean_ctor_set(x_1251, 0, x_1248); +lean_ctor_set(x_1251, 1, x_1249); +return x_1251; +} +} +} } } } @@ -22881,11 +27266,11 @@ static lean_object* _init_l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__2__ _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_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__1; -x_2 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__2; -x_3 = lean_unsigned_to_nat(594u); +x_1 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__1; +x_2 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__2; +x_3 = lean_unsigned_to_nat(606u); x_4 = lean_unsigned_to_nat(61u); -x_5 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__3; +x_5 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } @@ -22951,158 +27336,166 @@ return x_27; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__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, uint8_t 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_EXPORT lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_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, size_t x_7, size_t x_8, uint8_t x_9, uint8_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_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; lean_object* x_28; -lean_dec(x_10); -x_19 = lean_ctor_get(x_1, 1); -lean_inc(x_19); -x_20 = lean_ctor_get(x_1, 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_dec(x_11); +x_20 = lean_ctor_get(x_1, 1); lean_inc(x_20); +x_21 = lean_ctor_get(x_1, 0); +lean_inc(x_21); lean_dec(x_1); -x_21 = lean_box(0); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_2); -lean_ctor_set(x_22, 1, x_20); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_19); -lean_ctor_set(x_23, 1, x_22); -x_24 = lean_unsigned_to_nat(0u); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_23); +x_22 = lean_array_get_size(x_2); +x_23 = lean_unsigned_to_nat(0u); +x_24 = l_Array_toSubarray___rarg(x_2, x_23, x_22); +x_25 = lean_box(0); x_26 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_26, 0, x_3); -lean_ctor_set(x_26, 1, x_25); +lean_ctor_set(x_26, 1, x_21); x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_21); +lean_ctor_set(x_27, 0, x_20); lean_ctor_set(x_27, 1, x_26); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_23); +lean_ctor_set(x_28, 1, x_27); +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 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_24); +lean_ctor_set(x_30, 1, x_29); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_25); +lean_ctor_set(x_31, 1, x_30); +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_11); -x_28 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4(x_4, x_21, x_5, x_6, x_7, x_27, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +x_32 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4(x_5, x_25, x_6, x_7, x_8, x_31, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19); +lean_dec(x_6); lean_dec(x_5); -lean_dec(x_4); -if (lean_obj_tag(x_28) == 0) +if (lean_obj_tag(x_32) == 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; -x_29 = lean_ctor_get(x_28, 0); -lean_inc(x_29); -x_30 = lean_ctor_get(x_29, 1); -lean_inc(x_30); -x_31 = lean_ctor_get(x_30, 1); -lean_inc(x_31); -lean_dec(x_30); -x_32 = lean_ctor_get(x_31, 1); -lean_inc(x_32); -lean_dec(x_31); -x_33 = lean_ctor_get(x_32, 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; +x_33 = lean_ctor_get(x_32, 0); lean_inc(x_33); -x_34 = lean_ctor_get(x_29, 0); +x_34 = lean_ctor_get(x_33, 1); lean_inc(x_34); -lean_dec(x_29); -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; lean_object* x_40; -x_35 = lean_ctor_get(x_28, 1); +x_35 = lean_ctor_get(x_34, 1); lean_inc(x_35); -lean_dec(x_28); -x_36 = lean_ctor_get(x_32, 0); +lean_dec(x_34); +x_36 = lean_ctor_get(x_35, 1); lean_inc(x_36); -lean_dec(x_32); -x_37 = lean_ctor_get(x_33, 0); +lean_dec(x_35); +x_37 = lean_ctor_get(x_36, 1); lean_inc(x_37); -x_38 = lean_ctor_get(x_33, 1); +lean_dec(x_36); +x_38 = lean_ctor_get(x_37, 1); lean_inc(x_38); +x_39 = lean_ctor_get(x_33, 0); +lean_inc(x_39); lean_dec(x_33); -x_39 = lean_box(0); -x_40 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__2(x_38, x_37, x_8, x_21, x_36, x_9, x_39, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_35); -return x_40; +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; +x_40 = lean_ctor_get(x_32, 1); +lean_inc(x_40); +lean_dec(x_32); +x_41 = lean_ctor_get(x_37, 0); +lean_inc(x_41); +lean_dec(x_37); +x_42 = lean_ctor_get(x_38, 0); +lean_inc(x_42); +x_43 = lean_ctor_get(x_38, 1); +lean_inc(x_43); +lean_dec(x_38); +x_44 = lean_box(0); +x_45 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__2(x_43, x_42, x_9, x_25, x_41, x_10, x_44, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_40); +return x_45; } else { -uint8_t x_41; -lean_dec(x_33); -lean_dec(x_32); +uint8_t x_46; +lean_dec(x_38); +lean_dec(x_37); +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); -x_41 = !lean_is_exclusive(x_28); -if (x_41 == 0) +x_46 = !lean_is_exclusive(x_32); +if (x_46 == 0) { -lean_object* x_42; lean_object* x_43; -x_42 = lean_ctor_get(x_28, 0); -lean_dec(x_42); -x_43 = lean_ctor_get(x_34, 0); -lean_inc(x_43); -lean_dec(x_34); -lean_ctor_set(x_28, 0, x_43); -return x_28; +lean_object* x_47; lean_object* x_48; +x_47 = lean_ctor_get(x_32, 0); +lean_dec(x_47); +x_48 = lean_ctor_get(x_39, 0); +lean_inc(x_48); +lean_dec(x_39); +lean_ctor_set(x_32, 0, x_48); +return x_32; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_44 = lean_ctor_get(x_28, 1); -lean_inc(x_44); -lean_dec(x_28); -x_45 = lean_ctor_get(x_34, 0); -lean_inc(x_45); -lean_dec(x_34); -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; +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_32, 1); +lean_inc(x_49); +lean_dec(x_32); +x_50 = lean_ctor_get(x_39, 0); +lean_inc(x_50); +lean_dec(x_39); +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_47; +uint8_t x_52; +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); -x_47 = !lean_is_exclusive(x_28); -if (x_47 == 0) +x_52 = !lean_is_exclusive(x_32); +if (x_52 == 0) { -return x_28; +return x_32; } 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_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; +lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_53 = lean_ctor_get(x_32, 0); +x_54 = lean_ctor_get(x_32, 1); +lean_inc(x_54); +lean_inc(x_53); +lean_dec(x_32); +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_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__4(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, uint8_t 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_EXPORT lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_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, size_t x_7, size_t x_8, uint8_t x_9, uint8_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_object* x_19, lean_object* x_20) { _start: { lean_dec(x_12); -if (x_8 == 0) -{ if (x_9 == 0) { +if (x_10 == 0) +{ lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_dec(x_19); lean_dec(x_18); @@ -23111,12 +27504,12 @@ lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); +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 = l_Lean_mkAppN(x_10, x_11); +x_21 = l_Lean_mkAppN(x_11, x_2); x_22 = lean_box(0); x_23 = 1; x_24 = lean_alloc_ctor(0, 2, 1); @@ -23134,9 +27527,8 @@ else { lean_object* x_27; lean_object* x_28; lean_dec(x_11); -lean_dec(x_10); x_27 = lean_box(0); -x_28 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_27, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20); +x_28 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_27, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20); return x_28; } } @@ -23144,9 +27536,8 @@ else { lean_object* x_29; lean_object* x_30; lean_dec(x_11); -lean_dec(x_10); x_29 = lean_box(0); -x_30 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_29, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20); +x_30 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_29, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20); return x_30; } } @@ -23377,7 +27768,7 @@ x_63 = lean_unbox(x_60); lean_dec(x_60); x_64 = lean_unbox(x_59); lean_dec(x_59); -x_65 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__4(x_3, x_61, x_31, x_57, x_19, x_33, x_34, x_63, x_64, x_2, x_58, x_62, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_56); +x_65 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__4(x_3, x_58, x_61, x_31, x_57, x_19, x_33, x_34, x_63, x_64, x_2, x_62, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_56); return x_65; } } @@ -23538,7 +27929,7 @@ x_102 = lean_unbox(x_99); lean_dec(x_99); x_103 = lean_unbox(x_98); lean_dec(x_98); -x_104 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__4(x_3, x_100, x_74, x_96, x_19, x_77, x_78, x_102, x_103, x_2, x_97, x_101, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_95); +x_104 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__4(x_3, x_97, x_100, x_74, x_96, x_19, x_77, x_78, x_102, x_103, x_2, x_101, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_95); return x_104; } } @@ -23839,6 +28230,38 @@ 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; uint8_t x_19; uint8_t x_20; lean_object* x_21; +x_18 = lean_unbox(x_4); +lean_dec(x_4); +x_19 = lean_unbox(x_5); +lean_dec(x_5); +x_20 = lean_unbox(x_8); +lean_dec(x_8); +x_21 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__2(x_1, x_2, x_3, x_18, x_19, x_6, x_7, x_20, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); +lean_dec(x_9); +return x_21; +} +} +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___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: { @@ -23849,14 +28272,14 @@ x_20 = lean_unbox(x_8); lean_dec(x_8); x_21 = lean_unbox(x_9); lean_dec(x_9); -x_22 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__2(x_1, x_2, x_3, x_4, x_5, x_19, x_7, x_20, x_21, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +x_22 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_1, x_2, x_3, x_4, x_5, x_19, x_7, x_20, x_21, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); lean_dec(x_10); lean_dec(x_2); lean_dec(x_1); return x_22; } } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -23886,7 +28309,7 @@ x_21 = lean_unbox(x_7); lean_dec(x_7); x_22 = lean_unbox(x_9); lean_dec(x_9); -x_23 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3(x_1, x_19, x_3, x_4, x_5, x_20, x_21, x_8, x_22, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +x_23 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4(x_1, x_19, x_3, x_4, x_5, x_20, x_21, x_8, x_22, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); return x_23; } } @@ -23906,27 +28329,28 @@ lean_dec(x_1); return x_18; } } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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, 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_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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, 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; -x_16 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___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_object* x_17; +x_17 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___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_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_6); -return x_16; +lean_dec(x_7); +return x_17; } } -LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { -lean_object* x_16; -x_16 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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, x_13, x_14, x_15); +lean_object* x_17; +x_17 = l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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, x_13, x_14, x_15, x_16); +lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -23934,8 +28358,7 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_7); -return x_16; +return x_17; } } LEAN_EXPORT lean_object* l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___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) { @@ -24000,19 +28423,20 @@ 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_19; size_t x_20; uint8_t x_21; uint8_t x_22; lean_object* x_23; -x_19 = lean_unbox_usize(x_6); -lean_dec(x_6); +size_t x_20; size_t x_21; uint8_t x_22; uint8_t x_23; lean_object* x_24; x_20 = lean_unbox_usize(x_7); lean_dec(x_7); -x_21 = lean_unbox(x_8); +x_21 = lean_unbox_usize(x_8); lean_dec(x_8); x_22 = lean_unbox(x_9); lean_dec(x_9); -x_23 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__3(x_1, x_2, x_3, x_4, x_5, x_19, x_20, x_21, x_22, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); -return x_23; +x_23 = lean_unbox(x_10); +lean_dec(x_10); +x_24 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_20, x_21, x_22, x_23, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19); +return x_24; } } LEAN_EXPORT lean_object* l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__4___boxed(lean_object** _args) { @@ -24039,15 +28463,15 @@ lean_object* x_20 = _args[19]; _start: { size_t x_21; size_t x_22; uint8_t x_23; uint8_t x_24; lean_object* x_25; -x_21 = lean_unbox_usize(x_6); -lean_dec(x_6); -x_22 = lean_unbox_usize(x_7); +x_21 = lean_unbox_usize(x_7); lean_dec(x_7); -x_23 = lean_unbox(x_8); +x_22 = lean_unbox_usize(x_8); lean_dec(x_8); -x_24 = lean_unbox(x_9); +x_23 = lean_unbox(x_9); lean_dec(x_9); -x_25 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__4(x_1, x_2, x_3, x_4, x_5, x_21, x_22, x_23, x_24, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20); +x_24 = lean_unbox(x_10); +lean_dec(x_10); +x_25 = l_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_21, x_22, x_23, x_24, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20); return x_25; } } @@ -25329,14 +29753,14 @@ l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__1___closed__3 = _ini lean_mark_persistent(l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__1___closed__3); l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__1___closed__4 = _init_l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__1___closed__4(); lean_mark_persistent(l_panic___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__1___closed__4); -l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__1 = _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__1(); -lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__1); -l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__2 = _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__2(); -lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__2); -l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__3 = _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__3(); -lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__3); -l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__4 = _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__4(); -lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__3___closed__4); +l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__1 = _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__1(); +lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__1); +l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__2 = _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__2(); +lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__2); +l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__3 = _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__3(); +lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__3); +l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__4 = _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__4(); +lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__2___lambda__4___closed__4); l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1 = _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1(); lean_mark_persistent(l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__1); l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__2 = _init_l_Array_forInUnsafe_loop___at_Lean_Meta_Simp_tryAutoCongrTheorem_x3f___spec__4___closed__2(); diff --git a/stage0/stdlib/Lean/Meta/Tactic/SplitIf.c b/stage0/stdlib/Lean/Meta/Tactic/SplitIf.c index aa37eed73c95..13fdc658b187 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/SplitIf.c +++ b/stage0/stdlib/Lean/Meta/Tactic/SplitIf.c @@ -15,9 +15,6 @@ extern "C" { #endif static lean_object* l_Array_findSomeRevM_x3f_find___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__3___closed__5; lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__8; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__7; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__6; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__12; static lean_object* l_Lean_Meta_simpIfTarget___closed__9; static lean_object* l_Lean_LazyInitExtension_get___at_Lean_Meta_SplitIf_getSimpContext___spec__1___closed__9; @@ -31,7 +28,6 @@ static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_di uint8_t l_Lean_Expr_isDIte(lean_object*); static lean_object* l_Lean_LazyInitExtension_get___at_Lean_Meta_SplitIf_getSimpContext___spec__1___closed__5; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__4; -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575_(lean_object*); 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*); static lean_object* l_Array_findSomeRevM_x3f_find___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__3___closed__4; static lean_object* l_Lean_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5____lambda__1___closed__4; @@ -56,42 +52,42 @@ lean_object* lean_array_push(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*); static lean_object* l_Lean_LazyInitExtension_get___at_Lean_Meta_SplitIf_getSimpContext___spec__1___closed__6; 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_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_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*); extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_ExtensionState_declNames___default___spec__1; lean_object* lean_array_fget(lean_object*, lean_object*); extern lean_object* l_Lean_Expr_instBEq; -LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_findIfToSplit_x3f(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_instantiateMVars___at_Lean_Meta_Simp_synthesizeArgs___spec__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_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__7; static lean_object* l_Lean_Meta_simpIfTarget___closed__11; +LEAN_EXPORT uint8_t l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1(lean_object*); lean_object* l_Lean_registerLazyInitExtension___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__1; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__10; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__15; 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_Array_findSomeRevM_x3f_find___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__3___closed__3; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__8; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__14; static lean_object* l_Lean_Meta_simpIfTarget___closed__6; lean_object* l_instBEqProd___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_getSimpCongrTheorems___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5____closed__3; -LEAN_EXPORT uint8_t l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1(lean_object*); lean_object* l_Lean_Expr_appArg_x21(lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__10; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___closed__6; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___closed__1; extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_SimpTheorems_lemmaNames___default___spec__1; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__5; 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_1575____closed__2; uint8_t l_Lean_Expr_hasMVar(lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__11; 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*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__3; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__4; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___closed__4; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__10; static lean_object* l_Lean_LazyInitExtension_get___at_Lean_Meta_SplitIf_getSimpContext___spec__1___closed__3; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__1; lean_object* lean_st_ref_take(lean_object*, lean_object*); @@ -102,9 +98,9 @@ static lean_object* l_Lean_Meta_simpIfTarget___closed__12; static lean_object* l_Lean_Meta_simpIfTarget___closed__5; static lean_object* l_Lean_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5____closed__2; lean_object* l_Lean_MVarId_getType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_MVarId_byCases(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_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___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2; 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*); lean_object* l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(lean_object*, lean_object*, lean_object*, lean_object*); @@ -113,24 +109,26 @@ LEAN_EXPORT lean_object* l_Lean_Meta_simpIfTarget___boxed(lean_object*, lean_obj static lean_object* l_Array_findSomeRevM_x3f_find___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__3___closed__1; 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*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__12; lean_object* l_Lean_Meta_simpTarget(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_DiscrTree_empty(lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_splitIfTarget_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___closed__2; 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*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__6; +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*); uint8_t l_Lean_Expr_hasLooseBVars(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_ext; 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_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*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__9; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___closed__2; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__13; static lean_object* l_Lean_LazyInitExtension_get___at_Lean_Meta_SplitIf_getSimpContext___spec__1___closed__7; static lean_object* l_Lean_Meta_simpIfLocalDecl___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_mkDischarge_x3f(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -140,13 +138,15 @@ static uint32_t l_Lean_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg 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_1575____closed__15; +static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__2; 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_1603____closed__7; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isIte(lean_object*); lean_object* l_Lean_Meta_saveState___rarg(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_LocalDecl_isAuxDecl(lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__8; static lean_object* l_Lean_LazyInitExtension_get___at_Lean_Meta_SplitIf_getSimpContext___spec__1___closed__4; static lean_object* l_Lean_Meta_simpIfTarget___closed__2; static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__1; @@ -155,15 +155,16 @@ LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_mkDischarge_x3f___boxed(lean_object lean_object* l_Lean_MessageData_ofExpr(lean_object*); static lean_object* l_Lean_Meta_simpIfTarget___closed__7; static lean_object* l_Lean_LazyInitExtension_get___at_Lean_Meta_SplitIf_getSimpContext___spec__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603_(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*); static lean_object* l_Lean_LazyInitExtension_get___at_Lean_Meta_SplitIf_getSimpContext___spec__1___closed__8; lean_object* l_Lean_Expr_FindImpl_findUnsafe_x3f(lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5____closed__1; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__5; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f(lean_object*); static lean_object* l_Lean_Meta_simpIfTarget___closed__10; 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_1603____closed__3; lean_object* l_Lean_EnvExtension_setState___rarg(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_EXPORT lean_object* l_Lean_LazyInitExtension_get___at_Lean_Meta_SplitIf_getSimpContext___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -171,7 +172,6 @@ lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5____lambda__1___closed__9; lean_object* l_Lean_Meta_mkEqRefl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5____lambda__1___closed__2; -static lean_object* l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2; 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_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5____closed__7; uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); @@ -182,14 +182,14 @@ extern lean_object* l_Lean_Expr_instHashable; 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*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___closed__3; +static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__1; static lean_object* l_Lean_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5____lambda__1___closed__1; -static lean_object* l_Lean_Meta_SplitIf_findIfToSplit_x3f___closed__1; 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*); 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_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__12; 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_Lean_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5____closed__6; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__9; lean_object* l_Lean_Meta_instHashableOrigin___boxed(lean_object*); extern lean_object* l_Lean_Meta_Simp_defaultMaxSteps; uint8_t l_Lean_Expr_hasFVar(lean_object*); @@ -200,11 +200,13 @@ lean_object* l_Lean_Meta_simpLocalDecl(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* 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_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_EXPORT lean_object* l_Lean_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, 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___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_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__3; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__13; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__14; +static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__1; static lean_object* l_Lean_Meta_simpIfTarget___closed__13; 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_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5_(lean_object*); @@ -214,18 +216,18 @@ 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*); 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_1575____closed__13; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___boxed(lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__1; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___closed__7; -static lean_object* l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__1; 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_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__4; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__11; 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_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__2; lean_object* l_panic___at_Lean_Meta_subst_substEq___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_simpIfTarget___closed__1; static lean_object* l_Lean_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5____closed__5; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__6; +static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__3; static lean_object* _init_l_Lean_Meta_SplitIf_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_5____lambda__1___closed__1() { _start: { @@ -3678,7 +3680,7 @@ lean_dec(x_3); return x_8; } } -static lean_object* _init_l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__1() { +static lean_object* _init_l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -3688,17 +3690,17 @@ x_3 = lean_nat_sub(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2() { +static lean_object* _init_l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__1; +x_1 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__1; x_2 = lean_unsigned_to_nat(1u); x_3 = lean_nat_sub(x_1, x_2); return x_3; } } -LEAN_EXPORT uint8_t l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1(lean_object* x_1) { +LEAN_EXPORT uint8_t l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1(lean_object* x_1) { _start: { uint8_t x_2; @@ -3716,7 +3718,7 @@ return x_4; else { lean_object* x_5; lean_object* x_6; uint8_t x_7; -x_5 = l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2; +x_5 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2; x_6 = l_Lean_Expr_getRevArg_x21(x_1, x_5); x_7 = l_Lean_Expr_hasLooseBVars(x_6); lean_dec(x_6); @@ -3737,7 +3739,7 @@ return x_9; else { lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_10 = l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2; +x_10 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2; x_11 = l_Lean_Expr_getRevArg_x21(x_1, x_10); x_12 = l_Lean_Expr_hasLooseBVars(x_11); lean_dec(x_11); @@ -3756,19 +3758,39 @@ return x_14; } } } -static lean_object* _init_l_Lean_Meta_SplitIf_findIfToSplit_x3f___closed__1() { +static lean_object* _init_l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___boxed), 1, 0); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___boxed), 1, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_findIfToSplit_x3f(lean_object* x_1) { +static lean_object* _init_l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(5u); +x_2 = lean_unsigned_to_nat(2u); +x_3 = lean_nat_sub(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__2; +x_2 = lean_unsigned_to_nat(1u); +x_3 = lean_nat_sub(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Meta_SplitIf_findIfToSplit_x3f___closed__1; +x_2 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__1; x_3 = l_Lean_Expr_FindImpl_findUnsafe_x3f(x_2, x_1); if (lean_obj_tag(x_3) == 0) { @@ -3782,147 +3804,160 @@ 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; lean_object* x_9; +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_3, 0); -x_7 = l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2; +x_7 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2; x_8 = l_Lean_Expr_getRevArg_x21(x_6, x_7); +x_9 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__3; +x_10 = l_Lean_Expr_getRevArg_x21(x_6, x_9); lean_dec(x_6); lean_inc(x_8); -x_9 = l_Lean_Meta_SplitIf_findIfToSplit_x3f(x_8); -if (lean_obj_tag(x_9) == 0) +x_11 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f(x_8); +if (lean_obj_tag(x_11) == 0) { -lean_ctor_set(x_3, 0, x_8); +lean_object* x_12; +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_8); +lean_ctor_set(x_12, 1, x_10); +lean_ctor_set(x_3, 0, x_12); return x_3; } else { -uint8_t x_10; +uint8_t x_13; +lean_dec(x_10); lean_dec(x_8); lean_free_object(x_3); -x_10 = !lean_is_exclusive(x_9); -if (x_10 == 0) +x_13 = !lean_is_exclusive(x_11); +if (x_13 == 0) { -return x_9; +return x_11; } else { -lean_object* x_11; lean_object* x_12; -x_11 = lean_ctor_get(x_9, 0); -lean_inc(x_11); -lean_dec(x_9); -x_12 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_12, 0, x_11); -return x_12; +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_11, 0); +lean_inc(x_14); +lean_dec(x_11); +x_15 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_15, 0, x_14); +return x_15; } } } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_13 = lean_ctor_get(x_3, 0); -lean_inc(x_13); +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_3, 0); +lean_inc(x_16); lean_dec(x_3); -x_14 = l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2; -x_15 = l_Lean_Expr_getRevArg_x21(x_13, x_14); -lean_dec(x_13); -lean_inc(x_15); -x_16 = l_Lean_Meta_SplitIf_findIfToSplit_x3f(x_15); -if (lean_obj_tag(x_16) == 0) +x_17 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2; +x_18 = l_Lean_Expr_getRevArg_x21(x_16, x_17); +x_19 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__3; +x_20 = l_Lean_Expr_getRevArg_x21(x_16, x_19); +lean_dec(x_16); +lean_inc(x_18); +x_21 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f(x_18); +if (lean_obj_tag(x_21) == 0) { -lean_object* x_17; -x_17 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_17, 0, x_15); -return x_17; +lean_object* x_22; lean_object* x_23; +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_18); +lean_ctor_set(x_22, 1, x_20); +x_23 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_23, 0, x_22); +return x_23; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; -lean_dec(x_15); -x_18 = lean_ctor_get(x_16, 0); -lean_inc(x_18); -if (lean_is_exclusive(x_16)) { - lean_ctor_release(x_16, 0); - x_19 = x_16; +lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_20); +lean_dec(x_18); +x_24 = lean_ctor_get(x_21, 0); +lean_inc(x_24); +if (lean_is_exclusive(x_21)) { + lean_ctor_release(x_21, 0); + x_25 = x_21; } else { - lean_dec_ref(x_16); - x_19 = lean_box(0); + lean_dec_ref(x_21); + x_25 = lean_box(0); } -if (lean_is_scalar(x_19)) { - x_20 = lean_alloc_ctor(1, 1, 0); +if (lean_is_scalar(x_25)) { + x_26 = lean_alloc_ctor(1, 1, 0); } else { - x_20 = x_19; + x_26 = x_25; } -lean_ctor_set(x_20, 0, x_18); -return x_20; +lean_ctor_set(x_26, 0, x_24); +return x_26; } } } } } -LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___boxed(lean_object* x_1) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___boxed(lean_object* x_1) { _start: { uint8_t x_2; lean_object* x_3; -x_2 = l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1(x_1); +x_2 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1(x_1); lean_dec(x_1); x_3 = lean_box(x_2); return x_3; } } -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_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) { _start: { -lean_object* x_10; -x_10 = l_Lean_MVarId_byCases(x_1, x_2, x_3, x_5, x_6, x_7, x_8, x_9); -if (lean_obj_tag(x_10) == 0) +lean_object* x_11; +x_11 = l_Lean_MVarId_byCasesDec(x_1, x_2, x_3, x_4, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_11) == 0) { -uint8_t x_11; -x_11 = !lean_is_exclusive(x_10); -if (x_11 == 0) +uint8_t x_12; +x_12 = !lean_is_exclusive(x_11); +if (x_12 == 0) { -lean_object* x_12; lean_object* x_13; -x_12 = lean_ctor_get(x_10, 0); -x_13 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_13, 0, x_12); -lean_ctor_set(x_10, 0, x_13); -return x_10; +lean_object* x_13; lean_object* x_14; +x_13 = lean_ctor_get(x_11, 0); +x_14 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_11, 0, x_14); +return x_11; } 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_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = lean_ctor_get(x_11, 0); +x_16 = lean_ctor_get(x_11, 1); +lean_inc(x_16); lean_inc(x_15); -lean_inc(x_14); -lean_dec(x_10); -x_16 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_16, 0, x_14); -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; +lean_dec(x_11); +x_17 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_17, 0, x_15); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_16); +return x_18; } } else { -uint8_t x_18; -x_18 = !lean_is_exclusive(x_10); -if (x_18 == 0) +uint8_t x_19; +x_19 = !lean_is_exclusive(x_11); +if (x_19 == 0) { -return x_10; +return x_11; } 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_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_11, 0); +x_21 = lean_ctor_get(x_11, 1); +lean_inc(x_21); 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; +lean_dec(x_11); +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; } } } @@ -3944,81 +3979,81 @@ 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_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) { _start: { -lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_9 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___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_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_10 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__4; +x_11 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_10, 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_unbox(x_12); +lean_dec(x_12); +if (x_13 == 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_Meta_SplitIf_splitIfAt_x3f___lambda__1(x_1, x_2, x_3, x_14, x_4, x_5, x_6, x_7, x_13); -return x_15; +lean_object* x_14; lean_object* x_15; lean_object* x_16; +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); +return x_16; } else { -uint8_t x_16; -x_16 = !lean_is_exclusive(x_10); -if (x_16 == 0) +uint8_t x_17; +x_17 = !lean_is_exclusive(x_11); +if (x_17 == 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_2); -x_19 = l_Lean_MessageData_ofExpr(x_2); -x_20 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__2; -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___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__10; -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_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_3); +x_20 = l_Lean_MessageData_ofExpr(x_3); +x_21 = l_Lean_Meta_SplitIf_splitIfAt_x3f___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___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__10; +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_Meta_processPostponed_loop___spec__2(x_10, x_23, x_5, x_6, x_7, x_8, x_18); +x_25 = lean_ctor_get(x_24, 0); lean_inc(x_25); -lean_dec(x_23); -x_26 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1(x_1, x_2, x_3, x_24, x_4, x_5, x_6, x_7, x_25); +x_26 = lean_ctor_get(x_24, 1); +lean_inc(x_26); lean_dec(x_24); -return x_26; +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); +lean_dec(x_25); +return x_27; } 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_2); -x_28 = l_Lean_MessageData_ofExpr(x_2); -x_29 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___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___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___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_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_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_3); +x_29 = l_Lean_MessageData_ofExpr(x_3); +x_30 = l_Lean_Meta_SplitIf_splitIfAt_x3f___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___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__10; +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_Meta_processPostponed_loop___spec__2(x_10, x_33, x_5, x_6, x_7, x_8, x_28); +x_35 = lean_ctor_get(x_34, 0); lean_inc(x_35); -lean_dec(x_33); -x_36 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1(x_1, x_2, x_3, x_34, x_4, x_5, x_6, x_7, x_35); +x_36 = lean_ctor_get(x_34, 1); +lean_inc(x_36); lean_dec(x_34); -return x_36; +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); +lean_dec(x_35); +return x_37; } } } @@ -4052,7 +4087,7 @@ 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); -x_13 = l_Lean_Meta_SplitIf_findIfToSplit_x3f(x_11); +x_13 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f(x_11); if (lean_obj_tag(x_13) == 0) { lean_object* x_14; @@ -4068,102 +4103,118 @@ return x_9; } else { +lean_object* x_15; lean_free_object(x_9); -if (lean_obj_tag(x_3) == 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_13, 0); lean_inc(x_15); lean_dec(x_13); -x_16 = l_Lean_Meta_SplitIf_splitIfAt_x3f___closed__2; -x_17 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_16, x_6, x_7, x_12); -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_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_1, x_15, x_18, x_4, x_5, x_6, x_7, x_19); -return x_20; +if (lean_obj_tag(x_3) == 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; +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_SplitIf_splitIfAt_x3f___closed__2; +x_19 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_18, x_6, x_7, 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 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_1, x_16, x_17, x_20, x_4, x_5, x_6, x_7, x_21); +return x_22; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_13, 0); -lean_inc(x_21); -lean_dec(x_13); -x_22 = lean_ctor_get(x_3, 0); -lean_inc(x_22); +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = lean_ctor_get(x_15, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_15, 1); +lean_inc(x_24); +lean_dec(x_15); +x_25 = lean_ctor_get(x_3, 0); +lean_inc(x_25); lean_dec(x_3); -x_23 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_1, x_21, x_22, x_4, x_5, x_6, x_7, x_12); -return x_23; +x_26 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_1, x_23, x_24, x_25, x_4, x_5, x_6, x_7, x_12); +return x_26; } } } 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_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_26 = l_Lean_Meta_SplitIf_findIfToSplit_x3f(x_24); -if (lean_obj_tag(x_26) == 0) +x_29 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f(x_27); +if (lean_obj_tag(x_29) == 0) { -lean_object* x_27; lean_object* x_28; +lean_object* x_30; lean_object* x_31; 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_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_25); -return x_28; +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_28); +return x_31; } else { +lean_object* x_32; +x_32 = lean_ctor_get(x_29, 0); +lean_inc(x_32); +lean_dec(x_29); if (lean_obj_tag(x_3) == 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; -x_29 = lean_ctor_get(x_26, 0); -lean_inc(x_29); -lean_dec(x_26); -x_30 = l_Lean_Meta_SplitIf_splitIfAt_x3f___closed__2; -x_31 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_30, x_6, x_7, x_25); -x_32 = lean_ctor_get(x_31, 0); -lean_inc(x_32); -x_33 = lean_ctor_get(x_31, 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; +x_33 = lean_ctor_get(x_32, 0); lean_inc(x_33); -lean_dec(x_31); -x_34 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_1, x_29, x_32, x_4, x_5, x_6, x_7, x_33); -return x_34; +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_dec(x_32); +x_35 = l_Lean_Meta_SplitIf_splitIfAt_x3f___closed__2; +x_36 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_35, x_6, x_7, x_28); +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_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_1, x_33, x_34, x_37, x_4, x_5, x_6, x_7, x_38); +return x_39; } else { -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 = lean_ctor_get(x_3, 0); -lean_inc(x_36); +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* 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 = lean_ctor_get(x_3, 0); +lean_inc(x_42); lean_dec(x_3); -x_37 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_1, x_35, x_36, x_4, x_5, x_6, x_7, x_25); -return x_37; +x_43 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_1, x_40, x_41, x_42, x_4, x_5, x_6, x_7, x_28); +return x_43; } } } } } -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_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) { _start: { -lean_object* x_10; -x_10 = 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); -lean_dec(x_4); -return x_10; +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); +lean_dec(x_5); +return x_11; } } static lean_object* _init_l_Lean_Meta_simpIfTarget___closed__1() { @@ -4296,7 +4347,7 @@ static lean_object* _init_l_Lean_Meta_simpIfTarget___closed__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; x_1 = l_Lean_Meta_simpIfTarget___closed__10; x_2 = l_Lean_Meta_simpIfTarget___closed__11; -x_3 = lean_unsigned_to_nat(100u); +x_3 = lean_unsigned_to_nat(101u); x_4 = lean_unsigned_to_nat(4u); x_5 = l_Lean_Meta_simpIfTarget___closed__12; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -4521,7 +4572,7 @@ static lean_object* _init_l_Lean_Meta_simpIfLocalDecl___closed__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_Lean_Meta_simpIfTarget___closed__10; x_2 = l_Lean_Meta_simpIfLocalDecl___closed__2; -x_3 = lean_unsigned_to_nat(107u); +x_3 = lean_unsigned_to_nat(108u); x_4 = lean_unsigned_to_nat(4u); x_5 = l_Lean_Meta_simpIfTarget___closed__12; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -6977,7 +7028,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_1575____closed__1() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__1() { _start: { lean_object* x_1; @@ -6985,27 +7036,27 @@ x_1 = lean_mk_string_from_bytes("Lean", 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__2() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__1; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__3() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__2; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__4() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__4() { _start: { lean_object* x_1; @@ -7013,17 +7064,17 @@ x_1 = lean_mk_string_from_bytes("initFn", 6); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__5() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__3; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__4; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__3; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__6() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__6() { _start: { lean_object* x_1; @@ -7031,47 +7082,47 @@ x_1 = lean_mk_string_from_bytes("_@", 2); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__7() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__5; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__6; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__5; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__8() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__7; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__1; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__7; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__9() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__8; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__10() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__9; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__11() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__11() { _start: { lean_object* x_1; @@ -7079,17 +7130,17 @@ x_1 = lean_mk_string_from_bytes("SplitIf", 7); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__12() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__10; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__11; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__10; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__13() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__13() { _start: { lean_object* x_1; @@ -7097,33 +7148,33 @@ x_1 = lean_mk_string_from_bytes("_hyg", 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__14() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__12; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__13; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__12; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__15() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____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_1575____closed__14; -x_2 = lean_unsigned_to_nat(1575u); +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__14; +x_2 = lean_unsigned_to_nat(1603u); 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_1575_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603_(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_1575____closed__15; +x_4 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__15; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } @@ -7253,12 +7304,16 @@ 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__12); l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__13 = _init_l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__13(); lean_mark_persistent(l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__13); -l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__1 = _init_l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__1(); -lean_mark_persistent(l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__1); -l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2 = _init_l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2(); -lean_mark_persistent(l_Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2); -l_Lean_Meta_SplitIf_findIfToSplit_x3f___closed__1 = _init_l_Lean_Meta_SplitIf_findIfToSplit_x3f___closed__1(); -lean_mark_persistent(l_Lean_Meta_SplitIf_findIfToSplit_x3f___closed__1); +l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__1 = _init_l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__1); +l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2 = _init_l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___lambda__1___closed__2); +l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__1 = _init_l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__1); +l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__2 = _init_l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__2); +l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__3 = _init_l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__3(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_findIfToSplit_x3f___closed__3); 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(); @@ -7299,37 +7354,37 @@ 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_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__1(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__1); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__2 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__2(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__2); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__3 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__3(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__3); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__4 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__4(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__4); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__5 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__5(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__5); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__6 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__6(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__6); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__7 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__7(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__7); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__8 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__8(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__8); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__9 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__9(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__9); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__10 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__10(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__10); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__11 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__11(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__11); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__12 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__12(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__12); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__13 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__13(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__13); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__14 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__14(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__14); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__15 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__15(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575____closed__15); -if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1575_(lean_io_mk_world()); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__1(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__1); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__2 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__2(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__2); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__3 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__3(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__3); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__4 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__4(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__4); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__5 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__5(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__5); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__6 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__6(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__6); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__7 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__7(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__7); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__8 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__8(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__8); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__9 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__9(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__9); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__10 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__10(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__10); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__11 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__11(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__11); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__12 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__12(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__12); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__13 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__13(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__13); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__14 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__14(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__14); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__15 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__15(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603____closed__15); +if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_1603_(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/ReservedNameAction.c b/stage0/stdlib/Lean/ReservedNameAction.c index 661f6f14193f..081501eefd49 100644 --- a/stage0/stdlib/Lean/ReservedNameAction.c +++ b/stage0/stdlib/Lean/ReservedNameAction.c @@ -23,6 +23,7 @@ static lean_object* l_Lean_ensureNonAmbiguous___at_Lean_realizeGlobalConstNoOver static lean_object* l_Array_forInUnsafe_loop___at_Lean_executeReservedNameAction___spec__1___closed__2; static lean_object* l_Lean_logAt___at_Lean_realizeGlobalName___spec__3___lambda__2___closed__4; static lean_object* l_Lean_ensureNonAmbiguous___at_Lean_realizeGlobalConstNoOverload___spec__1___closed__3; +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*); lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); @@ -46,11 +47,13 @@ static lean_object* l_Lean_logAt___at_Lean_realizeGlobalName___spec__3___lambda_ static lean_object* l_Lean_logAt___at_Lean_realizeGlobalName___spec__3___lambda__2___closed__3; LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_ReservedNameAction___hyg_10_(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_realizeGlobalConst___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__3; lean_object* l_Lean_initializing(lean_object*); static lean_object* l_Lean_preprocessSyntaxAndResolve___at_Lean_realizeGlobalConst___spec__1___closed__2; size_t lean_usize_of_nat(lean_object*); static lean_object* l_Lean_registerReservedNameAction___closed__1; lean_object* l_List_mapTR_loop___at_Lean_filterFieldList___spec__2(lean_object*, lean_object*); +static lean_object* l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__2; LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_realizeGlobalName___spec__3(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_realizeGlobalConstNoOverload(lean_object*, lean_object*, lean_object*, lean_object*); @@ -64,7 +67,7 @@ LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_realizeGlobalConstNoOverloa lean_object* lean_st_ref_get(lean_object*, lean_object*); static lean_object* l_Lean_registerReservedNameAction___lambda__1___closed__1; uint8_t l_List_isEmpty___rarg(lean_object*); -LEAN_EXPORT lean_object* l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_mk_ref(lean_object*, lean_object*); uint8_t l_Lean_MessageData_hasTag(lean_object*, lean_object*); lean_object* l_Lean_addMessageContextPartial___at_Lean_Core_instAddMessageContextCoreM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); @@ -78,6 +81,7 @@ extern lean_object* l_Lean_warningAsError; 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_logAt___at_Lean_realizeGlobalName___spec__3___closed__2; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__4; LEAN_EXPORT lean_object* l_Lean_registerReservedNameAction___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_logAt___at_Lean_realizeGlobalName___spec__3___lambda__2(lean_object*); extern lean_object* l_Std_Format_defWidth; @@ -120,6 +124,7 @@ lean_object* lean_string_append(lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_realizeGlobalConst___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_ensureNoOverload___at_Lean_realizeGlobalConstNoOverloadCore___spec__1___closed__1; +static lean_object* l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__1; LEAN_EXPORT lean_object* l_Lean_resolveGlobalName___at_Lean_realizeGlobalName___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l___private_Lean_Message_0__Lean_beqMessageSeverity____x40_Lean_Message___hyg_103_(uint8_t, uint8_t); uint8_t lean_usize_dec_lt(size_t, size_t); @@ -131,11 +136,13 @@ static lean_object* l_Lean_throwUnknownConstant___at_Lean_realizeGlobalConstCore uint8_t l_Lean_Exception_isRuntime(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_realizeGlobalConstNoOverloadCore___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_registerReservedNameAction___lambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MessageData_ofName(lean_object*); LEAN_EXPORT lean_object* l_Lean_filterFieldList___at_Lean_realizeGlobalConstCore___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_filterTR_loop___at_Lean_filterFieldList___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_registerReservedNameAction___closed__2; lean_object* l_Lean_MessageLog_add(lean_object*, lean_object*); static lean_object* l_Lean_ensureNoOverload___at_Lean_realizeGlobalConstNoOverloadCore___spec__1___closed__2; +static lean_object* l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__5; static lean_object* _init_l_Lean_initFn____x40_Lean_ReservedNameAction___hyg_10____closed__1() { _start: { @@ -1628,221 +1635,460 @@ x_7 = l_Lean_logAt___at_Lean_realizeGlobalName___spec__3(x_6, x_1, x_2, x_3, x_4 return x_7; } } -LEAN_EXPORT lean_object* l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +static lean_object* _init_l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__1() { _start: { -if (lean_obj_tag(x_1) == 0) +lean_object* x_1; +x_1 = lean_mk_string_from_bytes("Failed to realize constant ", 27); +return x_1; +} +} +static lean_object* _init_l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__2() { +_start: { -lean_object* x_6; +lean_object* x_1; lean_object* x_2; +x_1 = l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_from_bytes(":", 1); +return x_1; +} +} +static lean_object* _init_l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_logAt___at_Lean_realizeGlobalName___spec__3___lambda__1___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_List_filterAuxM___at_Lean_realizeGlobalName___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) { +_start: +{ +if (lean_obj_tag(x_2) == 0) +{ +lean_object* x_7; +lean_dec(x_5); lean_dec(x_4); -lean_dec(x_3); -x_6 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_6, 0, x_2); -lean_ctor_set(x_6, 1, x_5); -return x_6; +lean_dec(x_1); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_3); +lean_ctor_set(x_7, 1, x_6); +return x_7; } else { -lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; 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_7 = lean_ctor_get(x_1, 0); -lean_inc(x_7); -x_8 = lean_ctor_get(x_1, 1); +lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; lean_object* x_12; lean_object* x_17; lean_object* x_18; uint8_t x_19; +x_8 = lean_ctor_get(x_2, 0); lean_inc(x_8); -if (lean_is_exclusive(x_1)) { - lean_ctor_release(x_1, 0); - lean_ctor_release(x_1, 1); - x_9 = x_1; +x_9 = lean_ctor_get(x_2, 1); +lean_inc(x_9); +if (lean_is_exclusive(x_2)) { + lean_ctor_release(x_2, 0); + lean_ctor_release(x_2, 1); + x_10 = x_2; } else { - lean_dec_ref(x_1); - x_9 = lean_box(0); + lean_dec_ref(x_2); + x_10 = lean_box(0); } -x_16 = lean_ctor_get(x_7, 0); -lean_inc(x_16); -x_17 = lean_st_ref_get(x_4, x_5); -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_17 = lean_ctor_get(x_8, 0); +lean_inc(x_17); +x_18 = lean_st_ref_get(x_5, x_6); +x_19 = !lean_is_exclusive(x_18); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; x_20 = lean_ctor_get(x_18, 0); -lean_inc(x_20); -lean_dec(x_18); -lean_inc(x_16); -x_21 = l_Lean_Environment_contains(x_20, x_16); -if (x_21 == 0) +x_21 = lean_ctor_get(x_18, 1); +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +lean_dec(x_20); +lean_inc(x_17); +x_23 = l_Lean_Environment_contains(x_22, x_17); +if (x_23 == 0) { -lean_object* x_22; +lean_object* x_24; +lean_inc(x_5); lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_16); -x_22 = l_Lean_executeReservedNameAction(x_16, x_3, x_4, x_19); -if (lean_obj_tag(x_22) == 0) +lean_inc(x_17); +x_24 = l_Lean_executeReservedNameAction(x_17, x_4, x_5, x_21); +if (lean_obj_tag(x_24) == 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, 1); -lean_inc(x_23); -lean_dec(x_22); -x_24 = lean_st_ref_get(x_4, x_23); -x_25 = lean_ctor_get(x_24, 0); +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_free_object(x_18); +x_25 = lean_ctor_get(x_24, 1); 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); +x_26 = lean_st_ref_get(x_5, x_25); +x_27 = lean_ctor_get(x_26, 0); lean_inc(x_27); -lean_dec(x_25); -x_28 = l_Lean_Environment_contains(x_27, x_16); -x_10 = x_28; -x_11 = x_26; -goto block_15; +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); +lean_dec(x_27); +x_30 = l_Lean_Environment_contains(x_29, x_17); +x_11 = x_30; +x_12 = x_28; +goto block_16; } else { -uint8_t x_29; -lean_dec(x_16); -x_29 = !lean_is_exclusive(x_22); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; uint8_t x_32; -x_30 = lean_ctor_get(x_22, 0); -x_31 = lean_ctor_get(x_22, 1); -x_32 = l_Lean_Exception_isInterrupt(x_30); -if (x_32 == 0) -{ -uint8_t x_33; -x_33 = l_Lean_Exception_isRuntime(x_30); -if (x_33 == 0) -{ -lean_object* x_34; uint8_t x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; -lean_free_object(x_22); -x_34 = l_Lean_Exception_toMessageData(x_30); -x_35 = 2; +uint8_t x_31; +lean_dec(x_17); +x_31 = !lean_is_exclusive(x_24); +if (x_31 == 0) +{ +lean_object* x_32; lean_object* x_33; uint8_t x_34; +x_32 = lean_ctor_get(x_24, 0); +x_33 = lean_ctor_get(x_24, 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_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; uint8_t x_48; +lean_free_object(x_24); +lean_inc(x_1); +x_36 = l_Lean_MessageData_ofName(x_1); +x_37 = l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___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_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__4; +x_39 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_39, 0, x_18); +lean_ctor_set(x_39, 1, x_38); +x_40 = l_Lean_Exception_toMessageData(x_32); +x_41 = l_Lean_indentD(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_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__5; +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 = 2; +lean_inc(x_5); lean_inc(x_4); -lean_inc(x_3); -x_36 = l_Lean_log___at_Lean_realizeGlobalName___spec__2(x_34, x_35, x_3, x_4, x_31); -x_37 = lean_ctor_get(x_36, 1); -lean_inc(x_37); -lean_dec(x_36); -x_38 = 0; -x_10 = x_38; -x_11 = x_37; -goto block_15; +x_46 = l_Lean_log___at_Lean_realizeGlobalName___spec__2(x_44, x_45, x_4, x_5, x_33); +x_47 = lean_ctor_get(x_46, 1); +lean_inc(x_47); +lean_dec(x_46); +x_48 = 0; +x_11 = x_48; +x_12 = x_47; +goto block_16; } else { +lean_free_object(x_18); +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); -return x_22; +lean_dec(x_1); +return x_24; } } else { +lean_free_object(x_18); +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); -return x_22; +lean_dec(x_1); +return x_24; } } else { -lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_39 = lean_ctor_get(x_22, 0); -x_40 = lean_ctor_get(x_22, 1); -lean_inc(x_40); -lean_inc(x_39); -lean_dec(x_22); -x_41 = l_Lean_Exception_isInterrupt(x_39); -if (x_41 == 0) +lean_object* x_49; lean_object* x_50; uint8_t x_51; +x_49 = lean_ctor_get(x_24, 0); +x_50 = lean_ctor_get(x_24, 1); +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_24); +x_51 = l_Lean_Exception_isInterrupt(x_49); +if (x_51 == 0) { -uint8_t x_42; -x_42 = l_Lean_Exception_isRuntime(x_39); -if (x_42 == 0) +uint8_t x_52; +x_52 = l_Lean_Exception_isRuntime(x_49); +if (x_52 == 0) { -lean_object* x_43; uint8_t x_44; lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_43 = l_Lean_Exception_toMessageData(x_39); -x_44 = 2; +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; uint8_t x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; +lean_inc(x_1); +x_53 = l_Lean_MessageData_ofName(x_1); +x_54 = l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__2; +lean_ctor_set_tag(x_18, 7); +lean_ctor_set(x_18, 1, x_53); +lean_ctor_set(x_18, 0, x_54); +x_55 = l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__4; +x_56 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_56, 0, x_18); +lean_ctor_set(x_56, 1, x_55); +x_57 = l_Lean_Exception_toMessageData(x_49); +x_58 = l_Lean_indentD(x_57); +x_59 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_59, 0, x_56); +lean_ctor_set(x_59, 1, x_58); +x_60 = l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__5; +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 = 2; +lean_inc(x_5); lean_inc(x_4); -lean_inc(x_3); -x_45 = l_Lean_log___at_Lean_realizeGlobalName___spec__2(x_43, x_44, x_3, x_4, x_40); -x_46 = lean_ctor_get(x_45, 1); -lean_inc(x_46); -lean_dec(x_45); -x_47 = 0; -x_10 = x_47; -x_11 = x_46; -goto block_15; +x_63 = l_Lean_log___at_Lean_realizeGlobalName___spec__2(x_61, x_62, x_4, x_5, x_50); +x_64 = lean_ctor_get(x_63, 1); +lean_inc(x_64); +lean_dec(x_63); +x_65 = 0; +x_11 = x_65; +x_12 = x_64; +goto block_16; } else { -lean_object* x_48; +lean_object* x_66; +lean_free_object(x_18); +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); -x_48 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_48, 0, x_39); -lean_ctor_set(x_48, 1, x_40); -return x_48; +lean_dec(x_1); +x_66 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_66, 0, x_49); +lean_ctor_set(x_66, 1, x_50); +return x_66; } } else { -lean_object* x_49; +lean_object* x_67; +lean_free_object(x_18); +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); -x_49 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_49, 0, x_39); -lean_ctor_set(x_49, 1, x_40); -return x_49; +lean_dec(x_1); +x_67 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_67, 0, x_49); +lean_ctor_set(x_67, 1, x_50); +return x_67; } } } } else { -uint8_t x_50; -lean_dec(x_16); -x_50 = 1; -x_10 = x_50; -x_11 = x_19; -goto block_15; +uint8_t x_68; +lean_free_object(x_18); +lean_dec(x_17); +x_68 = 1; +x_11 = x_68; +x_12 = x_21; +goto block_16; +} } -block_15: +else { -if (x_10 == 0) +lean_object* x_69; lean_object* x_70; lean_object* x_71; uint8_t x_72; +x_69 = lean_ctor_get(x_18, 0); +x_70 = lean_ctor_get(x_18, 1); +lean_inc(x_70); +lean_inc(x_69); +lean_dec(x_18); +x_71 = lean_ctor_get(x_69, 0); +lean_inc(x_71); +lean_dec(x_69); +lean_inc(x_17); +x_72 = l_Lean_Environment_contains(x_71, x_17); +if (x_72 == 0) +{ +lean_object* x_73; +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_17); +x_73 = l_Lean_executeReservedNameAction(x_17, x_4, x_5, x_70); +if (lean_obj_tag(x_73) == 0) +{ +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; uint8_t x_79; +x_74 = lean_ctor_get(x_73, 1); +lean_inc(x_74); +lean_dec(x_73); +x_75 = lean_st_ref_get(x_5, x_74); +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_78 = lean_ctor_get(x_76, 0); +lean_inc(x_78); +lean_dec(x_76); +x_79 = l_Lean_Environment_contains(x_78, x_17); +x_11 = x_79; +x_12 = x_77; +goto block_16; +} +else { +lean_object* x_80; lean_object* x_81; lean_object* x_82; uint8_t x_83; +lean_dec(x_17); +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); +} +x_83 = l_Lean_Exception_isInterrupt(x_80); +if (x_83 == 0) +{ +uint8_t x_84; +x_84 = l_Lean_Exception_isRuntime(x_80); +if (x_84 == 0) +{ +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; uint8_t x_95; lean_object* x_96; lean_object* x_97; uint8_t x_98; +lean_dec(x_82); +lean_inc(x_1); +x_85 = l_Lean_MessageData_ofName(x_1); +x_86 = l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__2; +x_87 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_87, 0, x_86); +lean_ctor_set(x_87, 1, x_85); +x_88 = l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__4; +x_89 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_89, 0, x_87); +lean_ctor_set(x_89, 1, x_88); +x_90 = l_Lean_Exception_toMessageData(x_80); +x_91 = l_Lean_indentD(x_90); +x_92 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_92, 0, x_89); +lean_ctor_set(x_92, 1, x_91); +x_93 = l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__5; +x_94 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_94, 0, x_92); +lean_ctor_set(x_94, 1, x_93); +x_95 = 2; +lean_inc(x_5); +lean_inc(x_4); +x_96 = l_Lean_log___at_Lean_realizeGlobalName___spec__2(x_94, x_95, x_4, x_5, x_81); +x_97 = lean_ctor_get(x_96, 1); +lean_inc(x_97); +lean_dec(x_96); +x_98 = 0; +x_11 = x_98; +x_12 = x_97; +goto block_16; +} +else +{ +lean_object* x_99; +lean_dec(x_10); lean_dec(x_9); -lean_dec(x_7); -x_1 = x_8; -x_5 = x_11; +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +if (lean_is_scalar(x_82)) { + x_99 = lean_alloc_ctor(1, 2, 0); +} else { + x_99 = x_82; +} +lean_ctor_set(x_99, 0, x_80); +lean_ctor_set(x_99, 1, x_81); +return x_99; +} +} +else +{ +lean_object* x_100; +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_1); +if (lean_is_scalar(x_82)) { + x_100 = lean_alloc_ctor(1, 2, 0); +} else { + x_100 = x_82; +} +lean_ctor_set(x_100, 0, x_80); +lean_ctor_set(x_100, 1, x_81); +return x_100; +} +} +} +else +{ +uint8_t x_101; +lean_dec(x_17); +x_101 = 1; +x_11 = x_101; +x_12 = x_70; +goto block_16; +} +} +block_16: +{ +if (x_11 == 0) +{ +lean_dec(x_10); +lean_dec(x_8); +x_2 = x_9; +x_6 = x_12; goto _start; } else { -lean_object* x_13; -if (lean_is_scalar(x_9)) { - x_13 = lean_alloc_ctor(1, 2, 0); +lean_object* x_14; +if (lean_is_scalar(x_10)) { + x_14 = lean_alloc_ctor(1, 2, 0); } else { - x_13 = x_9; + x_14 = x_10; } -lean_ctor_set(x_13, 0, x_7); -lean_ctor_set(x_13, 1, x_2); -x_1 = x_8; -x_2 = x_13; -x_5 = x_11; +lean_ctor_set(x_14, 0, x_8); +lean_ctor_set(x_14, 1, x_3); +x_2 = x_9; +x_3 = x_14; +x_6 = x_12; goto _start; } } @@ -1854,6 +2100,7 @@ LEAN_EXPORT lean_object* l_Lean_realizeGlobalName(lean_object* x_1, lean_object* { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_inc(x_2); +lean_inc(x_1); x_5 = l_Lean_resolveGlobalName___at_Lean_realizeGlobalName___spec__1(x_1, x_2, x_3, x_4); x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); @@ -1861,7 +2108,7 @@ x_7 = lean_ctor_get(x_5, 1); lean_inc(x_7); lean_dec(x_5); x_8 = lean_box(0); -x_9 = l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4(x_6, x_8, x_2, x_3, x_7); +x_9 = l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4(x_1, x_6, x_8, x_2, x_3, x_7); if (lean_obj_tag(x_9) == 0) { uint8_t x_10; @@ -3127,6 +3374,16 @@ l_Lean_logAt___at_Lean_realizeGlobalName___spec__3___closed__1 = _init_l_Lean_lo lean_mark_persistent(l_Lean_logAt___at_Lean_realizeGlobalName___spec__3___closed__1); l_Lean_logAt___at_Lean_realizeGlobalName___spec__3___closed__2 = _init_l_Lean_logAt___at_Lean_realizeGlobalName___spec__3___closed__2(); lean_mark_persistent(l_Lean_logAt___at_Lean_realizeGlobalName___spec__3___closed__2); +l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__1 = _init_l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__1(); +lean_mark_persistent(l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__1); +l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__2 = _init_l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__2(); +lean_mark_persistent(l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__2); +l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__3 = _init_l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__3(); +lean_mark_persistent(l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__3); +l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__4 = _init_l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__4(); +lean_mark_persistent(l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__4); +l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__5 = _init_l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__5(); +lean_mark_persistent(l_List_filterAuxM___at_Lean_realizeGlobalName___spec__4___closed__5); l_Lean_throwUnknownConstant___at_Lean_realizeGlobalConstCore___spec__2___closed__1 = _init_l_Lean_throwUnknownConstant___at_Lean_realizeGlobalConstCore___spec__2___closed__1(); lean_mark_persistent(l_Lean_throwUnknownConstant___at_Lean_realizeGlobalConstCore___spec__2___closed__1); l_Lean_throwUnknownConstant___at_Lean_realizeGlobalConstCore___spec__2___closed__2 = _init_l_Lean_throwUnknownConstant___at_Lean_realizeGlobalConstCore___spec__2___closed__2();